terminalwriter: remove TerminalWriter's stringio argument

Had a mark indicating it should be removed, and I agree, it's better to
just use the `file` argument.
This commit is contained in:
Ran Benita 2020-04-29 16:45:47 +03:00
parent 94a57d2353
commit 66ee755649
4 changed files with 16 additions and 17 deletions

View File

@ -4,7 +4,6 @@ import shutil
import sys
import unicodedata
from functools import lru_cache
from io import StringIO
from typing import Sequence
@ -83,13 +82,9 @@ class TerminalWriter:
invert=7,
)
# XXX deprecate stringio argument
def __init__(self, file=None, stringio=False):
def __init__(self, file=None):
if file is None:
if stringio:
self.stringio = file = StringIO()
else:
from sys import stdout as file
file = sys.stdout
if hasattr(file, "isatty") and file.isatty() and colorama:
file = colorama.AnsiToWin32(file).stream
self._file = file

View File

@ -1,5 +1,6 @@
""" submit failure or test session information to a pastebin service. """
import tempfile
from io import StringIO
from typing import IO
import pytest
@ -99,11 +100,10 @@ def pytest_terminal_summary(terminalreporter):
msg = rep.longrepr.reprtraceback.reprentries[-1].reprfileloc
except AttributeError:
msg = tr._getfailureheadline(rep)
tw = _pytest.config.create_terminal_writer(
terminalreporter.config, stringio=True
)
file = StringIO()
tw = _pytest.config.create_terminal_writer(terminalreporter.config, file)
rep.toterminal(tw)
s = tw.stringio.getvalue()
s = file.getvalue()
assert len(s)
pastebinurl = create_new_paste(s)
tr.write_line("{} --> {}".format(msg, pastebinurl))

View File

@ -82,10 +82,11 @@ class BaseReport:
.. versionadded:: 3.0
"""
tw = TerminalWriter(stringio=True)
file = StringIO()
tw = TerminalWriter(file)
tw.hasmarkup = False
self.toterminal(tw)
exc = tw.stringio.getvalue()
exc = file.getvalue()
return exc.strip()
@property

View File

@ -1,3 +1,4 @@
import io
import operator
import os
import queue
@ -1037,10 +1038,11 @@ raise ValueError()
"""
)
excinfo = pytest.raises(ValueError, mod.f)
tw = TerminalWriter(stringio=True)
file = io.StringIO()
tw = TerminalWriter(file=file)
repr = excinfo.getrepr(**reproptions)
repr.toterminal(tw)
assert tw.stringio.getvalue()
assert file.getvalue()
def test_traceback_repr_style(self, importasmod, tw_mock):
mod = importasmod(
@ -1255,11 +1257,12 @@ raise ValueError()
getattr(excinfo.value, attr).__traceback__ = None
r = excinfo.getrepr()
tw = TerminalWriter(stringio=True)
file = io.StringIO()
tw = TerminalWriter(file=file)
tw.hasmarkup = False
r.toterminal(tw)
matcher = LineMatcher(tw.stringio.getvalue().splitlines())
matcher = LineMatcher(file.getvalue().splitlines())
matcher.fnmatch_lines(
[
"ValueError: invalid value",