[petsc-dev] slight inconsistency with test harness?
Barry Smith
bsmith at petsc.dev
Tue Dec 29 21:32:30 CST 2020
Scott,
I spent way to much time puzzling over why
[bsmith at p1 petsc]$ make -f gmakefile.test test search='src*ts*tests*ex26*'
Using MAKEFLAGS: -- search=src*ts*tests*ex26*
# No tests run
# No tests run
# No tests run
When I ran with help I noticed some seemingly slight inconsistency. It says for a directory you include the src but for a specific example you do not include src?
Would it be possible to add support to the test harness so if one puts in the src* for a specific example it still works? For silly people like me who type the full directory path, and keeping typing it over and over again even though it does not work. And to support not putting in the src/ for directories?
Thanks
Barry
Tests can be generated by searching with multiple methods
For general searching (using config/query_test.py):
make -f gmakefile.test test search='sys*ex2*'
or the shortcut using s
make -f gmakefile.test test s='sys*ex2*'
You can also use the full path to a file directory
make -f gmakefile.test test s='src/sys/tests/'
To search for fields from the original test definitions:
make -f gmakefile.test test query='requires' queryval='*MPI_PROCESS_SHARED_MEMORY*'
or the shortcut using q and qv
make -f gmakefile.test test q='requires' qv='*MPI_PROCESS_SHARED_MEMORY*'
To filter results from other searches, use searchin
make -f gmakefile.test test s='src/sys/tests/' searchin='*options*'
To re-run the last tests which failed:
make -f gmakefile.test test test-fail='1'
To see which targets match a given pattern (useful for doing a specific target):
make -f gmakefile.test print-test search=sys*
To build an executable, give full path to location:
make -f "gmakefile.test" ${PETSC_ARCH}/tests/sys/tests/ex1
or make the test with NO_RM=1
Above is from: help-make help-targets help-test
[bsmith at p1 petsc]$ make -f gmakefile.test test search='src*ts*tests*ex26*'
Using MAKEFLAGS: -- search=src*ts*tests*ex26*
# No tests run
# No tests run
# No tests run
[bsmith at p1 petsc]$ make -f gmakefile.test printtest search='src*ts*tests*ex26*'
make: *** No rule to make target 'printtest'. Stop.
[bsmith at p1 petsc]$ make -f gmakefile.test print_test search='src*ts*tests*ex26*'
make: *** No rule to make target 'print_test'. Stop.
[bsmith at p1 petsc]$ make -f gmakefile.test print-test search='src*ts*tests*ex26*'
[bsmith at p1 petsc]$ gmake -f gmakefile.test print-test search='src*ts*tests*ex26*'
[bsmith at p1 petsc]$ gmake -f gmakefile.test test search='src*ts*tests*ex26*'
Using MAKEFLAGS: -- search=src*ts*tests*ex26*
# No tests run
# No tests run
# No tests run
[bsmith at p1 petsc]$ ls src/ts/tests/ex26
ex26 ex26.c
[bsmith at p1 petsc]$ ls src/ts/tests/ex26
ex26 ex26.c
[bsmith at p1 petsc]$ gmake -f gmakefile.test test search='ts*tests*ex26*'
Using MAKEFLAGS: -- search=ts*tests*ex26*
CC arch-ci-linux-cuda-double/tests/ts/tests/ex26.o
CLINKER arch-ci-linux-cuda-double/tests/ts/tests/ex26
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20201229/8e54ca64/attachment.html>
More information about the petsc-dev
mailing list