summaryrefslogtreecommitdiffstats
path: root/test/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'test/CMakeLists.txt')
-rw-r--r--test/CMakeLists.txt50
1 files changed, 35 insertions, 15 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 5ef92c6..8719a41 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -28,7 +28,10 @@ USCXML_TEST_COMPILE(NAME test-url LABEL general/test-url FILES src/test-url.cpp)
USCXML_TEST_COMPILE(NAME test-lifecycle LABEL general/test-lifecycle FILES src/test-lifecycle.cpp)
USCXML_TEST_COMPILE(NAME test-validating LABEL general/test-validating FILES src/test-validating.cpp)
USCXML_TEST_COMPILE(NAME test-snippets LABEL general/test-snippets FILES src/test-snippets.cpp)
-USCXML_TEST_COMPILE(NAME test-stress LABEL general/test-stress FILES src/test-stress.cpp)
+
+# test-stress is not an automated test
+add_executable(test-stress src/test-stress.cpp)
+target_link_libraries(test-stress uscxml)
file(GLOB_RECURSE USCXML_WRAPPERS
${PROJECT_SOURCE_DIR}/src/bindings/swig/wrapped/*.cpp
@@ -140,7 +143,7 @@ if (NOT BUILD_MINIMAL)
# "perf/gen/c/ecma"
# "perf/ecma"
)
-
+
# prepare directories for test classes and copy resources over
foreach(W3C_RESOURCE ${W3C_RESOURCES} )
get_filename_component(TEST_DATAMODEL ${W3C_RESOURCE} PATH)
@@ -183,13 +186,22 @@ if (NOT BUILD_MINIMAL)
# normal IRP tests - get all scxml files within
foreach(W3C_TEST ${W3C_TESTS} )
+ set(TEST_ADDED OFF)
get_filename_component(TEST_FILE ${W3C_TEST} NAME)
set(TEST_NAME "w3c/${TEST_CLASS}/${TEST_FILE}")
- if (NOT TEST_NAME MATCHES ".*sub.*")
+ if (OFF)
+ # manual tests:
+ elseif (TEST_FILE STREQUAL "test307.scxml")
+ # scxml files, but no proper tests:
+ elseif (TEST_NAME MATCHES ".*sub.*")
+ # rest is a proper test:
+ else ()
+
if (IS_STANDARD_TEST)
add_test(${TEST_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test-state-pass ${W3C_TEST})
+ set(TEST_ADDED ON)
if (TEST_NAME MATCHES ".*/test250.scxml")
set_tests_properties(${TEST_NAME} PROPERTIES FAIL_REGULAR_EXPRESSION "entering final state, invocation was not cancelled")
@@ -226,20 +238,24 @@ if (NOT BUILD_MINIMAL)
-DSCAFFOLDING_FOR_GENERATED_C:FILEPATH=${CMAKE_CURRENT_SOURCE_DIR}/src/test-gen-c.cpp
-P ${CMAKE_CURRENT_SOURCE_DIR}/ctest/scripts/run_generated_test.cmake)
set_tests_properties("${TEST_NAME}" PROPERTIES DEPENDS uscxml-transform)
+ set(TEST_ADDED ON)
endif()
elseif (TEST_TYPE MATCHES "^binding.*")
get_filename_component(TEST_LANG ${TEST_TYPE} NAME)
- add_test(NAME "${TEST_NAME}"
- COMMAND
- ${ANT_EXECUTABLE}
- -Dtest.file=${W3C_TEST}
- -Duscxml.jar=${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/uscxml.jar
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings/java
- )
- set_tests_properties("${TEST_NAME}" PROPERTIES DEPENDS jar)
+ if (TARGET jar AND TEST_LANG STREQUAL "java")
+ add_test(NAME "${TEST_NAME}"
+ COMMAND
+ ${ANT_EXECUTABLE}
+ -Dtest.file=${W3C_TEST}
+ -Duscxml.jar=${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/uscxml.jar
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bindings/java
+ )
+ set_tests_properties("${TEST_NAME}" PROPERTIES DEPENDS jar)
+ set(TEST_ADDED ON)
+ endif()
elseif (TEST_TYPE MATCHES "^spin.*")
@@ -257,18 +273,22 @@ if (NOT BUILD_MINIMAL)
-P ${CMAKE_CURRENT_SOURCE_DIR}/ctest/scripts/run_promela_test.cmake)
set_tests_properties("${TEST_NAME}" PROPERTIES PASS_REGULAR_EXPRESSION "depth reached [0-9]+, errors: 0")
set_tests_properties("${TEST_NAME}" PROPERTIES FAIL_REGULAR_EXPRESSION "depth reached [0-9]+, errors: [1-9]+")
+ set(TEST_ADDED ON)
elseif (TEST_TYPE MATCHES "^fsm.*")
add_test("${TEST_NAME}" ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test-state-pass -f ${W3C_TEST})
+ set(TEST_ADDED ON)
endif()
endif()
- set_property(TEST ${TEST_NAME} PROPERTY LABELS ${TEST_NAME})
- set_tests_properties(${TEST_NAME} PROPERTIES TIMEOUT ${TEST_TIMEOUT})
- if (IS_PERFORMANCE_TEST)
- set_tests_properties("${TEST_NAME}" PROPERTIES ENVIRONMENT USCXML_BENCHMARK_ITERATIONS=${TEST_BENCHMARK_ITERATIONS})
+ if(TEST_ADDED)
+ set_property(TEST ${TEST_NAME} PROPERTY LABELS ${TEST_NAME})
+ set_tests_properties(${TEST_NAME} PROPERTIES TIMEOUT ${TEST_TIMEOUT})
+ if (IS_PERFORMANCE_TEST)
+ set_tests_properties("${TEST_NAME}" PROPERTIES ENVIRONMENT USCXML_BENCHMARK_ITERATIONS=${TEST_BENCHMARK_ITERATIONS})
+ endif()
endif()
endif()