我真的在寻找如何修补 What.objects.get_or_create,但我无法得到任何建议或想法如何去做。
好吧,我的问题是我有这样的事情:
def create_and_get_object(
name, request, save_url=True, data=None):
try:
(object_type_, created) = Object.objects.get_or_create(
name=name)
try:
...
except Exception:
obj = None
msg = ("Failed to get or create object `Object` with"
"name='%s'" % name)
logger_.exception(msg, extra={'request': request})
return obj
所以,我想测试 Object.objects.get_or_create 在某个时候抛出异常......
我正在尝试,Mock(side_effect=Exception())
但我真的不知道如何使用它来获得我所期望的。
所有这些都是为了获得该功能的 100% 覆盖(不包括异常行),以及许多其他类似的异常。
测试这个的正确方法是什么,以及这样的代码?
我究竟做错了什么?