1
0
mirror of synced 2024-06-14 00:20:06 +02:00
modern-cmake/examples/extended-project/tests/CMakeLists.txt
2020-08-05 16:19:05 -04:00

685 B

Testing library

FetchContent_Declare( catch GIT_REPOSITORY https://github.com/catchorg/Catch2.git GIT_TAG v2.9.1) FetchContent_MakeAvailable(catch)

Adds Catch2::Catch2

Tests need to be added as executables first

add_executable(testlib testlib.cpp)

I'm using C++17 in the test

target_compile_features(testlib PRIVATE cxx_std_17)

Should be linked to the main library, as well as the Catch2 testing library

target_link_libraries(testlib PRIVATE modern_library Catch2::Catch2)

If you register a test, then ctest and make test will run it.

You can also run examples and check the output, as well.

add_test(NAME testlibtest COMMAND testlib) # Command can be a target