diff options
-rw-r--r-- | tests/CMakeLists.txt | 18 | ||||
-rw-r--r-- | tests/EnforceConfig.cmake | 4 |
2 files changed, 14 insertions, 8 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 0465d2c..68e6730 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -423,20 +423,20 @@ function(add_cmdline_test TESTCMD TESTSUFFIX) get_filename_component(TESTNAME ${SCADFILE} NAME_WE) string(REPLACE " " "_" TESTNAME ${TESTNAME}) # Test names cannot include spaces set(TEST_FULLNAME "${TESTCMD_NAME}_${TESTNAME}") - list(FIND DISABLED_TESTS ${TEST_FULLNAME} DISABLED) if (${DISABLED} EQUAL -1) + # Handle configurations unset(FOUNDCONFIGS) get_test_config(${TEST_FULLNAME} FOUNDCONFIGS) - if (FOUNDCONFIGS) - #message("config ${TEST_FULLNAME}: ${FOUNDCONFIGS}") - set(CONFARG CONFIGURATIONS) - set(CONFVAL ${FOUNDCONFIGS}) - else() - unset(CONFARG) - unset(CONFVAL) + if (NOT FOUNDCONFIGS) + set_test_config(Default ${TEST_FULLNAME}) endif() + set_test_config(All ${TEST_FULLNAME}) + unset(FOUNDCONFIGS) + get_test_config(${TEST_FULLNAME} FOUNDCONFIGS) + set(CONFARG CONFIGURATIONS) + set(CONFVAL ${FOUNDCONFIGS}) add_test(NAME ${TEST_FULLNAME} ${CONFARG} ${CONFVAL} COMMAND ${PYTHON_EXECUTABLE} ${tests_SOURCE_DIR}/test_cmdline_tool.py -s ${TESTSUFFIX} ${CMAKE_BINARY_DIR}/${TESTCMD} "${SCADFILE}") endif() @@ -445,6 +445,8 @@ endfunction() enable_testing() +set_directory_properties(PROPERTIES TEST_INCLUDE_FILE "${CMAKE_SOURCE_DIR}/EnforceConfig.cmake") + # Find all scad files file(GLOB MINIMAL_FILES ${CMAKE_SOURCE_DIR}/../testdata/scad/minimal/*.scad) file(GLOB FEATURES_FILES ${CMAKE_SOURCE_DIR}/../testdata/scad/features/*.scad) diff --git a/tests/EnforceConfig.cmake b/tests/EnforceConfig.cmake new file mode 100644 index 0000000..8e2ebf7 --- /dev/null +++ b/tests/EnforceConfig.cmake @@ -0,0 +1,4 @@ +message("Enforcing config") +if(NOT CTEST_CONFIGURATION_TYPE) + set(CTEST_CONFIGURATION_TYPE Default) +endif() |