From c54ac6600c95c17d24fc4f39560d7c2655301654 Mon Sep 17 00:00:00 2001 From: Soeren Peters <peters@irmb.tu-bs.de> Date: Thu, 11 Mar 2021 11:45:43 +0000 Subject: [PATCH] Add ctest to this project and run ctest in CI. --- .gitlab-ci.yml | 6 +++--- CMake/VirtualFluidsMacros.cmake | 3 +++ CMakeLists.txt | 17 ++++++++--------- gpu.cmake | 4 ++++ src/lbm/CalcMacTests.cpp | 4 ++-- 5 files changed, 20 insertions(+), 14 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f274d315a..c797e7d1f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -192,10 +192,10 @@ gcc_9_unit_tests: needs: ["gcc_9"] before_script: - - export VF_UNITTESTS=$(find build_gcc9 -name basicsTests) + - cd $CI_PROJECT_DIR/build script: - - $VF_UNITTESTS + - ctest ############################################################################### msvc_16_unit_tests: @@ -211,7 +211,7 @@ msvc_16_unit_tests: - cd $CI_PROJECT_DIR/build script: - - .\bin\Release\basicsTests.exe + - ctest ############################################################################### gcc_9_python_bindings_test: diff --git a/CMake/VirtualFluidsMacros.cmake b/CMake/VirtualFluidsMacros.cmake index 62388cdf3..dfef8f984 100644 --- a/CMake/VirtualFluidsMacros.cmake +++ b/CMake/VirtualFluidsMacros.cmake @@ -286,6 +286,9 @@ function(vf_add_tests) # link googlemock linkGMOCK() + # add the target to ctest + gtest_add_tests(TARGET ${library_test_name}) + endfunction() ################################################################################# diff --git a/CMakeLists.txt b/CMakeLists.txt index d3e51f8dc..e3e0ea5a9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -79,6 +79,12 @@ ENDIF() ################################################################################# # COMMON LIBRARIES ################################################################################# +if(BUILD_VF_UNIT_TESTS) + add_subdirectory(${VF_THIRD_DIR}/googletest) + include(GoogleTest) + enable_testing() +endif() + if(BUILD_USE_OPENMP) find_package(OpenMP REQUIRED) endif() @@ -90,6 +96,8 @@ add_subdirectory(src/basics) add_subdirectory(src/lbm) add_subdirectory(src/lbmApp) + + ################################################################################# # VIRTUAL FLUIDS CPU / GPU ################################################################################# @@ -124,12 +132,3 @@ if(BUILD_VF_GPU) include (gpu.cmake) endif() - -################################################################################# -# 3rd Party Libraries -################################################################################# -if(BUILD_VF_UNIT_TESTS) - if(NOT BUILD_NUMERIC_TESTS) # in this case googletest is already included. - add_subdirectory(${VF_THIRD_DIR}/googletest) - endif() -endif() diff --git a/gpu.cmake b/gpu.cmake index 6bdff5205..3eb34b8fe 100644 --- a/gpu.cmake +++ b/gpu.cmake @@ -120,6 +120,10 @@ if(BUILD_NUMERIC_TESTS) LIST(APPEND VF_COMPILER_DEFINITION "PATH_NUMERICAL_TESTS=${PATH_NUMERICAL_TESTS}") endif() + if(NOT BUILD_VF_UNIT_TESTS) # in this case googletest is already included. + add_subdirectory(${VF_THIRD_DIR}/googletest) + endif() + add_subdirectory(3rdParty/fftw/fftw-3.3.7) add_subdirectory(3rdParty/googletest) add_subdirectory(apps/gpu/tests/NumericalTests) diff --git a/src/lbm/CalcMacTests.cpp b/src/lbm/CalcMacTests.cpp index eeaeb993e..0bead1fef 100644 --- a/src/lbm/CalcMacTests.cpp +++ b/src/lbm/CalcMacTests.cpp @@ -2,11 +2,11 @@ #include "CalcMac.h" -TEST(AAA,BBB) +TEST(CalcMacTest, calcDensity) { real f[27] = {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}; double density = LBM::getDensity(f); - ASSERT_THAT(density, testing::DoubleEq(1)); + ASSERT_THAT(density, testing::DoubleEq(27)); } \ No newline at end of file -- GitLab