GitHub

TestConsole

API reference for TestConsole.

Records each call as an Entry; writes nothing.

@testing.effect tests run with a fresh one, so they read what they (and the console loggers) wrote with testing.log_lines::

@testing.effect
def test_greets():
    yield from console.log("hello")
    assert (yield from testing.log_lines) == ["hello"]

Attributes

AttributeTypeDescription
entrieslist[Entry]

Every call so far, in order.

log_linesEffect[list[object]]

Every argument given to log, in order.

error_linesEffect[list[object]]

Every argument given to error, in order.

Functions

__init__

__init__() -> None
def __init__(self) -> None:
    self._entries: list[Entry] = []

layer

layer() -> Layer[Never]

Provide a fresh TestConsole as the CurrentConsole.

Returns Layer[Never]

@staticmethod
def layer() -> Layer[Never]:
    """Provide a fresh ``TestConsole`` as the ``CurrentConsole``."""
    return layer_sync(CurrentConsole, TestConsole)

assert_

assert_(condition, *args) -> None
ParameterTypeDescription
conditionbool
argsobject = ()
def assert_(self, condition: bool, *args: object) -> None:
    self._record("assert", condition, *args)

clear

clear() -> None
def clear(self) -> None:
    self._record("clear")

count

count(label='default') -> None
ParameterTypeDescription
labelstr = 'default'
def count(self, label: str = "default") -> None:
    self._record("count", label)

count_reset

count_reset(label='default') -> None
ParameterTypeDescription
labelstr = 'default'
def count_reset(self, label: str = "default") -> None:
    self._record("count_reset", label)

debug

debug(*args) -> None
ParameterTypeDescription
argsobject = ()
def debug(self, *args: object) -> None:
    self._record("debug", *args)

dir

dir(item) -> None
ParameterTypeDescription
itemobject
def dir(self, item: object) -> None:
    self._record("dir", item)

error

error(*args) -> None
ParameterTypeDescription
argsobject = ()
def error(self, *args: object) -> None:
    self._record("error", *args)

group

group(*args) -> None
ParameterTypeDescription
argsobject = ()
def group(self, *args: object) -> None:
    self._record("group", *args)

group_collapsed

group_collapsed(*args) -> None
ParameterTypeDescription
argsobject = ()
def group_collapsed(self, *args: object) -> None:
    self._record("group_collapsed", *args)

group_end

group_end() -> None
def group_end(self) -> None:
    self._record("group_end")

info

info(*args) -> None
ParameterTypeDescription
argsobject = ()
def info(self, *args: object) -> None:
    self._record("info", *args)

log

log(*args) -> None
ParameterTypeDescription
argsobject = ()
def log(self, *args: object) -> None:
    self._record("log", *args)

table

table(data, properties=None) -> None
ParameterTypeDescription
dataobject
propertiesSequence[str] | None = None
def table(self, data: object, properties: Sequence[str] | None = None) -> None:
    self._record("table", data, properties)

time

time(label='default') -> None
ParameterTypeDescription
labelstr = 'default'
def time(self, label: str = "default") -> None:
    self._record("time", label)

time_end

time_end(label='default') -> None
ParameterTypeDescription
labelstr = 'default'
def time_end(self, label: str = "default") -> None:
    self._record("time_end", label)

time_log

time_log(label='default', *args) -> None
ParameterTypeDescription
labelstr = 'default'
argsobject = ()
def time_log(self, label: str = "default", *args: object) -> None:
    self._record("time_log", label, *args)

trace

trace(*args) -> None
ParameterTypeDescription
argsobject = ()
def trace(self, *args: object) -> None:
    self._record("trace", *args)

warn

warn(*args) -> None
ParameterTypeDescription
argsobject = ()
def warn(self, *args: object) -> None:
    self._record("warn", *args)