Use pytest-recording for VCR tests #3867
Open
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.
We can interface with VCR.py through pytest-recording for flexible config in tests and in the Pytest CLI. The project is actively maintained edit though some lingering conda-forge PRs need addressed edit. In doing so we can:
needs_awsto rely on our existing functionality more explicitly and generallyI also tried configuring VCR to fail to write new cassettes on exceptions in tests, but the behavior wasn't what I expected.
There are other reasonable ways to configure this, and I don't think we have to take on this pytest-recording dep. Still, I got sniped and wanted to open a PR to show it for discussion. We can get most of this with VCR.py config directly. I have also yet to reimplement the behavior to skip tests if no VCR - tougher with a pytest plugin.
If we do move forward I will take this opportunity to update the dev guide with instructions.