예제 #1
0
    def test_hex_hash_output(self):
        field = ColorCharField(required=False, hash_output=True)
        data = ['#aaaaaa', '#bbbbbb', 'aaaaaa', 'bbbbbb']
        for v in data:
            assert field.clean(v) == (v.upper() if v[0] == '#' else '#' + v.upper())

        field = ColorCharField(required=False, hash_output=False)
        for v in data:
            assert field.clean(v) == (v[1:].upper() if v[0] == '#' else v.upper())
예제 #2
0
    def test_hex(self):
        field = ColorCharField()
        valid_values = ['#aaaaaa', 'aaaaaa']

        for v in valid_values:
            assert field.clean(v) == (v[1:].upper() if v[0] == '#' else v.upper())

        invalid_values = ['aa', '00ff0z']
        for i in invalid_values:
            with pytest.raises(forms.ValidationError):
                field.clean(i)
예제 #3
0
    def test_hex_hash_required(self):
        field = ColorCharField(required=False, hash_required=True)
        valid_values = ['#aaaaaa', '#bbbbbb']
        for v in valid_values:
            assert field.clean(v) == (v[1:].upper() if v[0] == '#' else v.upper())

        invalid_values = ['aaaaaa', 'bbbbbb']
        for i in invalid_values:
            with pytest.raises(forms.ValidationError):
                field.clean(i)

        field = ColorCharField(required=False, hash_required=False)
        data = valid_values + invalid_values
        for v in data:
            assert field.clean(v) == (v[1:].upper() if v[0] == '#' else v.upper())
예제 #4
0
 def test_empty(self):
     field = ColorCharField(required=False)
     data = ['', None]
     for d in data:
         assert field.clean(d) == ''