DUNE_BUILD_TESTS_ON_MAKE_ALL not working as expected
There are a few issues here and I should maybe start by listing the ones that have already been addressed but that I didn't file a proper bug report for.
-
Tests marked as
EXPECT_COMPILE_FAIL
were not excluded from the list of tests to compile. I originally left a comment on 6d49f917, to which @dominic responded and later came up with a fix (yay!), see also !53 (merged). -
I would expect now that instead of having to run
make build_tests && ctest
, I could runmake && ctest
, in particular allowing me to rundunecontrol all
and thenctest
inside each module. This works for a few modules such asdune-common
. For some modules, however, it does not, because some tests are not built so that ctest will tell you the test executable is missing. Modules for which this happens includedune-geometry
,dune-istl
, anddune-functions
.
To be more precise, this is the list of targets that are built if I run make
in dune-istl
:
basearraytest
bcrsassigntest
bcrsbuild
bcrsimplicitbuild
bcrsnormtest
bvectortest
complexmatrixtest
complexrhstest
dotproducttest
example
fieldvectortest
inverseoperator2prectest
iotest
ldltest
matrixiteratortest
matrixmarkettest
matrixnormtest
matrixredisttest
matrixtest
matrixutilstest
mmtest
multitypeblockmatrixtest
multitypeblockvectortest
mv
overlappingschwarztest
poweriterationtest
scaledidmatrixtest
spqrtest
superluctest
superlustest
superlutest
superluztest
test_pardiso
umfpacktest
vbvectortest
vectorcommtest
This is the list of tests that ctest
tries to run on my machine:
amgtestamgtest
basearraytestgtest
bcrsassigntest
bcrsbuild
bcrsimplicitbuild
bcrsnormtest
bvectortest
complexmatrixtest
complexrhstest
dotproducttest
fastamg
fieldvectortest
galerkintest
graphtest
hierarchytest
inverseoperator2prectest
iotest
kamgtest
ldltest
matrixiteratortest
matrixmarkettest
matrixnormtest
matrixredisttest
matrixtest
matrixutilstest
mmtest
multitypeblockmatrixtest
multitypeblockvectortest
mv
overlappingschwarztest
pamg_comm_repart_test
pamgtest
poweriterationtest
pthreadamgtest
pthreaddirectamgtest
pthreaddirectfastamgtest
pthreaddirecttwoleveltest
pthreadfastamgtest
pthreadtwoleveltest
scaledidmatrixtest
spqrtest
superluctest
superlustest
superlutest
superluztest
test_pardiso
transfertest
twolevelmethodschwarztest
twolevelmethodtest
umfpackamgtest
umfpackfastamgtest
umfpacktest
vbvectortest
vectorcommtest
The second list of course does not contain the target example
, but it also contains the following entries that are not part of the first list:
amgtest
fastamg
galerkintest
graphtest
hierarchytest
kamgtest
pamg_comm_repart_test
pamgtest
pthreadamgtest
pthreaddirectamgtest
pthreaddirectfastamgtest
pthreaddirecttwoleveltest
pthreadfastamgtest
pthreadtwoleveltest
transfertest
twolevelmethodschwarztest
twolevelmethodtest
umfpackamgtest
umfpackfastamgtest
Each one of these will lead to a "Not run" test failure.