################################################################################################### # # Tests for core module # ################################################################################################### ######## # cell # ######## waLBerla_compile_test( FILES cell/CellTest.cpp ) waLBerla_execute_test( NAME CellTest ) waLBerla_compile_test( FILES cell/CellIntervalTest.cpp ) waLBerla_execute_test( NAME CellIntervalTest ) ########## # config # ########## waLBerla_compile_test( FILES config/ConfigTest.cpp ) waLBerla_execute_test( NAME ConfigTest COMMAND $ ${CMAKE_CURRENT_SOURCE_DIR}/config/ConfigTest.dat ) if( WALBERLA_BUILD_WITH_BOOST ) waLBerla_compile_test( FILES config/MultiArrayIOTest.cpp ) waLBerla_execute_test( NAME MultiArrayIOTest COMMAND $ ) endif( WALBERLA_BUILD_WITH_BOOST ) ######### # debug # ######### waLBerla_compile_test( FILES debug/DebugTest.cpp) waLBerla_execute_test( NAME DebugTest ) waLBerla_compile_test( FILES debug/CheckMacroTest.cpp ) waLBerla_execute_test( NAME CheckMacroTest ) waLBerla_compile_test( FILES debug/PrintStacktraceTest.cpp ) ########### # logging # ########### waLBerla_compile_test( FILES logging/LoggingTest.cpp) waLBerla_execute_test( NAME LoggingTest ) ######## # math # ######## waLBerla_compile_test( FILES math/PrimesTest.cpp ) waLBerla_execute_test( NAME PrimesTest ) waLBerla_compile_test( FILES math/RandomTest.cpp ) waLBerla_execute_test( NAME RandomTest ) waLBerla_compile_test( FILES math/SampleTest.cpp ) waLBerla_execute_test( NAME SampleTest1Proc COMMAND $ ) waLBerla_execute_test( NAME SampleTest4Proc COMMAND $ PROCESSES 4 ) waLBerla_execute_test( NAME SampleTest10Proc COMMAND $ PROCESSES 10 LABELS longrun CONFIGURATIONS Release RelWithDbgInfo ) waLBerla_compile_test( FILES math/DistributedSampleTest.cpp ) waLBerla_execute_test( NAME DistributedSampleTest1Proc COMMAND $ ) waLBerla_execute_test( NAME DistributedSampleTest4Proc COMMAND $ PROCESSES 4 ) waLBerla_execute_test( NAME DistributedSampleTest10Proc COMMAND $ PROCESSES 10 LABELS longrun ) waLBerla_compile_test( FILES math/ParserTest.cpp) waLBerla_execute_test( NAME ParserTest ) waLBerla_compile_test( FILES math/PlaneTest.cpp ) waLBerla_execute_test( NAME PlaneTest ) waLBerla_compile_test( FILES math/MatrixVector2Test.cpp ) waLBerla_execute_test( NAME MatrixVector2Test ) waLBerla_compile_test( FILES math/Matrix3Test.cpp ) waLBerla_execute_test( NAME Matrix3Test ) waLBerla_compile_test( FILES math/GenericAABBTest.cpp DEPENDS stencil domain_decomposition ) waLBerla_execute_test( NAME GenericAABBTest ) if( WALBERLA_BUILD_WITH_BOOST ) waLBerla_compile_test( FILES math/PhysicalCheckTest.cpp DEPENDS stencil ) waLBerla_execute_test( NAME PhysicalCheckTest COMMAND $ ${CMAKE_CURRENT_SOURCE_DIR}/math/PhysicalCheckTestInput.prm ) endif( WALBERLA_BUILD_WITH_BOOST ) waLBerla_compile_test( FILES math/FastInvSqrtTest.cpp ) waLBerla_execute_test( NAME FastInvSqrtTest ) ######################## # math/equation_system # ######################## if( WALBERLA_BUILD_WITH_BOOST ) waLBerla_compile_test( FILES math/equation_system/EquationSolverTest.cpp ) waLBerla_execute_test( NAME EquationSolverTest ) endif( WALBERLA_BUILD_WITH_BOOST ) ####### # mpi # ####### waLBerla_compile_test( FILES mpi/BufferTest.cpp ) waLBerla_execute_test( NAME BufferTest ) waLBerla_compile_test( FILES mpi/BufferSystemTest.cpp ) waLBerla_execute_test( NAME BufferSystemTest PROCESSES 4 ) waLBerla_compile_test( FILES mpi/BroadcastTest.cpp ) waLBerla_execute_test( NAME BroadcastTest1 COMMAND $ ) waLBerla_execute_test( NAME BroadcastTest4 COMMAND $ PROCESSES 4) waLBerla_compile_test( FILES mpi/ReduceTest.cpp ) waLBerla_execute_test( NAME ReduceTest1 COMMAND $ ) waLBerla_execute_test( NAME ReduceTest4 COMMAND $ PROCESSES 4) waLBerla_compile_test( FILES mpi/GatherTest.cpp ) waLBerla_execute_test( NAME GatherTest1 COMMAND $ ) waLBerla_execute_test( NAME GatherTest4 COMMAND $ PROCESSES 4) waLBerla_compile_test( FILES mpi/GathervTest.cpp ) waLBerla_execute_test( NAME GathervTest1 COMMAND $ ) waLBerla_execute_test( NAME GathervTest4 COMMAND $ PROCESSES 4) waLBerla_compile_test( FILES mpi/MPITextFileTest.cpp ) waLBerla_execute_test( NAME MPITextFileTest1 COMMAND $ MPI_Testfile_1.txt 16 ) waLBerla_execute_test( NAME MPITextFileTest4 COMMAND $ MPI_Testfile_4.txt 16 PROCESSES 4 ) waLBerla_execute_test( NAME MPITextFileTest8 COMMAND $ MPI_Testfile_8.txt 16 PROCESSES 8 ) waLBerla_compile_test( FILES mpi/SetReductionTest.cpp ) waLBerla_execute_test( NAME SetReductionTest1 COMMAND $ ) waLBerla_execute_test( NAME SetReductionTest2 COMMAND $ PROCESSES 2 ) waLBerla_execute_test( NAME SetReductionTest3 COMMAND $ PROCESSES 3 ) waLBerla_execute_test( NAME SetReductionTest4 COMMAND $ PROCESSES 4 ) waLBerla_execute_test( NAME SetReductionTest5 COMMAND $ PROCESSES 5 ) waLBerla_execute_test( NAME SetReductionTest27 COMMAND $ PROCESSES 27 ) ############## # selectable # ############## waLBerla_compile_test( FILES selectable/SetSelectableObjectTest.cpp ) waLBerla_execute_test( NAME SetSelectableObjectTest ) ########## # timing # ########## waLBerla_compile_test( FILES timing/ParallelTimerTest.cpp ) waLBerla_execute_test( NAME ParallelTimerTest PROCESSES 2 ) waLBerla_compile_test( FILES timing/TimerTest.cpp ) waLBerla_execute_test( NAME TimerTest ) waLBerla_compile_test( FILES timing/TimingPoolTest.cpp ) waLBerla_execute_test( NAME TimingPoolTest PROCESSES 3 ) waLBerla_compile_test( FILES timing/TimingTreeTest.cpp ) waLBerla_execute_test( NAME TimingTreeTest PROCESSES 3) waLBerla_compile_test( FILES timing/SweepTimeloopTimerReduction.cpp DEPENDS timeloop blockforest ) waLBerla_execute_test( NAME SweepTimeloopTimerReduction PROCESSES 9 ) ######## # core # ######## if ( WALBERLA_BUILD_WITH_PYTHON ) waLBerla_compile_test( FILES AllHeaderTest.cpp DEPENDS blockforest field geometry pe pe_coupling python_coupling ) else() waLBerla_compile_test( FILES AllHeaderTest.cpp DEPENDS blockforest field geometry pe pe_coupling ) endif() waLBerla_execute_test( NAME AllHeaderTest ) waLBerla_compile_test( FILES Angles.test.cpp ) waLBerla_execute_test( NAME Angles ) waLBerla_compile_test( FILES ConcatIterator.cpp ) waLBerla_execute_test( NAME ConcatIterator ) waLBerla_compile_test( FILES DataTypesTest.cpp ) waLBerla_execute_test( NAME DataTypesTest ) waLBerla_compile_test( FILES DebugSTLTest.cpp ) waLBerla_execute_test( NAME DebugSTLTest ) set_tests_properties(DebugSTLTest PROPERTIES WILL_FAIL TRUE) waLBerla_compile_test( FILES FunctionTraitsTest.cpp ) waLBerla_execute_test( NAME FunctionTraitsTest ) waLBerla_compile_test( FILES GridGeneratorTest.cpp ) waLBerla_execute_test( NAME GridGeneratorTest ) #TODO: find fix for this test with intel OneApi compiler if(NOT CMAKE_CXX_COMPILER_ID MATCHES IntelLLVM ) waLBerla_compile_test( FILES MemoryUsage.cpp ) waLBerla_execute_test( NAME MemoryUsage ) endif() waLBerla_compile_test( FILES OpenMPWrapperTest.cpp ) waLBerla_execute_test( NAME OpenMPWrapperTest ) waLBerla_compile_test( FILES RandomUUID.cpp ) waLBerla_execute_test( NAME RandomUUID ) waLBerla_compile_test( FILES SetTest.cpp ) waLBerla_execute_test( NAME SetTest ) waLBerla_compile_test( NAME UNIQUEID FILES UniqueID.cpp ) waLBerla_execute_test( NAME UNIQUEID PROCESSES 4) waLBerla_compile_test( FILES VersionTest.cpp ) waLBerla_execute_test( NAME VersionTest ) if ( WALBERLA_CXX_COMPILER_IS_INTEL AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS "20.0" ) waLBerla_compile_test( FILES VariantTest ) waLBerla_execute_test( NAME VariantTest ) endif() ################## # load_balancing # ################## if( WALBERLA_BUILD_WITH_METIS ) waLBerla_compile_test( NAME MetisTest FILES load_balancing/MetisTest.cpp DEPENDS field ) waLBerla_execute_test( NAME MetisTest COMMAND $ 64 64 4 --no-vtk ) endif() if( WALBERLA_BUILD_WITH_PARMETIS ) waLBerla_compile_test( NAME ParMetisTest FILES load_balancing/ParMetisTest.cpp DEPENDS blockforest field stencil vtk ) waLBerla_execute_test( NAME ParMetisTest1 COMMAND $ 64 64 4 --no-vtk ) waLBerla_execute_test( NAME ParMetisTest2 COMMAND $ 64 64 8 --no-vtk PROCESSES 2 ) waLBerla_execute_test( NAME ParMetisTest4 COMMAND $ 64 64 16 --no-vtk PROCESSES 4 ) waLBerla_compile_test( NAME PlainParMetisTest FILES load_balancing/PlainParMetisTest.cpp ) waLBerla_execute_test( NAME PlainParMetisTest PROCESSES 3 ) endif()