Пример #1
0
 def test_role_case(self):
     self.assertEqual(parse_color_setting('ERROR=green'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green'}))
     self.assertEqual(parse_color_setting('eRrOr=green'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green'}))
Пример #2
0
 def test_fg_bg_opts(self):
     self.assertEqual(parse_color_setting('error=green/blue,blink'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green', 'bg':'blue', 'opts': ('blink',)}))
     self.assertEqual(parse_color_setting('error=green/blue,bold,blink'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green', 'bg':'blue', 'opts': ('blink','bold')}))
Пример #3
0
 def test_bad_option(self):
     self.assertEqual(parse_color_setting('error=green,unknown'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green'}))
     self.assertEqual(parse_color_setting('error=green,unknown,blink'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green', 'opts': ('blink',)}))
Пример #4
0
    def test_opts_case(self):
        self.assertEqual(parse_color_setting('error=green,BLINK'),
                          dict(PALETTES[NOCOLOR_PALETTE],
                            ERROR={'fg':'green', 'opts': ('blink',)}))

        self.assertEqual(parse_color_setting('error=green,bLiNk'),
                          dict(PALETTES[NOCOLOR_PALETTE],
                            ERROR={'fg':'green', 'opts': ('blink',)}))
Пример #5
0
 def test_empty_options(self):
     self.assertEqual(parse_color_setting('error=green,'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green'}))
     self.assertEqual(parse_color_setting('error=green,,,'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green'}))
     self.assertEqual(parse_color_setting('error=green,,blink,,'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green', 'opts': ('blink',)}))
Пример #6
0
    def test_color_case(self):
        self.assertEqual(parse_color_setting('error=GREEN'),
                          dict(PALETTES[NOCOLOR_PALETTE],
                            ERROR={'fg':'green'}))
        self.assertEqual(parse_color_setting('error=GREEN/BLUE'),
                          dict(PALETTES[NOCOLOR_PALETTE],
                            ERROR={'fg':'green', 'bg':'blue'}))

        self.assertEqual(parse_color_setting('error=gReEn'),
                          dict(PALETTES[NOCOLOR_PALETTE],
                            ERROR={'fg':'green'}))
        self.assertEqual(parse_color_setting('error=gReEn/bLuE'),
                          dict(PALETTES[NOCOLOR_PALETTE],
                            ERROR={'fg':'green', 'bg':'blue'}))
Пример #7
0
 def test_bad_color(self):
     self.assertEqual(parse_color_setting('error='), None)
     self.assertEqual(parse_color_setting('error=;sql_field=blue'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         SQL_FIELD={'fg':'blue'}))
     self.assertEqual(parse_color_setting('error=unknown'), None)
     self.assertEqual(parse_color_setting('error=unknown;sql_field=blue'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         SQL_FIELD={'fg':'blue'}))
     self.assertEqual(parse_color_setting('error=green/unknown'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green'}))
     self.assertEqual(parse_color_setting('error=green/blue/something'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green', 'bg': 'blue'}))
     self.assertEqual(parse_color_setting('error=green/blue/something,blink'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green', 'bg': 'blue', 'opts': ('blink',)}))
Пример #8
0
def color_style():
    """Returns a Style object with the Django color scheme."""
    if not supports_color():
        style = no_style()
    else:
        DJANGO_COLORS = os.environ.get('DJANGO_COLORS', '')
        color_settings = termcolors.parse_color_setting(DJANGO_COLORS)
        if color_settings:
            class dummy: pass
            style = dummy()
            # The nocolor palette has all available roles.
            # Use that pallete as the basis for populating
            # the palette as defined in the environment.
            for role in termcolors.PALETTES[termcolors.NOCOLOR_PALETTE]:
                format = color_settings.get(role,{})
                setattr(style, role, termcolors.make_style(**format))
            # For backwards compatibility,
            # set style for ERROR_OUTPUT == ERROR
            style.ERROR_OUTPUT = style.ERROR
        else:
            style = no_style()
    return style
Пример #9
0
 def test_bad_role(self):
     self.assertEqual(parse_color_setting('unknown='), None)
     self.assertEqual(parse_color_setting('unknown=green'), None)
     self.assertEqual(parse_color_setting('unknown=green;sql_field=blue'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         SQL_FIELD={'fg':'blue'}))
Пример #10
0
 def test_reverse_override(self):
     self.assertEqual(parse_color_setting('error=green;light'), PALETTES[LIGHT_PALETTE])
Пример #11
0
 def test_simple_palette(self):
     self.assertEqual(parse_color_setting('light'), PALETTES[LIGHT_PALETTE])
     self.assertEqual(parse_color_setting('dark'), PALETTES[DARK_PALETTE])
     self.assertEqual(parse_color_setting('nocolor'), None)
Пример #12
0
 def test_bad_palette(self):
     self.assertEqual(parse_color_setting('unknown'), None)
Пример #13
0
 def test_empty_definition(self):
     self.assertEqual(parse_color_setting(';'), None)
     self.assertEqual(parse_color_setting('light;'), PALETTES[LIGHT_PALETTE])
     self.assertEqual(parse_color_setting(';;;'), None)
Пример #14
0
 def test_fg_bg(self):
     self.assertEqual(parse_color_setting('error=green/blue'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green', 'bg':'blue'}))
Пример #15
0
 def test_override_with_multiple_roles(self):
     self.assertEqual(parse_color_setting('light;error=green;sql_field=blue'),
                       dict(PALETTES[LIGHT_PALETTE],
                         ERROR={'fg':'green'},
                         SQL_FIELD={'fg':'blue'}))
Пример #16
0
 def test_multiple_roles(self):
     self.assertEqual(parse_color_setting('error=green;sql_field=blue'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg':'green'},
                         SQL_FIELD={'fg':'blue'}))
Пример #17
0
 def test_empty_string(self):
     self.assertEqual(parse_color_setting(''), PALETTES[DEFAULT_PALETTE])
Пример #18
0
 def test_override_palette(self):
     self.assertEqual(parse_color_setting('light;error=green'),
                       dict(PALETTES[LIGHT_PALETTE],
                         ERROR={'fg':'green'}))
Пример #19
0
 def test_override_nocolor(self):
     self.assertEqual(parse_color_setting('nocolor;error=green'),
                       dict(PALETTES[NOCOLOR_PALETTE],
                         ERROR={'fg': 'green'}))