コード例 #1
0
def test_decode_sgr_styles_strike():
    """Strike and its reset are being detected."""
    for code in ['\x1b[9m', '\x1b[29m']:
        colors = chromaterm.decode_sgr(code)
        assert len(colors) == 1

        for color in colors:
            assert color['type'] == 'strike'
            assert color['code'] == code
コード例 #2
0
def test_decode_sgr_styles_underline():
    """Underline and its reset are being detected."""
    for code in ['\x1b[4m', '\x1b[24m']:
        colors = chromaterm.decode_sgr(code)
        assert len(colors) == 1

        for color in colors:
            assert color['type'] == 'underline'
            assert color['code'] == code
コード例 #3
0
def test_decode_sgr_styles_bold():
    """Bold and its reset are being detected."""
    for code in ['\x1b[1m', '\x1b[2m', '\x1b[22m']:
        colors = chromaterm.decode_sgr(code)
        assert len(colors) == 1

        for color in colors:
            assert color['type'] == 'bold'
            assert color['code'] == code
コード例 #4
0
def test_decode_sgr_styles_italic():
    """Italic and its reset are being detected."""
    for code in ['\x1b[3m', '\x1b[23m']:
        colors = chromaterm.decode_sgr(code)
        assert len(colors) == 1

        for color in colors:
            assert color['type'] == 'italic'
            assert color['code'] == code
コード例 #5
0
def test_decode_sgr_styles_blink():
    """Blink and its reset are being detected."""
    for code in ['\x1b[5m', '\x1b[25m']:
        colors = chromaterm.decode_sgr(code)
        assert len(colors) == 1

        for color in colors:
            assert color['type'] == 'blink'
            assert color['code'] == code
コード例 #6
0
def test_decode_sgr_fg():
    """Foreground colors and reset are being detected."""
    for code in ['\x1b[38;5;123m', '\x1b[38;2;1;1;1m', '\x1b[39m']:
        colors = chromaterm.decode_sgr(code)
        assert len(colors) == 1

        for color in colors:
            assert color['type'] == 'fg'
            assert color['code'] == code
コード例 #7
0
def test_decode_sgr_split_compound():
    """Split the a compound SGR into discrete SGR's."""
    colors = chromaterm.decode_sgr('\x1b[1;33;40m')
    codes = ['\x1b[1m', '\x1b[33m', '\x1b[40m']
    types = ['bold', 'fg', 'bg']

    for color, code, name in zip(colors, codes, types):
        assert color['type'] == name
        assert repr(color['code']) == repr(code)
コード例 #8
0
def test_decode_sgr_malformed():
    """Malformed colors."""
    for code in ['\x1b[38;5m', '\x1b[38;2;1;1m', '\x1b[38;5;123;38;2;1;1m']:
        colors = chromaterm.decode_sgr(code)
        assert len(colors) == 1

        for color in colors:
            assert color['type'] is None
            assert color['code'] == code
コード例 #9
0
def test_decode_sgr_complete_reset():
    """Complete reset detection."""
    for code in ['\x1b[00m', '\x1b[0m', '\x1b[m']:
        colors = chromaterm.decode_sgr(code)
        assert len(colors) == 1

        for color in colors:
            assert color['type'] == 'complete_reset'
            assert color['code'] == code