예제 #1
0
 def test_is_active_should_allow_floats(self):
     condition = Range()
     assert not condition.is_active('1-2', 0.0)
     assert not condition.is_active('1-2', 0.9)
     assert condition.is_active('1-2', 1.0)
     assert condition.is_active('1-2', 1.5)
     assert condition.is_active('1-2', 2.0)
     assert not condition.is_active('1-2', 2.1)
     assert not condition.is_active('1-2', 2.01)
     assert not condition.is_active('1-2', 2.001)
     assert not condition.is_active('1-2', 3.0)
     assert not condition.is_active('1-2', 9e9)
예제 #2
0
 def test_is_active_should_allow_floats(self):
     condition = Range()
     assert not condition.is_active('1-2', 0.0)
     assert not condition.is_active('1-2', 0.9)
     assert condition.is_active('1-2', 1.0)
     assert condition.is_active('1-2', 1.5)
     assert condition.is_active('1-2', 2.0)
     assert not condition.is_active('1-2', 2.1)
     assert not condition.is_active('1-2', 2.01)
     assert not condition.is_active('1-2', 2.001)
     assert not condition.is_active('1-2', 3.0)
     assert not condition.is_active('1-2', 9e9)
예제 #3
0
 def test_clean_fail_no_numbers(self):
     condition = Range()
     with pytest.raises(ValidationError):
         condition.clean('-')
예제 #4
0
 def test_clean_fail_no_dash(self):
     condition = Range()
     with pytest.raises(ValidationError):
         condition.clean('1')
예제 #5
0
 def test_clean_fail_empty(self):
     condition = Range()
     with pytest.raises(ValidationError):
         condition.clean('')
예제 #6
0
 def test_clean_success(self):
     condition = Range()
     assert condition.clean('1-2') == '1-2'
예제 #7
0
 def test_is_active_shouldnt_allow_strings(self):
     condition = Range()
     assert not condition.is_active('1-2', '0')
     assert not condition.is_active('1-2', '1')
     assert not condition.is_active('1-2', '2')
     assert not condition.is_active('1-2', '3')
예제 #8
0
 def test_clean_fail_too_many_numbers(self):
     condition = Range()
     with pytest.raises(ValidationError):
         condition.clean('1-2-3')
예제 #9
0
 def test_clean_fail_no_dash(self):
     condition = Range()
     with pytest.raises(ValidationError):
         condition.clean('1')
예제 #10
0
 def test_clean_fail_no_numbers(self):
     condition = Range()
     with pytest.raises(ValidationError):
         condition.clean('-')
예제 #11
0
 def test_clean_fail_empty(self):
     condition = Range()
     with pytest.raises(ValidationError):
         condition.clean('')
예제 #12
0
 def test_clean_success(self):
     condition = Range()
     assert condition.clean('1-2') == '1-2'
예제 #13
0
 def test_is_active_shouldnt_allow_strings(self):
     condition = Range()
     assert not condition.is_active('1-2', '0')
     assert not condition.is_active('1-2', '1')
     assert not condition.is_active('1-2', '2')
     assert not condition.is_active('1-2', '3')
예제 #14
0
 def test_clean_fail_too_many_numbers(self):
     condition = Range()
     with pytest.raises(ValidationError):
         condition.clean('1-2-3')
예제 #15
0
 def test_is_active(self):
     condition = Range()
     assert not condition.is_active('1-2', 0)
     assert condition.is_active('1-2', 1)
     assert condition.is_active('1-2', 2)
     assert not condition.is_active('1-2', 3)
예제 #16
0
class NumberConditionSet(ConditionSet):
    in_range = Range()

    def get_field_value(self, instance, field_name):
        if field_name == 'in_range':
            return instance
예제 #17
0
 def test_is_active(self):
     condition = Range()
     assert not condition.is_active('1-2', 0)
     assert condition.is_active('1-2', 1)
     assert condition.is_active('1-2', 2)
     assert not condition.is_active('1-2', 3)