我有一个用户提交的表单,它在后端有很多处理。在这种处理,我创建了一个词典:单元测试Django BoundField
def function_that_returns_form_data(form, ...):
form_data = {'account' : form['account'], ...}
return form_data
我的单元测试来测试它返回字典中的函数看起来是这样的:除了“帐户”
self.form = PaymentForm(data=...)
returned_dict = function_that_returns_form_data(self.form, ...)
expected_dict = {'account' : self.form['account'], ...}
self.assertEqual(expected_dict, function_returning_form_data)
所有在returned_dict
项目和expected_dict
比赛,这将导致一个错误:
AssertionError: Lists differ: ... First differing element 0: {'account': <django.forms.forms.BoundField object at 0x043E6F50>, ... {'account': <django.forms.forms.BoundField object at 0x043E64B0>, ...
我敢肯定的是,这些对象相同的,我想传递的对象,而不是单独拉出所有的领域。我如何让Django使用正常比较(字段的值)来测试绑定字段,而不是比较内存中对象的位置?