Skip to content

Commit 6240a43

Browse files
committed
CI - teach the api-tests were the actual test cpp files are
1 parent 6068cf1 commit 6240a43

File tree

1 file changed

+32
-28
lines changed

1 file changed

+32
-28
lines changed

app/api-tests/CMakeLists.txt

+32-28
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,50 @@
11
project(api-tests)
22

33
set(TESTS_ROOT ${CMAKE_CURRENT_LIST_DIR})
4-
set(VENDOR_DIR "${TESTS_ROOT}/vendor")
54

6-
add_subdirectory("${VENDOR_DIR}/Catch2-3.8.0")
5+
set(APP_ROOT "${TESTS_ROOT}/../api")
6+
7+
find_package(Catch2 CONFIG REQUIRED)
78

89
set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
910
set(THREADS_PREFER_PTHREAD_FLAG TRUE)
1011

11-
file(GLOB_RECURSE FOUND_TEST_SOURCES "${TESTS_ROOT}/*.test.cpp")
12+
# list(APPEND TEST_SOURCES ${TESTS_ROOT}/CMakeLists.txt)
1213

13-
enable_testing()
14+
file(GLOB_RECURSE FOUND_TEST_SOURCES "${APP_ROOT}/*.test.cpp")
1415

15-
set (TEST_SOURCES
16-
${FOUND_TEST_SOURCES}
17-
${TEST_SOURCES}
18-
)
16+
enable_testing()
1917

20-
add_executable(${PROJECT_NAME} ${TEST_SOURCES})
18+
# Set TEST_SOURCES to the found test files.
19+
set(TEST_SOURCES ${FOUND_TEST_SOURCES})
2120

22-
target_include_directories(${PROJECT_NAME} PRIVATE
23-
${CMAKE_BINARY_DIR}
24-
include
25-
)
21+
if(NOT TEST_SOURCES)
22+
message(WARNING "No test source files found in ${APP_ROOT}.")
23+
endif()
2624

25+
if(TEST_SOURCES)
26+
add_executable(${PROJECT_NAME} ${TEST_SOURCES})
2727

28-
if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
29-
find_package(Threads REQUIRED)
30-
set(PLATFORM_LINKLIBS
31-
Threads::Threads
32-
)
33-
endif()
28+
target_include_directories(${PROJECT_NAME} PRIVATE
29+
${CMAKE_BINARY_DIR}
30+
include
31+
)
3432

35-
target_link_libraries(${PROJECT_NAME}
36-
PRIVATE
37-
SonicPi::API
38-
Catch2::Catch2WithMain
39-
${PLATFORM_LINKLIBS}
40-
${CMAKE_THREAD_LIBS_INIT})
33+
if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
34+
find_package(Threads REQUIRED)
35+
set(PLATFORM_LINKLIBS Threads::Threads)
36+
endif()
4137

42-
add_test(${PROJECT_NAME} ${PROJECT_NAME})
38+
target_link_libraries(${PROJECT_NAME}
39+
PRIVATE
40+
SonicPi::API
41+
Catch2::Catch2WithMain
42+
${PLATFORM_LINKLIBS}
43+
${CMAKE_THREAD_LIBS_INIT}
44+
)
4345

44-
SOURCE_GROUP(tests REGULAR_EXPRESSION ".*.test.(cpp|h)+")
45-
SOURCE_GROUP(tests FILES ${TEST_SOURCES})
46+
add_test(${PROJECT_NAME} ${PROJECT_NAME})
4647

48+
SOURCE_GROUP(tests REGULAR_EXPRESSION ".*.test.(cpp|h)+")
49+
SOURCE_GROUP(tests FILES ${TEST_SOURCES})
50+
endif()

0 commit comments

Comments
 (0)