Ejemplo n.º 1
0
def test_printer_print():
    p = Printer()
    text = "This is a test."
    p.good(text)
    p.fail(text)
    p.info(text)
    p.text(text)
Ejemplo n.º 2
0
def test_printer_log_friendly_prefix():
    text = "This is a test."
    ENV_LOG_FRIENDLY = "CUSTOM_LOG_FRIENDLY"
    os.environ[ENV_LOG_FRIENDLY] = "True"
    p = Printer(no_print=True, env_prefix="CUSTOM")
    assert p.good(text) in ("\u2714 This is a test.", "[+] This is a test.")
    print(p.good(text))
    del os.environ[ENV_LOG_FRIENDLY]
Ejemplo n.º 3
0
def test_printer_counts():
    p = Printer()
    text = "This is a test."
    for i in range(2):
        p.good(text)
    for i in range(1):
        p.fail(text)
    for i in range(4):
        p.warn(text)
    assert p.counts[MESSAGES.GOOD] == 2
    assert p.counts[MESSAGES.FAIL] == 1
    assert p.counts[MESSAGES.WARN] == 4
Ejemplo n.º 4
0
def test_printer():
    p = Printer(no_print=True)
    text = "This is a test."
    if supports_ansi():
        assert p.good(text) == "\x1b[38;5;2m\u2714 This is a test.\x1b[0m"
        assert p.fail(text) == "\x1b[38;5;1m\u2718 This is a test.\x1b[0m"
        assert p.warn(text) == "\x1b[38;5;3m\u26a0 This is a test.\x1b[0m"
        assert p.info(text) == "\x1b[38;5;4m\u2139 This is a test.\x1b[0m"
        assert p.text(text) == text
    else:
        assert p.good(text) == text
        assert p.fail(text) == text
        assert p.warn(text) == text
        assert p.info(text) == text
        assert p.text(text) == text
Ejemplo n.º 5
0
def test_printer_log_friendly():
    text = "This is a test."
    ENV_LOG_FRIENDLY = "WASABI_LOG_FRIENDLY"
    os.environ[ENV_LOG_FRIENDLY] = "True"
    p = Printer(no_print=True)
    assert p.good(text) in ("\u2714 This is a test.", "[+] This is a test.")
    del os.environ[ENV_LOG_FRIENDLY]
Ejemplo n.º 6
0
def test_printer():
    p = Printer(no_print=True)
    text = "This is a test."
    good = p.good(text)
    fail = p.fail(text)
    warn = p.warn(text)
    info = p.info(text)
    assert p.text(text) == text
    if SUPPORTS_ANSI and not NO_UTF8:
        assert good == "\x1b[38;5;2m\u2714 {}\x1b[0m".format(text)
        assert fail == "\x1b[38;5;1m\u2718 {}\x1b[0m".format(text)
        assert warn == "\x1b[38;5;3m\u26a0 {}\x1b[0m".format(text)
        assert info == "\x1b[38;5;4m\u2139 {}\x1b[0m".format(text)
    if SUPPORTS_ANSI and NO_UTF8:
        assert good == "\x1b[38;5;2m[+] {}\x1b[0m".format(text)
        assert fail == "\x1b[38;5;1m[x] {}\x1b[0m".format(text)
        assert warn == "\x1b[38;5;3m[!] {}\x1b[0m".format(text)
        assert info == "\x1b[38;5;4m[i] {}\x1b[0m".format(text)
    if not SUPPORTS_ANSI and not NO_UTF8:
        assert good == "\u2714 {}".format(text)
        assert fail == "\u2718 {}".format(text)
        assert warn == "\u26a0 {}".format(text)
        assert info == "\u2139 {}".format(text)
    if not SUPPORTS_ANSI and NO_UTF8:
        assert good == "[+] {}".format(text)
        assert fail == "[x] {}".format(text)
        assert warn == "[!] {}".format(text)
        assert info == "[i] {}".format(text)
Ejemplo n.º 7
0
def test_printer_no_pretty():
    p = Printer(no_print=True, pretty=False)
    text = "This is a test."
    assert p.good(text) == text
    assert p.fail(text) == text
    assert p.warn(text) == text
    assert p.info(text) == text
    assert p.text(text) == text
Ejemplo n.º 8
0
def test_printer_loading(hide_animation):
    p = Printer(hide_animation=hide_animation)
    print("\n")
    with p.loading("Loading..."):
        time.sleep(1)
    p.good("Success!")

    with p.loading("Something else..."):
        time.sleep(2)
    p.good("Yo!")

    with p.loading("Loading..."):
        time.sleep(1)
    p.good("Success!")
Ejemplo n.º 9
0
def test_printer_loading_no_print():
    p = Printer(no_print=True)
    with p.loading("Loading..."):
        time.sleep(1)
    p.good("Success!")
Ejemplo n.º 10
0
def test_printer_spaced():
    p = Printer(no_print=True, pretty=False)
    text = "This is a test."
    assert p.good(text) == text
    assert p.good(text, spaced=True) == "\n{}\n".format(text)