| # The unit test executable. |
| set(JSON_UNITTEST_TARGET_NAME "json_unit") |
| add_executable(${JSON_UNITTEST_TARGET_NAME} |
| "src/catch.hpp" |
| "src/unit.cpp" |
| "src/unit-algorithms.cpp" |
| "src/unit-allocator.cpp" |
| "src/unit-capacity.cpp" |
| "src/unit-class_const_iterator.cpp" |
| "src/unit-class_iterator.cpp" |
| "src/unit-class_lexer.cpp" |
| "src/unit-class_parser.cpp" |
| "src/unit-comparison.cpp" |
| "src/unit-concepts.cpp" |
| "src/unit-constructor1.cpp" |
| "src/unit-constructor2.cpp" |
| "src/unit-convenience.cpp" |
| "src/unit-conversions.cpp" |
| "src/unit-deserialization.cpp" |
| "src/unit-element_access1.cpp" |
| "src/unit-element_access2.cpp" |
| "src/unit-inspection.cpp" |
| "src/unit-iterator_wrapper.cpp" |
| "src/unit-iterators1.cpp" |
| "src/unit-iterators2.cpp" |
| "src/unit-json_patch.cpp" |
| "src/unit-json_pointer.cpp" |
| "src/unit-modifiers.cpp" |
| "src/unit-pointer_access.cpp" |
| "src/unit-readme.cpp" |
| "src/unit-reference_access.cpp" |
| "src/unit-regression.cpp" |
| "src/unit-serialization.cpp" |
| "src/unit-testsuites.cpp" |
| "src/unit-unicode.cpp" |
| ) |
| |
| set_target_properties(${JSON_UNITTEST_TARGET_NAME} PROPERTIES |
| CXX_STANDARD 11 |
| CXX_STANDARD_REQUIRED ON |
| COMPILE_DEFINITIONS "$<$<CXX_COMPILER_ID:MSVC>:_SCL_SECURE_NO_WARNINGS>" |
| COMPILE_OPTIONS "$<$<CXX_COMPILER_ID:MSVC>:/EHsc;$<$<CONFIG:Release>:/Od>>" |
| ) |
| |
| target_include_directories(${JSON_UNITTEST_TARGET_NAME} PRIVATE "src") |
| target_link_libraries(${JSON_UNITTEST_TARGET_NAME} ${JSON_TARGET_NAME}) |
| |
| add_test(NAME "${JSON_UNITTEST_TARGET_NAME}_default" |
| COMMAND ${JSON_UNITTEST_TARGET_NAME} |
| WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} |
| ) |
| add_test(NAME "${JSON_UNITTEST_TARGET_NAME}_all" |
| COMMAND ${JSON_UNITTEST_TARGET_NAME} "*" |
| WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} |
| ) |