def test_load_func_passed_is_load_only(self): def func(value, context): pass field = fields.Function(load_func=func) self.assertEqual(field.dump_only, False) self.assertEqual(field.load_only, True)
def test_func_with_wrong_parameters(self): def func(value): pass field = fields.Function(dump_func=func, load_func=func) self._dump_raises( field, 'value', 'func() takes 1 positional argument but 2 were given') self._load_raises( field, 'value', 'func() takes 1 positional argument but 2 were given')
def test_load_func(self): def load_func(value, context): return value field = fields.Function(load_func=load_func) self._load_equal(field, 'value', 'value')
def test_without_func(self): field = fields.Function() self._load_equal(field, 'value', missing) self._dump_equal(field, 'value', missing)
def test_dump_func(self): def dump_func(value, context): return value field = fields.Function(dump_func=dump_func) self._dump_equal(field, 'value', 'value')