1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
from time import sleep
from rich.console import Console
from rich.spinner import Spinner
from rich.status import Status
def test_status():
console = Console(
color_system=None, width=80, legacy_windows=False, get_time=lambda: 0.0
)
status = Status("foo", console=console)
assert status.console == console
previous_status_renderable = status.renderable
status.update(status="bar", spinner_style="red", speed=2.0)
assert previous_status_renderable == status.renderable
assert isinstance(status.renderable, Spinner)
status.update(spinner="dots2")
assert previous_status_renderable != status.renderable
# TODO: Testing output is tricky with threads
with status:
sleep(0.2)
def test_renderable():
console = Console(
color_system=None, width=80, legacy_windows=False, get_time=lambda: 0.0
)
status = Status("foo", console=console)
console.begin_capture()
console.print(status)
assert console.end_capture() == "⠋ foo\n"
|