Make make_logging_logger() return log level to original state #1275
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.
When tests use the
make_logging_logger()
context with the name set to None, the log level of the default/root logger is set but not reset after the context is terminated. This causes some tests in tests/test_coroutine_sink.py that make calls to the logger in an asynchronous context fail if they are executed after. This is caused by asyncio adding a log (specificallyUsing selector: EpollSelector
) atDEBUG
level when initialized, and due to the modified debug level this message is not discarded as expected.For example, the following execution would fail:
pytest tests/test_interception.py tests/test_coroutine_sink.py
.I fixed this by making
make_logging_logger()
remember the original log level, and restore it before exiting.