summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/CMakeLists.txt37
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})
contact: Jan Huwald // Impressum