flow
This commit is contained in:
95
tests/test_console.py
Normal file
95
tests/test_console.py
Normal file
@@ -0,0 +1,95 @@
|
||||
"""Tests for flow.core.console."""
|
||||
|
||||
from flow.core.console import ConsoleLogger
|
||||
|
||||
|
||||
def test_console_info(capsys):
|
||||
c = ConsoleLogger()
|
||||
c.info("hello")
|
||||
out = capsys.readouterr().out
|
||||
assert "[INFO]" in out
|
||||
assert "hello" in out
|
||||
|
||||
|
||||
def test_console_warn(capsys):
|
||||
c = ConsoleLogger()
|
||||
c.warn("caution")
|
||||
out = capsys.readouterr().out
|
||||
assert "[WARN]" in out
|
||||
assert "caution" in out
|
||||
|
||||
|
||||
def test_console_error(capsys):
|
||||
c = ConsoleLogger()
|
||||
c.error("bad thing")
|
||||
out = capsys.readouterr().out
|
||||
assert "[ERROR]" in out
|
||||
assert "bad thing" in out
|
||||
|
||||
|
||||
def test_console_success(capsys):
|
||||
c = ConsoleLogger()
|
||||
c.success("done")
|
||||
out = capsys.readouterr().out
|
||||
assert "[SUCCESS]" in out
|
||||
assert "done" in out
|
||||
|
||||
|
||||
def test_console_step_lifecycle(capsys):
|
||||
c = ConsoleLogger()
|
||||
c.step_start(1, 3, "Test step")
|
||||
c.step_command("echo hi")
|
||||
c.step_output("hi")
|
||||
c.step_complete("Done")
|
||||
out = capsys.readouterr().out
|
||||
assert "Step 1/3" in out
|
||||
assert "$ echo hi" in out
|
||||
assert "Done" in out
|
||||
|
||||
|
||||
def test_console_step_skip(capsys):
|
||||
c = ConsoleLogger()
|
||||
c.start_time = 0
|
||||
c.step_skip("not needed")
|
||||
out = capsys.readouterr().out
|
||||
assert "Skipped" in out
|
||||
|
||||
|
||||
def test_console_step_fail(capsys):
|
||||
c = ConsoleLogger()
|
||||
c.start_time = 0
|
||||
c.step_fail("exploded")
|
||||
out = capsys.readouterr().out
|
||||
assert "Failed" in out
|
||||
|
||||
|
||||
def test_console_table(capsys):
|
||||
c = ConsoleLogger()
|
||||
c.table(["NAME", "VALUE"], [["foo", "bar"], ["baz", "qux"]])
|
||||
out = capsys.readouterr().out
|
||||
assert "NAME" in out
|
||||
assert "foo" in out
|
||||
assert "baz" in out
|
||||
|
||||
|
||||
def test_console_table_empty(capsys):
|
||||
c = ConsoleLogger()
|
||||
c.table(["NAME"], [])
|
||||
out = capsys.readouterr().out
|
||||
assert out == ""
|
||||
|
||||
|
||||
def test_console_section_header(capsys):
|
||||
c = ConsoleLogger()
|
||||
c.section_header("Test", "sub")
|
||||
out = capsys.readouterr().out
|
||||
assert "TEST" in out
|
||||
assert "sub" in out
|
||||
|
||||
|
||||
def test_console_plan_header(capsys):
|
||||
c = ConsoleLogger()
|
||||
c.plan_header("My Plan", 5)
|
||||
out = capsys.readouterr().out
|
||||
assert "MY PLAN" in out
|
||||
assert "5 actions" in out
|
||||
Reference in New Issue
Block a user