-
Notifications
You must be signed in to change notification settings - Fork 160
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Test suite clean up #3385
base: master
Are you sure you want to change the base?
Test suite clean up #3385
Conversation
|
ecb9628
to
f3685b7
Compare
f3685b7
to
f848c6f
Compare
93a0aae
to
a20fc9d
Compare
a5f614f
to
27b9af3
Compare
2a7f468
to
6ed1774
Compare
8132b64
to
1122a3b
Compare
9d5f056
to
df4aea3
Compare
|
|
bf317f5
to
ef87021
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Generally very happy with this.
8435a69
to
10f7f0c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Leaving notes for someone (most likely me) to refer to in future. In summary:
- Need to rebase/merge in
master
. - Tweaks to
Makefile
andbuild.yml
.
.github/workflows/build.yml
Outdated
-o faulthandler_timeout=1860 \ | ||
--junit-xml=firedrake2_\$MPISPAWN_TASK_ID1.xml \ | ||
-m "parallel[\$MPISPAWN_WORLD_SIZE] and not broken" \ | ||
-v tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TODO: "dogfood" (bleh) Makefile
and use a matrix to massively cut down on boilerplate
.PHONY: test_smoke | ||
test_smoke: | ||
@echo " Running the bare minimum smoke tests" | ||
@python -m pytest -k "poisson_strong or stokes_mini or dg_advection" -v tests/regression/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be better to use MPI on the "outside" here for the parallel tests so this can be run to check things on HPC
endif | ||
# Requires pytest and pytest-mpi only | ||
.PHONY: test_serial | ||
test_serial: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Terrible name! This runs all the parallel tests too!
|
||
# Requires pytest and pytest-mpi only | ||
.PHONY: test_smoke | ||
test_smoke: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
bikeshedding: I prefer make smoke_tests
or make smoketests
done | ||
|
||
.PHONY: _test_large_world_test | ||
_test_large_world_tests: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure why we have small_world
and large_world
tests separately.
tests/firedrake/vertexonly/test_poisson_inverse_conductivity.py
Outdated
Show resolved
Hide resolved
Why would you remove the slow markers? They are really useful if you want to run the test suite faster (especially in parallel!) and are also there to highlight tests that can be sped up. |
Sorry to undo your hard work but I don't see the benefit in having them:
But it doesn't run all of the tests. It is useful to be able to run only a few fast tests (a la
We already know which tests are slow from
output from pytest. This is another source of truth and I think it will immediately bit-rot. |
@@ -61,17 +60,15 @@ def adjoint_example(mesh): | |||
|
|||
|
|||
@pytest.mark.skipcomplex | |||
# Waiting on stable parallel decompositions through disk checkpointing. | |||
@pytest.mark.xfail |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TODO: What is going on here
I'm in charge now.
Description
TODOs
make check
and clean upMakefile
(and use in CI + mention on install page)--download-mpich
from everywhere, means that MPI is a system dependency