Skip to content

Commit

Permalink
unittest: make protocol parameter positional-only (python#12834)
Browse files Browse the repository at this point in the history
  • Loading branch information
JelleZijlstra authored Oct 17, 2024
1 parent b78b3f1 commit a2ee32b
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion stdlib/unittest/runner.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,14 @@ class _SupportsWriteAndFlush(SupportsWrite[str], SupportsFlush, Protocol): ...

# All methods used by unittest.runner.TextTestResult's stream
class _TextTestStream(_SupportsWriteAndFlush, Protocol):
def writeln(self, arg: str | None = None) -> str: ...
def writeln(self, arg: str | None = None, /) -> str: ...

# _WritelnDecorator should have all the same attrs as its stream param.
# But that's not feasible to do Generically
# We can expand the attributes if requested
class _WritelnDecorator(_TextTestStream):
def __init__(self, stream: _TextTestStream) -> None: ...
def writeln(self, arg: str | None = None) -> str: ...
def __getattr__(self, attr: str) -> Any: ... # Any attribute from the stream type passed to __init__
# These attributes are prevented by __getattr__
stream: Never
Expand Down

0 comments on commit a2ee32b

Please sign in to comment.