aboutsummaryrefslogtreecommitdiffstats
path: root/tests/CMakeLists.txt
blob: 5b7d6fd37851dc4d7a00eb57405de7d01e14a8a2 (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
# Initializing google test
# prevents overriding the parent project's compiler/linter settings on windows
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
set(BUILD_GTEST ON CACHE BOOL "" FORCE)
set(BUILD_GMOCK OFF CACHE BOOL "" FORCE)

# Add googletest directly to our build. This defines
# the gtest and gtest_main targets.
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/external/googletest)

# enable tests
enable_testing()
set(SIMULATION_RUNS 1000)

function(make_test test_name cycles)
  add_executable("${test_name}test" ${test_name}/test.cpp)
  target_link_libraries("${test_name}test"
    gtest_main
    yage)
  add_test(NAME ${test_name} COMMAND "${test_name}test" --gtest_repeat=${cycles} --gtest_break_on_failure)
endfunction(make_test)

make_test(yage 1)
make_test(matrix ${SIMULATION_RUNS})
make_test(particlebody 100)
make_test(window ${SIMULATION_RUNS})
make_test(spritesheet ${SIMULATION_RUNS})
make_test(vector3 ${SIMULATION_RUNS})
make_test(vector4 ${SIMULATION_RUNS})
make_test(log 1)
make_test(thread 1)
make_test(syncqueue 1)
make_test(active 1)
make_test(struct ${SIMULATION_RUNS})
make_test(engine ${SIMULATION_RUNS})