Beispiel #1
0
 def test_int_floor_div_in_range(self):
     low, high, val = (0, 10, 8)
     y = 2
     IntSubrange = subrange(int, low, high)
     x = IntSubrange(val)
     z = x // y
     assert z == val // y
     assert type(z) == IntSubrange
Beispiel #2
0
 def test_int_mul_out_of_range_raises(self, data):
     low, high, val = data.draw(int_lhv())
     y = data.draw(
         st.integers().filter(lambda x: val * x < low or high < val * x))
     IntSubrange = subrange(int, low, high)
     x = IntSubrange(val)
     with pytest.raises(Exception):
         x * y
Beispiel #3
0
 def test_int_mul_in_range(self, data):
     low, high, val = data.draw(int_lhv())
     y = data.draw(
         st.integers().filter(lambda x: val * x in range(low, high)))
     IntSubrange = subrange(int, low, high)
     x = IntSubrange(val)
     z = x * y
     assert z == val * y
     assert type(z) == IntSubrange
Beispiel #4
0
 def test_str_add_out_of_range_raises(self, data):
     low, high, val = data.draw(str_lhv())
     # filters lots of examples, hence health check suppression
     t = data.draw(
         st.characters().filter(lambda s: val + s < low or high < val + s))
     StrSubrange = subrange(str, low, high)
     s = StrSubrange(val)
     with pytest.raises(Exception):
         s + t
Beispiel #5
0
 def test_str_add(self, data):
     low, high, val = data.draw(str_lhv())
     t = data.draw(st.characters())
     StrSubrange = subrange(str, low, high)
     s = StrSubrange(val)
     if val + t < low or high < val + t:
         with pytest.raises(Exception):
             s + t
     else:
         z = s + t
         assert z == val + t
         assert type(z) == StrSubrange
Beispiel #6
0
# or just use actual bool types
a_bool = True
another_bool = False


class Weekday(Enum):
    MONDAY = 0
    TUESDAY = 1
    WEDNESDAY = 2
    THURSDAY = 3
    FRIDAY = 4
    SATURDAY = 5
    SUNDAY = 6


Letter = subrange(str, "A", "Z")

Digit = subrange(int, 0, 9)


class Officer(Enum):
    LIEUTENANT = 0
    CAPTAIN = 1
    MAJOR = 2
    LIEUTENANT_COLONEL = 3
    COLONEL = 4
    BRIGADIER = 5
    MAJOR_GENERAL = 6
    LIEUTENANT_GENERAL = 7
    GENERAL = 8
Beispiel #7
0
 def test_int_out_of_range_raises(self, lhv):
     low, high, val = lhv
     IntSubrange = subrange(int, low, high)
     with pytest.raises(ValueError):
         IntSubrange(val)
Beispiel #8
0
 def test_int_in_range(self, lhv):
     low, high, val = lhv
     IntSubrange = subrange(int, low, high)
     x = IntSubrange(val)
     assert x == val
Beispiel #9
0
 def test_str_out_of_range_raises(self, lhv):
     low, high, val = lhv
     StrSubrange = subrange(str, low, high)
     with pytest.raises(ValueError):
         StrSubrange(val)
Beispiel #10
0
 def test_str_in_range(self, lhv):
     low, high, val = lhv
     StrSubrange = subrange(str, low, high)
     c = StrSubrange(val)
     assert c == val