diff options
-rw-r--r-- | tests/CMakeLists.txt | 37 |
1 files changed, 20 insertions, 17 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index f8b3e5e..75e08df 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -1,28 +1,31 @@ cmake_minimum_required(VERSION 2.8) project(tests) +# +# This functions adds cmd-line tests for those of the FILES which have +# a corresponding TESTNAME-expected.<suffix> file present. +# +function(add_cmdline_test TESTCMD TESTSUFFIX FILES) + get_filename_component(TESTCMD_NAME ${TESTCMD} NAME_WE) + foreach (SCADFILE ${SCAD_FILES}) + get_filename_component(TESTPATH ${SCADFILE} PATH) + get_filename_component(TESTNAME ${SCADFILE} NAME_WE) + if (EXISTS ${TESTPATH}/${TESTCMD_NAME}/${TESTNAME}-expected.${TESTSUFFIX}) + add_test(${TESTCMD_NAME}_${TESTNAME} ${tests_SOURCE_DIR}/test_cmdline_tool.py -s ${TESTSUFFIX} ${TESTCMD} ${SCADFILE}) + endif() + endforeach() +endfunction() + enable_testing() # Find all scad files file(GLOB SCAD_FILES ${CMAKE_SOURCE_DIR}/../testdata/scad/*.scad) # Add dumptest tests to CTest -set(DUMPTEST_CMD ${CMAKE_SOURCE_DIR}/../test-code/dumptest) -foreach (SCADFILE ${SCAD_FILES}) - get_filename_component(TEST ${SCADFILE} NAME_WE) - add_test(dump_${TEST} ${tests_SOURCE_DIR}/test_cmdline_tool.py ${DUMPTEST_CMD} ${SCADFILE}) -endforeach() - +add_cmdline_test(${CMAKE_SOURCE_DIR}/../test-code/dumptest txt ${SCAD_FILES}) # Add csgtexttest tests to CTest -set(CSGTEXTTEST_CMD ${CMAKE_SOURCE_DIR}/../test-code/csgtexttest) -foreach (SCADFILE ${SCAD_FILES}) - get_filename_component(TEST ${SCADFILE} NAME_WE) - add_test(csgtext_${TEST} ${tests_SOURCE_DIR}/test_cmdline_tool.py ${CSGTEXTTEST_CMD} ${SCADFILE}) -endforeach() - +add_cmdline_test(${CMAKE_SOURCE_DIR}/../test-code/csgtexttest txt ${SCAD_FILES}) # Add cgaltest tests to CTest -set(CGALTEST_CMD ${CMAKE_SOURCE_DIR}/../test-code/cgaltest) -foreach (SCADFILE ${SCAD_FILES}) - get_filename_component(TEST ${SCADFILE} NAME_WE) - add_test(cgal_${TEST} ${tests_SOURCE_DIR}/test_cmdline_tool.py ${CGALTEST_CMD} ${SCADFILE}) -endforeach() +add_cmdline_test(${CMAKE_SOURCE_DIR}/../test-code/cgaltest stl ${SCAD_FILES}) +# Add dxfexport tests to CTest +add_cmdline_test(${CMAKE_SOURCE_DIR}/../test-code/exportdxf dxf ${SCAD_FILES}) |