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