summaryrefslogtreecommitdiffstatshomepage
path: root/test/CMakeLists.txt
blob: 6b087939b4f7dcb4f6b66c0b15a5060b5e6ac6cb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
add_library(test_lib SHARED test_lib.cpp)
target_link_libraries(test_lib PRIVATE winapi_debug)
target_include_directories(test_lib PUBLIC .)
target_compile_definitions(test_lib PRIVATE TEST_LIB_EXPORTS)
install(TARGETS test_lib RUNTIME DESTINATION bin/test)
if(MSVC)
    install(FILES $<TARGET_PDB_FILE:test_lib> DESTINATION bin/test OPTIONAL)
endif()

add_executable(call_stack call_stack.cpp)
target_link_libraries(call_stack PRIVATE test_lib)
install(TARGETS call_stack RUNTIME DESTINATION bin/test)
if(MSVC)
    install(FILES $<TARGET_PDB_FILE:call_stack> DESTINATION bin/test OPTIONAL)
endif()

find_package(Python3 REQUIRED COMPONENTS Interpreter)

add_test(NAME call_stack
    WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/cmake"
    COMMAND Python3::Interpreter
    -m project.ctest_driver
    run
    --pass-regex test_ns::baz test_ns::bar test_ns::foo
    --
    "$<TARGET_FILE:call_stack>"
)

add_subdirectory(unit_tests)