Django前置和后置信号模拟
由于某些原因,在视图中存在前置和后置信号的阻止Django前置和后置信号模拟,django,django-models,django-signals,python-mock,Django,Django Models,Django Signals,Python Mock,由于某些原因,在视图中存在前置和后置信号的阻止 def view(*args): # disable pre- and post-save signals for MyModel my_model_object.save() # anable pre- and post-save signals for MyModel 我如何模拟django pre_save和post_save信号来检查MyModel是否调用了它们?(没有任何接收者检查它是否未被调用) 我试过这个,但
def view(*args):
# disable pre- and post-save signals for MyModel
my_model_object.save()
# anable pre- and post-save signals for MyModel
我如何模拟django pre_save和post_save信号来检查MyModel是否调用了它们?(没有任何接收者检查它是否未被调用)
我试过这个,但不起作用:
def MyTestCase(TestCase):
def setUp(self):
super(MyTestCase, self).setUp()
self.patcher = patch('django.db.models.signals.pre_save')
self.mocked_pre_save = self.patcher.start()
def test_pre_save_signal_not_sent(self):
self.admin_post(url, post_data)
pre_save_senders_list = [arg[1]['sender'] for arg in mocked_pre_save.send.call_args_list]
self.assertNotIn(MyModel, pre_save_senders_list)
我认为你应该提供实际的测试