def test_is_number(self): # ints val = 123 res = Check(val).is_number() self.assertIsInstance(res, Check) # floats val = float(123) res = Check(val).is_number() self.assertIsInstance(res, Check) # complexes val = complex(33.44, 55.66) res = Check(val).is_number() self.assertIsInstance(res, Check) # test failure val = 'not-a-number' self.assertTrue( all([not isinstance(val, kls) for kls in Check.NUMERIC_TYPES])) try: Check(val).is_number() self.fail() except CheckError: pass # this tests are only for Python2 try: val = long('110011010', base=2) # 410L res = Check(val).is_number() self.assertIsInstance(res, Check) except NameError: pass
def test_is_not_number(self): val = 'not-a-number' self.assertTrue(all([not isinstance(val, kls) for kls in Check.NUMERIC_TYPES])) res = Check(val).is_not_number() self.assertIsInstance(res, Check) # test failures # ints val = 123 try: Check(val).is_not_number() self.fail() except CheckError: pass # floats val = float(123) try: Check(val).is_not_number() self.fail() except CheckError: pass # complexes val = complex(33.44, 55.66) try: Check(val).is_not_number() self.fail() except CheckError: pass
def test_is_dict(self): res = Check(dict()).is_dict() self.assertIsInstance(res, Check) try: Check(123).is_dict() self.fail() except CheckError: pass
def test_is_not_zero(self): res = Check(1).is_not_zero() self.assertIsInstance(res, Check) try: Check(0).is_not_zero() self.fail() except CheckError: pass
def test_not_contains_char(self): res = Check("hello world").not_contains_char('z') self.assertIsInstance(res, Check) try: Check("goodbye").not_contains_char('g') self.fail() except CheckError: pass
def test_is_not_between(self): res = Check(5.4).is_not_between(1, 2) self.assertIsInstance(res, Check) try: Check(5.4).is_not_between(5, 6) self.fail() except CheckError: pass
def test_is_boolean(self): res = Check(1 == 2).is_boolean() self.assertIsInstance(res, Check) try: Check(1).is_boolean() self.fail() except CheckError: pass
def test_is_subtype_of_atleast_one_parent(self): res = Check(Child()).is_subtype_of((ParentA, ParentB)) self.assertIsInstance(res, Check) try: Check(Child()).is_not_subtype_of((ParentA, ParentB)) self.fail() except CheckError: pass
def test_is_subtype_of_itself(self): res = Check(Child()).is_subtype_of(Child) self.assertIsInstance(res, Check) try: Check(Child()).is_not_subtype_of(Child) self.fail() except CheckError: pass
def test_is_none(self): res = Check(None).is_none() self.assertIsInstance(res, Check) try: Check(123).is_none() self.fail() except CheckError: pass
def test_is_subtype_of_when_multiple_inheritance(self): res = Check(ChildOfMultipleParents()).is_subtype_of((ParentA, ParentB)) self.assertIsInstance(res, Check) try: Check(ParentA()).is_subtype_of((ChildOfMultipleParents, ParentB)) self.fail() except CheckError: pass
def test_contains_chars_only(self): res = Check("abc").contains_chars_only() self.assertIsInstance(res, Check) try: Check("123").contains_chars_only() self.fail() except CheckError: pass
def test_is_string(self): res = Check("Hello").is_string() self.assertIsInstance(res, Check) try: Check(123).is_string() self.fail() except CheckError: pass
def test_not_contains_numbers(self): res = Check("Hello").not_contains_numbers() self.assertIsInstance(res, Check) try: Check("Hello123").not_contains_numbers() self.fail() except CheckError: pass
def test_is_longer_than(self): res = Check("hello").is_longer_than(2) self.assertIsInstance(res, Check) try: Check("good").is_longer_than(10) self.fail() except CheckError: pass
def test_has_not_length(self): res = Check("hello").has_not_length(2) self.assertIsInstance(res, Check) try: Check("good").has_not_length(4) self.fail() except CheckError: pass
def test_is_subtype_of_when_grandchild_is_subtype_of_parent(self): res = Check(GrandChild()).is_subtype_of(ParentA) self.assertIsInstance(res, Check) try: Check(ParentA()).is_subtype_of(GrandChild) self.fail() except CheckError: pass
def test_is_shorter_than(self): res = Check("hi").is_shorter_than(5) self.assertIsInstance(res, Check) try: Check("goodbye").is_shorter_than(4) self.fail() except CheckError: pass
def test_not_contains_chars(self): res = Check("123").not_contains_chars() self.assertIsInstance(res, Check) try: Check("012t3").not_contains_chars() self.fail() except CheckError: pass
def test_is_not_false(self): res = Check(1 == 1).is_not_false() self.assertIsInstance(res, Check) try: Check(1 == 2).is_not_false() self.fail() except CheckError: pass
def test_contains_spaces(self): res = Check("hello world").contains_spaces() self.assertIsInstance(res, Check) try: Check("goodbye").contains_spaces() self.fail() except CheckError: pass
def test_is_falsy(self): for item in self.falsy_values: res = Check(item).is_falsy() self.assertIsInstance(res, Check) try: Check(not item).is_falsy() self.fail() except CheckError: pass
def test_is_not_float(self): res = Check('test').is_not_float() self.assertIsInstance(res, Check) try: Check(123.9).is_not_float() self.fail() except CheckError: pass
def test_is_integer(self): res = Check(123).is_integer() self.assertIsInstance(res, Check) try: Check(float(123)).is_integer() self.fail() except CheckError: pass
def test_not_intersects(self): s = set([1, 2, 3]) res = Check(s).not_intersects(set([7, 8, 9])) self.assertIsInstance(res, Check) try: Check(s).not_intersects(set([1, 2])) self.fail() except CheckError: pass
def test_is_complex(self): val = complex(1.2, 3.4) res = Check(val).is_complex() self.assertIsInstance(res, Check) try: Check(123).is_complex() self.fail() except CheckError: pass
def test_is_not_superset(self): s = set([1, 2, 3]) res = Check(s).is_not_superset_of(set([1, 2, 3, 4, 5])) self.assertIsInstance(res, Check) try: Check(s).is_not_superset_of(set([1, 2])) self.fail() except CheckError: pass
def test_has_not_keys(self): d = {1: 'one', 2: 'two'} res = Check(d).has_not_keys(3, 4) self.assertIsInstance(res, Check) try: Check(d).has_not_keys(1, 2) self.fail() except CheckError: pass
def test_is_not_complex(self): res = Check('test').is_not_complex() self.assertIsInstance(res, Check) try: val = complex(1.2, 3.4) Check(val).is_not_complex() self.fail() except CheckError: pass
def test_is_at_most(self): res = Check(6.5).is_at_most(7) self.assertIsInstance(res, Check) res = Check(7).is_at_most(7) self.assertIsInstance(res, Check) try: Check(7).is_at_most(3) self.fail() except CheckError: pass