Unit test skips based on lack of optional module availability #898
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add
unittestskipping (including moving relevant imports and logic where necessary) in all cases where an optional dependencies (esmpy, scipy, matplotlib, access to thencdumpcommand viancoinstall or otherwise, etc.) are required, either as called in the test method itself or used under-the-hood in the cf logic.This includes some fixes for cases where we already had such skips where esmpy is required, but there was logic at module-level which meant the unavailability of the module would be raised as an error before the test methods ran.
As tested locally via setting up a conda environment without any of the optionals in it:
and ensuring we only have passes and skips.
(Thought I might as well sort this whilst reviewing our Python version minimum and maximum support.)