Making sure we can run async def tests #4987
Merged
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.
With
twisted.trial
we are able to write asynchronous test functions by returning a Deferred from them. We also have thedeferred_f_from_coro_f
higher order function that can be used as a decorator for anasync def
test function and everything should work as expected. So I'm adding this small test case to check that we indeed can write working tests this way.Unfortunately, a naked
async def
test function will always succeed, with a warning that a coroutine was not awaited (ideally we should get rid if warnings from tests, but this is still easy to miss).I added these tests because I've just found for #4978 that such tests fail with old Twisted. So this PR should fail too.