Moved dummy_context_manager to compat module
This commit is contained in:
parent
9f7345d663
commit
f674217c43
|
@ -14,8 +14,7 @@ from tempfile import TemporaryFile
|
||||||
|
|
||||||
import six
|
import six
|
||||||
import pytest
|
import pytest
|
||||||
from _pytest.compat import CaptureIO
|
from _pytest.compat import CaptureIO, dummy_context_manager
|
||||||
|
|
||||||
|
|
||||||
patchsysdict = {0: "stdin", 1: "stdout", 2: "stderr"}
|
patchsysdict = {0: "stdin", 1: "stdout", 2: "stderr"}
|
||||||
|
|
||||||
|
@ -122,16 +121,12 @@ class CaptureManager(object):
|
||||||
cap.suspend_capturing(in_=in_)
|
cap.suspend_capturing(in_=in_)
|
||||||
return outerr
|
return outerr
|
||||||
|
|
||||||
@contextlib.contextmanager
|
|
||||||
def _dummy_context_manager(self):
|
|
||||||
yield
|
|
||||||
|
|
||||||
@contextlib.contextmanager
|
@contextlib.contextmanager
|
||||||
def disabled(self):
|
def disabled(self):
|
||||||
"""Context manager to temporarily disables capture."""
|
"""Context manager to temporarily disables capture."""
|
||||||
# Need to undo local capsys-et-al if exists before disabling global capture
|
# Need to undo local capsys-et-al if exists before disabling global capture
|
||||||
fixture = getattr(self._current_item, "_capture_fixture", None)
|
fixture = getattr(self._current_item, "_capture_fixture", None)
|
||||||
ctx_manager = fixture.suspend() if fixture else self._dummy_context_manager()
|
ctx_manager = fixture.suspend() if fixture else dummy_context_manager()
|
||||||
with ctx_manager:
|
with ctx_manager:
|
||||||
self.suspend_global_capture(item=None, in_=False)
|
self.suspend_global_capture(item=None, in_=False)
|
||||||
try:
|
try:
|
||||||
|
|
|
@ -8,6 +8,7 @@ import functools
|
||||||
import inspect
|
import inspect
|
||||||
import re
|
import re
|
||||||
import sys
|
import sys
|
||||||
|
from contextlib import contextmanager
|
||||||
|
|
||||||
import py
|
import py
|
||||||
|
|
||||||
|
@ -151,6 +152,13 @@ def getfuncargnames(function, is_method=False, cls=None):
|
||||||
return arg_names
|
return arg_names
|
||||||
|
|
||||||
|
|
||||||
|
@contextmanager
|
||||||
|
def dummy_context_manager():
|
||||||
|
"""Context manager that does nothing, useful in situations where you might need an actual context manager or not
|
||||||
|
depending on some condition. Using this allow to keep the same code"""
|
||||||
|
yield
|
||||||
|
|
||||||
|
|
||||||
def get_default_arg_names(function):
|
def get_default_arg_names(function):
|
||||||
# Note: this code intentionally mirrors the code at the beginning of getfuncargnames,
|
# Note: this code intentionally mirrors the code at the beginning of getfuncargnames,
|
||||||
# to get the arguments which were excluded from its result because they had default values
|
# to get the arguments which were excluded from its result because they had default values
|
||||||
|
|
|
@ -6,6 +6,7 @@ from contextlib import closing, contextmanager
|
||||||
import re
|
import re
|
||||||
import six
|
import six
|
||||||
|
|
||||||
|
from _pytest.compat import dummy_context_manager
|
||||||
from _pytest.config import create_terminal_writer
|
from _pytest.config import create_terminal_writer
|
||||||
import pytest
|
import pytest
|
||||||
import py
|
import py
|
||||||
|
@ -369,11 +370,6 @@ def pytest_configure(config):
|
||||||
config.pluginmanager.register(LoggingPlugin(config), "logging-plugin")
|
config.pluginmanager.register(LoggingPlugin(config), "logging-plugin")
|
||||||
|
|
||||||
|
|
||||||
@contextmanager
|
|
||||||
def _dummy_context_manager():
|
|
||||||
yield
|
|
||||||
|
|
||||||
|
|
||||||
class LoggingPlugin(object):
|
class LoggingPlugin(object):
|
||||||
"""Attaches to the logging module and captures log messages for each test.
|
"""Attaches to the logging module and captures log messages for each test.
|
||||||
"""
|
"""
|
||||||
|
@ -537,7 +533,7 @@ class LoggingPlugin(object):
|
||||||
log_cli_handler, formatter=log_cli_formatter, level=log_cli_level
|
log_cli_handler, formatter=log_cli_formatter, level=log_cli_level
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
self.live_logs_context = _dummy_context_manager()
|
self.live_logs_context = dummy_context_manager()
|
||||||
|
|
||||||
|
|
||||||
class _LiveLoggingStreamHandler(logging.StreamHandler):
|
class _LiveLoggingStreamHandler(logging.StreamHandler):
|
||||||
|
@ -575,7 +571,7 @@ class _LiveLoggingStreamHandler(logging.StreamHandler):
|
||||||
ctx_manager = (
|
ctx_manager = (
|
||||||
self.capture_manager.disabled()
|
self.capture_manager.disabled()
|
||||||
if self.capture_manager
|
if self.capture_manager
|
||||||
else _dummy_context_manager()
|
else dummy_context_manager()
|
||||||
)
|
)
|
||||||
with ctx_manager:
|
with ctx_manager:
|
||||||
if not self._first_record_emitted:
|
if not self._first_record_emitted:
|
||||||
|
|
Loading…
Reference in New Issue