Exemple #1
0
def test_style_output_custom_tokens():
    """Test that *style_output()* styles output with custom token names."""
    class CliStyle(Style):
        default_style = ""
        styles = {
            Token.Results.Headers: 'bold ansibrightred',
            Token.Results.OddRows: 'bg:#eee #111',
            Token.Results.EvenRows: '#0f0'
        }

    headers = ['h1', 'h2']
    data = [['1', '2'], ['a', 'b']]

    expected_headers = ['\x1b[91;01mh1\x1b[39;00m', '\x1b[91;01mh2\x1b[39;00m']
    expected_data = [[
        '\x1b[38;5;233;48;5;7m1\x1b[39;49m',
        '\x1b[38;5;233;48;5;7m2\x1b[39;49m'
    ], ['\x1b[38;5;10ma\x1b[39m', '\x1b[38;5;10mb\x1b[39m']]

    output = style_output(data,
                          headers,
                          style=CliStyle,
                          header_token='Token.Results.Headers',
                          odd_row_token='Token.Results.OddRows',
                          even_row_token='Token.Results.EvenRows')

    assert (expected_data, expected_headers) == (list(output[0]), output[1])
Exemple #2
0
def test_style_output_no_pygments():
    """Test that *style_output()* does not try to style without Pygments."""
    headers = ['h1', 'h2']
    data = [['1', '2'], ['a', 'b']]
    results = style_output(data, headers)

    assert (data, headers) == (list(results[0]), results[1])
Exemple #3
0
def test_style_output_custom_tokens():
    """Test that *style_output()* styles output with custom token names."""

    class CliStyle(Style):
        default_style = ""
        styles = {
            Token.Results.Headers: "bold ansibrightred",
            Token.Results.OddRows: "bg:#eee #111",
            Token.Results.EvenRows: "#0f0",
        }

    headers = ["h1", "h2"]
    data = [["1", "2"], ["a", "b"]]

    expected_headers = ["\x1b[91;01mh1\x1b[39;00m", "\x1b[91;01mh2\x1b[39;00m"]
    expected_data = [
        ["\x1b[38;5;233;48;5;7m1\x1b[39;49m", "\x1b[38;5;233;48;5;7m2\x1b[39;49m"],
        ["\x1b[38;5;10ma\x1b[39m", "\x1b[38;5;10mb\x1b[39m"],
    ]

    output = style_output(
        data,
        headers,
        style=CliStyle,
        header_token="Token.Results.Headers",
        odd_row_token="Token.Results.OddRows",
        even_row_token="Token.Results.EvenRows",
    )

    assert (expected_data, expected_headers) == (list(output[0]), output[1])
Exemple #4
0
def test_style_output_with_newlines():
    """Test that *style_output()* styles output with newlines in it."""

    class CliStyle(Style):
        default_style = ""
        styles = {
            Token.Output.Header: "bold ansibrightred",
            Token.Output.OddRow: "bg:#eee #111",
            Token.Output.EvenRow: "#0f0",
        }

    headers = ["h1", "h2"]
    data = [["观音\nLine2", "Ποσειδῶν"]]

    expected_headers = ["\x1b[91;01mh1\x1b[39;00m", "\x1b[91;01mh2\x1b[39;00m"]
    expected_data = [
        [
            "\x1b[38;5;233;48;5;7m观音\x1b[39;49m\n\x1b[38;5;233;48;5;7m"
            "Line2\x1b[39;49m",
            "\x1b[38;5;233;48;5;7mΠοσειδῶν\x1b[39;49m",
        ]
    ]
    results = style_output(data, headers, style=CliStyle)

    assert (expected_data, expected_headers) == (list(results[0]), results[1])
Exemple #5
0
def test_style_output_no_pygments():
    """Test that *style_output()* does not try to style without Pygments."""
    headers = ["h1", "h2"]
    data = [["1", "2"], ["a", "b"]]
    results = style_output(data, headers)

    assert (data, headers) == (list(results[0]), results[1])
Exemple #6
0
def test_style_output():
    """Test that *style_output()* styles output."""

    class CliStyle(Style):
        default_style = ""
        styles = {
            Token.Output.Header: 'bold #ansired',
            Token.Output.OddRow: 'bg:#eee #111',
            Token.Output.EvenRow: '#0f0'
        }
    headers = ['h1', 'h2']
    data = [['观音', '2'], ['Ποσειδῶν', 'b']]

    expected_headers = ['\x1b[31;01mh1\x1b[39;00m', '\x1b[31;01mh2\x1b[39;00m']
    expected_data = [['\x1b[38;5;233;48;5;7m观音\x1b[39;49m',
                      '\x1b[38;5;233;48;5;7m2\x1b[39;49m'],
                     ['\x1b[38;5;10mΠοσειδῶν\x1b[39m', '\x1b[38;5;10mb\x1b[39m']]
    results = style_output(data, headers, style=CliStyle)

    assert (expected_data, expected_headers) == (list(results[0]), results[1])
Exemple #7
0
def test_style_output_with_newlines():
    """Test that *style_output()* styles output with newlines in it."""
    class CliStyle(Style):
        default_style = ""
        styles = {
            Token.Output.Header: 'bold ansibrightred',
            Token.Output.OddRow: 'bg:#eee #111',
            Token.Output.EvenRow: '#0f0'
        }

    headers = ['h1', 'h2']
    data = [['观音\nLine2', 'Ποσειδῶν']]

    expected_headers = ['\x1b[91;01mh1\x1b[39;00m', '\x1b[91;01mh2\x1b[39;00m']
    expected_data = [[
        '\x1b[38;5;233;48;5;7m观音\x1b[39;49m\n\x1b[38;5;233;48;5;7m'
        'Line2\x1b[39;49m', '\x1b[38;5;233;48;5;7mΠοσειδῶν\x1b[39;49m'
    ]]
    results = style_output(data, headers, style=CliStyle)

    assert (expected_data, expected_headers) == (list(results[0]), results[1])
Exemple #8
0
def test_style_output_no_styles():
    """Test that *style_output()* does not style without styles."""
    headers = ['h1', 'h2']
    data = [['1', '2'], ['a', 'b']]

    assert (data, headers) == style_output(data, headers)