diff options
Diffstat (limited to 'tests/CMakeLists.txt')
| -rw-r--r-- | tests/CMakeLists.txt | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt new file mode 100644 index 000000000000..e66c3d10a60a --- /dev/null +++ b/tests/CMakeLists.txt @@ -0,0 +1,31 @@ +set(COMMON_TEST_INCLUDES + ${CMAKE_SOURCE_DIR}/include + ${CMAKE_SOURCE_DIR}/src + ${CMAKE_SOURCE_DIR}/uthash +) + +set(COMMON_TEST_LIBS ucl) + +set(TEST_ENV_VARS + "TEST_DIR=${CMAKE_SOURCE_DIR}/tests" + "TEST_OUT_DIR=${CMAKE_BINARY_DIR}/tests" + "TEST_BINARY_DIR=${CMAKE_BINARY_DIR}/tests" +) + +macro(add_ucl_test testname sourcefile wrapper) + add_executable(${testname} ${sourcefile}) + target_include_directories(${testname} PRIVATE ${COMMON_TEST_INCLUDES}) + target_link_libraries(${testname} PRIVATE ${COMMON_TEST_LIBS}) + IF(NOT CMAKE_SYSTEM_NAME STREQUAL "Windows") + add_test(NAME ${testname} COMMAND ${CMAKE_SOURCE_DIR}/tests/${wrapper}) + set_tests_properties(${testname} PROPERTIES ENVIRONMENT "${TEST_ENV_VARS}") + ENDIF() +endmacro() + +# Build test binaries always (not just for testing) +add_ucl_test(test_basic test_basic.c basic.test) +add_ucl_test(test_speed test_speed.c speed.test) +add_ucl_test(test_schema test_schema.c schema.test) +add_ucl_test(test_msgpack test_msgpack.c msgpack.test) +add_ucl_test(test_generate test_generate.c generate.test) + |
