def test_type_checker__custom_types(self): Cls = type('Cls', (object,), {}) is_Cls = Field.type_checker(Cls) self.assertTrue(is_Cls(Cls())) self.assertFalse(is_Cls(1)) Cls2 = type('Cls2', (Cls,), {}) is_Cls2 = Field.type_checker(Cls) self.assertTrue(is_Cls2(Cls2())) self.assertTrue(is_Cls2(Cls())) self.assertFalse(is_Cls2(1))
def test_type_checker__subclass(self): is_str = Field.type_checker(str) self.assertFalse(is_str(u'sample')) is_basestr = Field.type_checker(basestring) self.assertTrue(is_basestr(u'sample'))
def test_type_checker(self): is_int = Field.type_checker(int) self.assertTrue(is_int(1), 'int type checker fails') self.assertTrue(is_int(1), 'getting another int type checker fails')