-
Notifications
You must be signed in to change notification settings - Fork 388
Add prerequisite tags to all necessary test cases #560
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
Conversation
|
@mark-petersen, see #559 (comment) for comments about testing this PR. |
|
@pwolfram, you are welcome to test this out but mostly I'd appreciate you taking a look at the tags I added to test cases that you manage and make sure they seem correct. And, of course, that you're okay with these tags being added. It should be harmless to not include the tags if you would rather not, it just might mean you can't safely include your test cases in a regression test suite running in parallel, down the road when we hope to have that capability. |
|
@jamilgafur and @vanroekel, this PR is less critical for you to have a look at, but you will eventually want the version of the QU240 test case with the |
TestingOn Grizzly:
I didn't try to check bit-for-bit against the current |
|
@xylar, is this the file you are looking for: |
pwolfram
left a comment
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.
Reviewed based on inspection and memory -- thanks @xylar !
| @@ -1,4 +1,5 @@ | |||
| <driver_script name="run_test.py"> | |||
| <prerequisite core="ocean" configuration="Gaussian_hump" resolution="USDEQU120cr10rr2" test="build_mesh"/> | |||
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.
👍
| @@ -1,4 +1,5 @@ | |||
| <driver_script name="run_test.py"> | |||
| <prerequisite core="ocean" configuration="drying_slope" resolution="meshes" test="1km"/> | |||
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.
👍
| @@ -1,4 +1,5 @@ | |||
| <driver_script name="run_test.py"> | |||
| <prerequisite core="ocean" configuration="drying_slope" resolution="meshes" test="250m"/> | |||
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.
👍
| @@ -1,4 +1,5 @@ | |||
| <driver_script name="run_test.py"> | |||
| <prerequisite core="ocean" configuration="drying_slope" resolution="meshes" test="1km"/> | |||
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.
👍
| @@ -1,4 +1,5 @@ | |||
| <driver_script name="run_test.py"> | |||
| <prerequisite core="ocean" configuration="drying_slope" resolution="meshes" test="250m"/> | |||
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.
👍
| @@ -1,4 +1,5 @@ | |||
| <driver_script name="run_test.py"> | |||
| <prerequisite core="ocean" configuration="drying_slope" resolution="meshes" test="1km"/> | |||
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.
👍
| @@ -1,4 +1,5 @@ | |||
| <driver_script name="run_test.py"> | |||
| <prerequisite core="ocean" configuration="drying_slope" resolution="meshes" test="250m"/> | |||
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 looks likely. It seems like the test case isn't making the local link it should be. If you want that test case to get stress tested, it would be worth fixing. |
|
@xylar, should this be bundled into some existing PR or its own PR? |
|
@pwolfram, it's not related to any existing PRs I'm aware of so I think it should be its own. |
vanroekel
left a comment
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.
Changes look good by visual inspection. Thanks for this addition @xylar
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.
Merged #559 and #560 locally, set up and ran nightly regression suite successfully. When I removed the init step:
+++ b/testing_and_setup/compass/ocean/regression_suites/nightly.xml
@@ -1,7 +1,4 @@
<regression_suite name="nightly_ocean_test_suite">
- <test name="Global Ocean 240km - Init Test" core="ocean" configuration="global_ocean" resolution="QU240" test="init">
- <script name="run.py"/>
- </test>
I get:
./manage_regression_suite.py -t ocean/regression_suites/nightly.xml ...
...
ValueError: Prerequisite of Global Ocean 240km - Performance Test does not precede it in the test suite: ocean global_ocean QU240 init
so everything works as expected. Looks good!
This can be merged after #559 is merged, and develop merged into ocean/develop. (We could merge it now and the tags are ignored, but that could be confusing)
|
@mark-petersen, thanks for the review. I agree, let's wait until #559 has made it to |
|
Adding don't merge label until #559 has made it's way to ocean/develop. |
ed7fb16 to
a9ef7b2
Compare
|
@mark-petersen, I rebased this PR now that #559 and |
a9ef7b2 to
cbfe3f7
Compare
|
@sbrus89, I'm trying to get this work in following #485. It seems like there are tons of new test cases from |
These test cases depend on other test cases to run properly. Before this change, the only way to know that is via symlinks to directories outside of this test case. With this change, it will be easier for regression test suites to make sure prerequisites are present and that they always run before the test cases that depend on them (even if we run tests cases in parallel).
This required making individual copies of several shared `config_driver.xml` files
cbfe3f7 to
1e90756
Compare
|
@sbrus89, and update: I went ahead and added prerequisite tags to all the |
|
I believe we will go with a different approach to address this problem. It will be part of development of COMPASS v. 1.0 on the new COMPASS repo: https://github.com/MPAS-Dev/compass |
These test cases depend on other test cases to run properly. Before this change, the only way to know that is via symlinks to directories outside of this test case. With this change, it will be easier for regression test suites to make sure prerequisites are present and that they always run before the test cases that depend on them (even if we run tests cases in parallel).
This PR should be tested in conjunction with #559 but can be merged independently of that PR without doing any harm. The new
prerequisitetags simply will be ignored until the changes tomanage_regression_suite.pymake their way intoocean/develop.