Fix auto marking of async hypothesis tests in auto mode #259
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.
The option
--asyncio-mode=auto
marks all async functions with theasyncio
mark during the collection phase. However, when pytest collects the Hypothesis test, the@given
decorator has already been applied and the Hypothesis test function is no longer a coroutine.This commit extends the
pytest_pycollect_makeitem
hook to mark Hypothesis tests whose function body is a coroutine.Closes #258
I was uncertain whether to add the tests to the auto mode tests or to the Hypothesis tests. I eventually decided to add them to the tests for the Hypothesis integration. Rather than using
pytester
I added some assertions so the tests would fail in case we ever changeasyncio_mode
to something other than auto. Let me know what you think of this.