Fix order of available projects in test_recipe#3023
Fix order of available projects in test_recipe#3023valeriupredoi wants to merge 7 commits intomainfrom
Conversation
|
Based on which tests are failing here: https://app.circleci.com/pipelines/github/ESMValGroup/ESMValCore?branch=main, it looks like something changed in a dependency. That test is a pain anyway, I've had to update it several times already. Maybe you could change it so it doesn't depend on the order of the projects and doesn't fail again when we add a another project? |
ah! Good call - I was suspecting it's a dependency, since we've not changed anything since yesterday 😁 Yes, let me have a closer look at it then |
|
@bouweandela ut's blithering Dask! - dask 2026.3.0 pyhc364b38_0 conda-forge Cached
+ dask 2026.1.2 pyhcf101f3_1 conda-forge Cached
- dask-core 2026.3.0 pyhc364b38_0 conda-forge Cached
+ dask-core 2026.1.2 pyhcf101f3_0 conda-forge Cached
- distributed 2026.3.0 pyhc364b38_0 conda-forge Cached
+ distributed 2026.1.2 pyhcf101f3_1 conda-forge Cachedaghh! |
|
OK @bouweandela the test is now dask-agnostic 🍺 |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3023 +/- ##
=======================================
Coverage 95.70% 95.70%
=======================================
Files 267 267
Lines 15768 15768
=======================================
Hits 15090 15090
Misses 678 678 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
bouweandela
left a comment
There was a problem hiding this comment.
Thanks V! Some suggestions to make this more future-proof
| "The following tables are available: CMIP3, CMIP5, CMIP6, CMIP7, " | ||
| "CORDEX, obs4MIPs, ana4MIPs, OBS, OBS6, native6, ACCESS, CESM, EMAC, " | ||
| 'ICON, IPSLCM."' |
There was a problem hiding this comment.
It would be really nice to make this independent of which projects have been configured exactly, because now this test needs to be updated every time you add support for a new project. How about something like?
| "The following tables are available: CMIP3, CMIP5, CMIP6, CMIP7, " | |
| "CORDEX, obs4MIPs, ana4MIPs, OBS, OBS6, native6, ACCESS, CESM, EMAC, " | |
| 'ICON, IPSLCM."' | |
| "The following tables are available: .*."' |
followed by
assert re.match(msg, exc.value.failed_tasks[0].message)and as an additional sanity check, test that one or two expected projects are in the message:
assert "CMIP7" in exc.value.failed_tasks[0].messageThere was a problem hiding this comment.
that's a different test approach, bud - my idea was this test to be restrictive ie when a project is no longer supported, or another becomes supported, it should fail and one of us should edit that list. What you are proposing is to make the test rather loose - if you think that's better then I'll pop in the suggestions, but I like it restrictive TBF
Description
Order got mangled for some reason - you know why @bouweandela ?
Before you get started
Checklist
It is the responsibility of the author to make sure the pull request is ready to review. The icons indicate whether the item will be subject to the 🛠 Technical or 🧪 Scientific review.
To help with the number pull requests: