Skip to content
Snippets Groups Projects
Commit c33a7632 authored by Stefan Girke's avatar Stefan Girke
Browse files

use dune_add_test_case() to build tests

parent dd1a0866
No related branches found
No related tags found
No related merge requests found
# the main files for all the tests are in the same dir
set(FEMDG_MAIN_DIR "${CMAKE_SOURCE_DIR}/dune/fem-dg/main")
# macro for configuring the parameter files from parameter.in
function(configure_parameter_file)
set(CURRENT_PARAMETER_PATH ${CMAKE_CURRENT_SOURCE_DIR})
......@@ -25,12 +27,25 @@ function(configure_parameter_file)
endfunction(configure_parameter_file)
function(dune_add_test_case base_target)
foreach( testcase ${ARGN})
set( TESTCASE_PARAMFILE parameters/${base_target}_${testcase} )
configure_parameter_file( ${testcase} ${TESTCASE_PARAMFILE} )
add_test( NAME ${base_target}_${testcase} COMMAND ./${base_target} ${TESTCASE_PARAMFILE} )
endforeach()
function(dune_add_test_case target paramfile )
set( abbr "${CMAKE_CURRENT_SOURCE_DIR}/" )
set( default_params "fem.verboserank:0" "fem.prefix:${abbr}data/${paramfile}" "fem.prefix.input:${abbr}" "fem.eoc.outputpath:${abbr}data/${paramfile}" )
if( "${target}" STREQUAL NAME )
##copy configure file for target calls without testing tools
#configure_parameter_file( ${paramfile} )
configure_parameter_file()
##we are creating a real new target
dune_add_test( ${target} ${paramfile} ${ARGN} CMD_ARGS ${CMAKE_CURRENT_SOURCE_DIR}/parameters/${paramfile} ${default_params} )
else()
if(NOT TARGET ${target})
message( ERROR "You have tried to create a test case depending on a non existing target. The missing target name is '${target}'" )
endif()
foreach( testcase ${ARGN})
add_test( NAME ${base_name}_${testcase}
COMMAND ./${target} ${CMAKE_CURRENT_SOURCE_DIR}/parameters/${target}_${testcase} ${default_params} )
endforeach()
endif()
endfunction()
......
......@@ -2,8 +2,8 @@
# (-1: off, p: process p is verbose, in general 0 is a good choice)
fem.verboserank: 0
fem.prefix: ${CURRENT_PARAMETER_PATH}/data/${TESTCASE_OUTPUT} # specify directory for data output (is created if not exists)
fem.prefix.input: ${CURRENT_PARAMETER_PATH}/
fem.eoc.outputpath: ${CURRENT_PARAMETER_PATH}/data/${TESTCASE_OUTPUT}
fem.prefix: ${CMAKE_CURRENT_SOURCE_DIR}/data/${TESTCASE_OUTPUT} # specify directory for data output (is created if not exists)
fem.prefix.input: ${CMAKE_CURRENT_SOURCE_DIR}/
fem.eoc.outputpath: ${CMAKE_CURRENT_SOURCE_DIR}/data/${TESTCASE_OUTPUT}
paramfile: parameters/${TESTCASE_INPUT} #real parameter file
include_directories("${CMAKE_SOURCE_DIR}/dune/fem-dg/examples/advdiff/")
configure_parameter_file()
# specify type of grid implemention, dimension and polynomial order
set( GRIDTYPE ALUGRID_CUBE )
set( GRIDDIM 2 )
......@@ -11,55 +9,49 @@ add_definitions( "-D${GRIDTYPE}" )
add_definitions( "-DGRIDDIM=${GRIDDIM}" )
add_definitions( "-DDIMRANGE=1" )
configure_parameter_file( advdiff )
dune_add_test( NAME advdiff
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER}"
TIMEOUT 3000
CMD_ARGS parameters/advdiff )
dune_add_test_case( NAME advdiff
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER}"
TIMEOUT 3000 )
add_code_generate_targets( advdiff )
if( NOT FEMDG_FAST_TESTBUILD )
configure_parameter_file( advdiffall )
dune_add_test( NAME advdiffall
SOURCES ../main.cc
TIMEOUT 3000
CMD_ARGS parameters/advdiffall )
configure_parameter_file( advdiff_legendre )
dune_add_test( NAME advdiff_legendre
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER};DISCRETEFUNCTIONSPACESENUM=2"
TIMEOUT 3000
CMD_ARGS parameters/advdiff_legendre )
configure_parameter_file( advdiff_hierarchic_legendre )
dune_add_test( NAME advdiff_hierarchic_legendre
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER};DISCRETEFUNCTIONSPACESENUM=3"
TIMEOUT 3000
CMD_ARGS parameters/advdiff_hierarchic_legendre )
dune_add_test_case( advdiff pulse )
dune_add_test_case( advdiff sin )
dune_add_test_case( advdiff heat )
dune_add_test_case( advdiff quasi )
configure_parameter_file( advdiff_orthonormal )
dune_add_test( NAME advdiff_orthonormal
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER};DISCRETEFUNCTIONSPACESENUM=4"
TIMEOUT 3000
CMD_ARGS parameters/advdiff_orthonormal )
dune_add_test_case( NAME advdiffall
SOURCES ../main.cc
TIMEOUT 3000 )
add_code_generate_targets( advdiffall )
dune_add_test_case( advdiffall polorder1 )
dune_add_test_case( advdiffall polorder2 )
dune_add_test_case( advdiffall polorder3 )
dune_add_test_case( advdiffall polorder4 )
dune_add_test_case( NAME advdiff_legendre
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER};DISCRETEFUNCTIONSPACESENUM=2"
TIMEOUT 3000 )
dune_add_test_case( NAME advdiff_hierarchic_legendre
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER};DISCRETEFUNCTIONSPACESENUM=3"
TIMEOUT 3000 )
dune_add_test_case( NAME advdiff_orthonormal
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER};DISCRETEFUNCTIONSPACESENUM=4"
TIMEOUT 3000 )
dune_add_test_case( NAME advdiff_orthonormal
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER};DISCRETEFUNCTIONSPACESENUM=4"
TIMEOUT 3000 )
dune_add_test_case( advdiff pulse )
dune_add_test_case( advdiff sin )
dune_add_test_case( advdiff heat )
dune_add_test_case( advdiff quasi )
add_code_generate_targets( advdiffall )
endif()
include_directories("${CMAKE_SOURCE_DIR}/dune/fem-dg/examples/dataio/")
configure_parameter_file()
add_definitions( "-DALUGRID_SIMPLEX" )
add_definitions( "-DGRIDDIM=3" )
add_definitions( "-DUSE_SIONLIB=0" )
......@@ -9,10 +7,8 @@ add_definitions( "-DPOLORDER=2" )
add_definitions( "-DDIMRANGE=5" )
add_definitions( "-DENABLE_ADAPTIVELEAFINDEXSET_FOR_YASPGRID" )
#dune_add_test( NAME dataconvert
# SOURCES ../dataconvert.cc )
#dune_add_test_case( NAME dataconvert
# SOURCES ../dataconvert.cc )
configure_parameter_file(checkpointing)
dune_add_test( NAME checkpointing
SOURCES ../main.cc
CMD_ARGS parameters/checkpointing )
dune_add_test_case( NAME checkpointing
SOURCES ../main.cc )
include_directories("${CMAKE_SOURCE_DIR}/dune/fem-dg/examples/euler/")
configure_parameter_file()
# specify type of grid implemention, dimension and polynomial order
set( GRIDTYPE ALUGRID_CUBE )
set( GRIDDIM 2 )
......@@ -13,20 +11,16 @@ add_definitions( "-DGRIDDIM=${GRIDDIM}" )
set( MAIN ${CMAKE_CURRENT_SOURCE_DIR}/../main.cc )
set( CHORJO ${CMAKE_CURRENT_SOURCE_DIR}/../problems/chorjo.cc )
configure_parameter_file( euler )
dune_add_test( NAME euler
SOURCES ${MAIN} ${CHORJO}
COMPILE_DEFINITIONS "POLORDER=${POLORDER}"
CMD_ARGS parameters/euler )
dune_add_test_case( NAME euler
SOURCES ${MAIN} ${CHORJO}
COMPILE_DEFINITIONS "POLORDER=${POLORDER}" )
add_code_generate_targets( euler )
if( NOT FEMDG_FAST_TESTBUILD )
configure_parameter_file( eulerall )
dune_add_test( NAME eulerall
SOURCES ${MAIN} ${CHORJO}
COMPILE_DEFINITIONS LIMITER
CMD_ARGS parameters/eulerall )
dune_add_test_case( NAME eulerall
SOURCES ${MAIN} ${CHORJO}
COMPILE_DEFINITIONS LIMITER )
add_code_generate_targets( eulerall )
endif()
......
include_directories("${CMAKE_SOURCE_DIR}/dune/fem-dg/examples/incompnavierstokes/")
configure_parameter_file()
# default settings for the test case
add_definitions( "-DYASPGRID" )
add_definitions( "-DGRIDDIM=2" )
configure_file( BuildTests.cmake BuildTests.cmake @ONLY)
#configure_parameter_file( incompnavierstokes )
#dune_add_test( NAME incompnavierstokes
# SOURCES ../main.cc
# COMPILE_DEFINITIONS POLORDER=2
# CMD_ARGS parameters/incompnavierstokes )
#dune_add_test_case( NAME incompnavierstokes
# SOURCES ../main.cc
# COMPILE_DEFINITIONS POLORDER=2 )
#add_code_generate_targets( incompnavierstokes )
#
#if( NOT FEMDG_FAST_TESTBUILD )
# configure_parameter_file( incompnavierstokesall )
# dune_add_test( NAME incompnavierstokesall
# SOURCES ../main.cc
# CMD_ARGS parameters/incompnavierstokesall )
# dune_add_test_case( NAME incompnavierstokesall
# SOURCES ../main.cc )
# add_code_generate_targets( incompnavierstokesall )
#endif()
......
include_directories("${CMAKE_SOURCE_DIR}/dune/fem-dg/examples/navierstokes/")
configure_parameter_file()
# specify type of grid implemention, dimension and polynmomial order
set( GRIDTYPE ALUGRID_CUBE )
set( GRIDDIM 2 )
......@@ -10,19 +8,15 @@ set( POLORDER 2 )
add_definitions( "-D${GRIDTYPE}" )
add_definitions( "-DGRIDDIM=${GRIDDIM}" )
configure_parameter_file( navierstokes )
dune_add_test( NAME navierstokes
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER}"
CMD_ARGS parameters/navierstokes )
dune_add_test_case( NAME navierstokes
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER}" )
add_code_generate_targets( navierstokes )
if( NOT FEMDG_FAST_TESTBUILD )
configure_parameter_file( navierstokesall )
dune_add_test( NAME navierstokesall
SOURCES ../main.cc
CMD_ARGS parameters/navierstokesall )
dune_add_test_case( NAME navierstokesall
SOURCES ../main.cc )
add_code_generate_targets( navierstokesall )
endif()
......
include_directories("${CMAKE_SOURCE_DIR}/dune/fem-dg/examples/poisson/")
configure_parameter_file()
# specify type of grid implemention, dimension and polynmomial order
set( GRIDTYPE ALUGRID_CUBE )
set( GRIDDIM 2 )
......@@ -12,18 +10,14 @@ add_definitions( "-DGRIDDIM=${GRIDDIM}" )
add_definitions( "-DDIMRANGE=1" )
add_definitions( "-DPADAPTSPACE" )
configure_parameter_file( poisson )
dune_add_test( NAME poisson
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER}"
CMD_ARGS parameters/poisson )
dune_add_test_case( NAME poisson
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER}" )
add_code_generate_targets( poisson )
if( NOT FEMDG_FAST_TESTBUILD )
configure_parameter_file( poissonall )
dune_add_test( NAME poissonall
SOURCES ../main.cc
CMD_ARGS parameters/poissonall )
dune_add_test_case( NAME poissonall
SOURCES ../main.cc )
add_code_generate_targets( poissonall )
endif()
......
include_directories("${CMAKE_SOURCE_DIR}/dune/fem-dg/examples/stokes/")
configure_parameter_file()
# specify type of grid implemention, dimension and polynmomial order
set( GRIDTYPE ALUGRID_CUBE )
set( GRIDDIM 2 )
......@@ -10,18 +8,14 @@ set( POLORDER 2 )
add_definitions( "-D${GRIDTYPE}" )
add_definitions( "-DGRIDDIM=${GRIDDIM}" )
configure_parameter_file( stokes )
dune_add_test( NAME stokes
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER}"
CMD_ARGS parameters/stokes)
dune_add_test_case( NAME stokes
SOURCES ../main.cc
COMPILE_DEFINITIONS "POLORDER=${POLORDER}" )
add_code_generate_targets( stokes )
if( NOT FEMDG_FAST_TESTBUILD )
configure_parameter_file( stokesall )
dune_add_test( NAME stokesall
SOURCES ../main.cc
CMD_ARGS parameters/stokesall )
dune_add_test_case( NAME stokesall
SOURCES ../main.cc )
add_code_generate_targets( stokesall )
endif()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment