From bb5f323963b377ad7c28607af28c2b3156ea28fe Mon Sep 17 00:00:00 2001 From: "Stephen E. Baker" Date: Wed, 14 May 2025 20:28:06 -0400 Subject: [PATCH] CTest fixes * Allow ctest to run from build dir * Remove extra libs linked to ctest * Prevent test from running twice Manually adding tests isn't useful as we have catch_discover_tests which does the same thing on a granular basis for catch2 --- CMakeLists.txt | 4 ++++ CorsixTH/CMakeLists.txt | 1 - CorsixTH/CppTest/CMakeLists.txt | 5 +---- appveyor.yml | 2 -- 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index aac8bbb7..1b2c5649 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -64,6 +64,10 @@ endif() project(CorsixTH_Top_Level) +if(ENABLE_UNIT_TESTS) + enable_testing() +endif() + if(MINGW) set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++") endif() diff --git a/CorsixTH/CMakeLists.txt b/CorsixTH/CMakeLists.txt index b79edd25..d2b920c4 100644 --- a/CorsixTH/CMakeLists.txt +++ b/CorsixTH/CMakeLists.txt @@ -266,7 +266,6 @@ endif() if(ENABLE_UNIT_TESTS) message("Building Unit Tests") # Enable testing if set at this level so we can use CTest from the root of the build dir - enable_testing() add_subdirectory(${PROJECT_SOURCE_DIR}/CppTest) endif() diff --git a/CorsixTH/CppTest/CMakeLists.txt b/CorsixTH/CppTest/CMakeLists.txt index e050e644..8ab2c301 100644 --- a/CorsixTH/CppTest/CMakeLists.txt +++ b/CorsixTH/CppTest/CMakeLists.txt @@ -39,16 +39,13 @@ add_custom_target(AllTests) add_executable(UnitTests "") target_link_libraries(UnitTests Catch2::Catch2WithMain - CorsixTH_lib - ${LUA_LIBRARY} - ${CMAKE_DL_LIBS}) + CorsixTH_lib) set_property(TARGET UnitTests PROPERTY CXX_STANDARD 14) set_property(TARGET UnitTests PROPERTY CXX_EXTENSIONS OFF) set_property(TARGET UnitTests PROPERTY CXX_STANDARD_REQUIRED ON) # Add the target to CTest -add_test(NAME UnitTests COMMAND UnitTests) set_target_properties(UnitTests PROPERTIES FOLDER UnitTests) # Make sure we add it as a dependency to all tests (some day we can add LuaTest here) diff --git a/appveyor.yml b/appveyor.yml index 55e4e8e6..4d0e421c 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -25,9 +25,7 @@ build: verbosity: minimal test_script: - - cd CorsixTH - cmd: ctest --extra-verbose --build-config Release --output-on-failure - - cd .. after_build: - curl -L -o %APPVEYOR_BUILD_FOLDER%/CorsixTH/Release/FluidR3.sf3 https://github.com/Jacalz/fluid-soundfont/raw/master/SF3/FluidR3.sf3