blob: 13d4dc6ede4af0c747d70791dd66eb9f0f49dbbc (
plain)
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
cmake_minimum_required(VERSION 3.16.3)
project(ADSTests)
# Set Variables
set(TARGET_A TESTkalmanFilter)
set(SOURCES_A kalmanFilterTest.cpp ../src/kalmanfilter.cpp)
set(TARGET_B TESTsurfaceFitModel)
set(SOURCES_B surfaceFitModelTest.cpp ../src/surfaceFitModel.cpp)
set(TARGET_C TESTactuationPlan)
set(SOURCES_C actuationPlanTest.cpp ../src/actuationPlan.cpp ../src/surfaceFitModel.cpp ../src/rocketUtils.cpp ../src/sensorIMU.cpp ../src/sensorAltimeter.cpp)
# set(TARGET_D TESTads)
# set(SOURCES_D adsTest.cpp ../src/ads.cpp ../src/actuationPlan.cpp ../src/surfaceFitModel.cpp ../src/rocketUtils.cpp ../src/sensorIMU.cpp ../src/sensorAltimeter.cpp ../src/motor.cpp ../src/logger.cpp ../src/kalmanfilter.cpp)
set(TARGET_E TESTmotorPlan)
set(SOURCES_E motorTest.cpp ../src/motor.cpp ../src/rocketUtils.cpp)
set(TARGET_F TESTsensorAltimeterPlan)
set(SOURCES_F sensorAltimeterTest.cpp ../src/sensorAltimeter.cpp ../src/rocketUtils.cpp)
set(TARGET_G TESTsensorIMUPlan)
set(SOURCES_G sensorIMUTest.cpp ../src/sensorIMU.cpp ../src/rocketUtils.cpp)
#Set-up Google Test
set(CMAKE_CXX_STANDARD 14)
include(FetchContent)
FetchContent_Declare(
googletest
URL https://github.com/google/googletest/archive/03597a01ee50ed33e9dfd640b249b4be3799d395.zip
)
# For Windows: Prevent overriding the parent project's compiler/linker settings
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
FetchContent_MakeAvailable(googletest)
# Create Executables & Link Dependencies
add_executable(${TARGET_A} ${SOURCES_A})
target_link_libraries(${TARGET_A} PUBLIC gtest_main) # Link GoogleTest's main() to Executable
# Tell CMake the Target is a Unit Test
add_test(NAME ${TARGET_A} COMMAND ${TARGET_A})
add_executable(${TARGET_B} ${SOURCES_B})
target_link_libraries(${TARGET_B} PUBLIC gtest_main)
add_test(NAME ${TARGET_B} COMMAND ${TARGET_B})
add_executable(${TARGET_C} ${SOURCES_C})
target_link_libraries(${TARGET_C} PUBLIC gtest_main)
add_test(NAME ${TARGET_C} COMMAND ${TARGET_C})
# add_executable(${TARGET_D} ${SOURCES_D})
# target_link_libraries(${TARGET_D} PUBLIC gtest_main)
# add_test(NAME ${TARGET_D} COMMAND ${TARGET_D})
add_executable(${TARGET_E} ${SOURCES_E})
target_link_libraries(${TARGET_E} PUBLIC gtest_main)
add_test(NAME ${TARGET_E} COMMAND ${TARGET_E})
add_executable(${TARGET_F} ${SOURCES_F})
target_link_libraries(${TARGET_F} PUBLIC gtest_main)
add_test(NAME ${TARGET_F} COMMAND ${TARGET_F})
add_executable(${TARGET_G} ${SOURCES_G})
target_link_libraries(${TARGET_G} PUBLIC gtest_main)
add_test(NAME ${TARGET_G} COMMAND ${TARGET_G})
|