Coverage for /home/ionel/open-source/pytest-cov/examples/adhoc-layout/.tox/py27/lib/python2.7/site-packages/_pytest/reports.py : 24%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
import py
from _pytest._code.code import TerminalRepr
def getslaveinfoline(node): try: return node._slaveinfocache except AttributeError: d = node.slaveinfo ver = "%s.%s.%s" % d["version_info"][:3] node._slaveinfocache = s = "[%s] %s -- Python %s %s" % ( d["id"], d["sysplatform"], ver, d["executable"], ) return s
class BaseReport(object): when = None
def __init__(self, **kw): self.__dict__.update(kw)
def toterminal(self, out): if hasattr(self, "node"): out.line(getslaveinfoline(self.node))
longrepr = self.longrepr if longrepr is None: return
if hasattr(longrepr, "toterminal"): longrepr.toterminal(out) else: try: out.line(longrepr) except UnicodeEncodeError: out.line("<unprintable longrepr>")
def get_sections(self, prefix): for name, content in self.sections: if name.startswith(prefix): yield prefix, content
@property def longreprtext(self): """ Read-only property that returns the full string representation of ``longrepr``.
.. versionadded:: 3.0 """ tw = py.io.TerminalWriter(stringio=True) tw.hasmarkup = False self.toterminal(tw) exc = tw.stringio.getvalue() return exc.strip()
@property def caplog(self): """Return captured log lines, if log capturing is enabled
.. versionadded:: 3.5 """ return "\n".join( content for (prefix, content) in self.get_sections("Captured log") )
@property def capstdout(self): """Return captured text from stdout, if capturing is enabled
.. versionadded:: 3.0 """ return "".join( content for (prefix, content) in self.get_sections("Captured stdout") )
@property def capstderr(self): """Return captured text from stderr, if capturing is enabled
.. versionadded:: 3.0 """ return "".join( content for (prefix, content) in self.get_sections("Captured stderr") )
@property def fspath(self): return self.nodeid.split("::")[0]
class TestReport(BaseReport): """ Basic test report object (also used for setup and teardown calls if they fail). """
def __init__( self, nodeid, location, keywords, outcome, longrepr, when, sections=(), duration=0, user_properties=None, **extra ): #: normalized collection node id
#: a (filesystempath, lineno, domaininfo) tuple indicating the #: actual location of a test item - it might be different from the #: collected one e.g. if a method is inherited from a different module.
#: a name -> value dictionary containing all keywords and #: markers associated with a test invocation.
#: test outcome, always one of "passed", "failed", "skipped".
#: None or a failure representation.
#: one of 'setup', 'call', 'teardown' to indicate runtest phase.
#: user properties is a list of tuples (name, value) that holds user #: defined properties of the test
#: list of pairs ``(str, str)`` of extra information which needs to #: marshallable. Used by pytest to add captured text #: from ``stdout`` and ``stderr``, but may be used by other plugins #: to add arbitrary information to reports.
#: time it took to run just the test
def __repr__(self): return "<TestReport %r when=%r outcome=%r>" % ( self.nodeid, self.when, self.outcome, )
class CollectReport(BaseReport): when = "collect"
def __init__(self, nodeid, outcome, longrepr, result, sections=(), **extra):
@property def location(self): return (self.fspath, None, self.fspath)
def __repr__(self): return "<CollectReport %r lenresult=%s outcome=%r>" % ( self.nodeid, len(self.result), self.outcome, )
class CollectErrorRepr(TerminalRepr): def __init__(self, msg): self.longrepr = msg
def toterminal(self, out): out.line(self.longrepr, red=True) |