def test_get(self): f = Field(name="NAME") def func1(instance, value): return "OTHER" f.getters(func1) instance = Typing2() instance._NAME = 10 self.assertEqual(f.direct_get(instance), 10) self.assertEqual(f.__get__(instance, None), "OTHER") f.default(33) self.assertEqual(instance._NAME, 10) del instance._NAME self.assertEqual(f.__get__(instance, None), "OTHER") self.assertEqual(instance._NAME, 33) f.getters(clear=True) self.assertEqual(f.__get__(instance, None), 33)
def test_getters(self): f = Field(name="NAME") def func1(instance, value): return value def func2(instance, value): return value f.getters(func1) self.assertEqual(f.getters_funcs[0], func1) f.getters(func2) self.assertEqual(f.getters_funcs[0], func2) self.assertEqual(f.getters_funcs[1], func1) f.getters(clear=True) self.assertEqual(len(f.getters_funcs), 0)