|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
-
- add_executable(test1Formatted test1.c parse_flags.c parse_flags.h)
- target_compile_definitions(test1Formatted PRIVATE TEST_FORMATTED=1)
- target_link_libraries(test1Formatted PRIVATE ${PROJECT_NAME})
-
- add_executable(test2Formatted test2.c parse_flags.c parse_flags.h)
- target_compile_definitions(test2Formatted PRIVATE TEST_FORMATTED=1)
- target_link_libraries(test2Formatted PRIVATE ${PROJECT_NAME})
-
- # https://cmake.org/cmake/help/v3.0/command/add_test.html
- # https://pabloariasal.github.io/2018/02/19/its-time-to-do-cmake-right/
-
- include_directories(PUBLIC ${CMAKE_SOURCE_DIR})
-
- set(ALL_TEST_NAMES
- test1
- test2
- test4
- testReplaceExisting
- test_cast
- test_charcase
- test_compare
- test_deep_copy
- test_double_serializer
- test_float
- test_int_add
- test_json_pointer
- test_locale
- test_null
- test_parse
- test_parse_int64
- test_printbuf
- test_set_serializer
- test_set_value
- test_strerror
- test_util_file
- test_visit
- test_object_iterator)
-
- foreach(TESTNAME ${ALL_TEST_NAMES})
-
- add_executable(${TESTNAME} ${TESTNAME}.c)
- if(${TESTNAME} STREQUAL test_strerror OR ${TESTNAME} STREQUAL test_util_file)
- # For output consistency, we need _json_c_strerror() in some tests:
- target_sources(${TESTNAME} PRIVATE ../strerror_override.c)
- endif()
- add_test(NAME ${TESTNAME} COMMAND ${PROJECT_SOURCE_DIR}/tests/${TESTNAME}.test)
-
- # XXX using the non-target_ versions of these doesn't work :(
- target_include_directories(
- ${TESTNAME}
- PUBLIC
- ${CMAKE_CURRENT_LIST_DIR}
- )
- target_link_libraries(
- ${TESTNAME}
- PRIVATE
- ${PROJECT_NAME}
- )
-
- endforeach(TESTNAME)
|