Django:由其他函数调用的mock函数

时间:2015-06-02 15:15:58

标签: python django unit-testing mocking python-unittest

想象一下,models.py文件有updatebulk_update方法

...
@staticmethod
def bulk_update(self, ids):
  for id in ids:
    Foo.objects.get(id=id).update()

def update(self):
  pass
...

不要想象我们有tests.py个文件,我们想要mock update方法。问题在于,无论我做什么,mock_update始终会调用原始update而不是模拟的。{/ p>

尝试#1:

# NOT WORKING
@mock.patch('models.Foo.update')
class FooTestCase(TestCase):
  def test_foo(self):
    Foo.bulk_update([1,2,3])

0 个答案:

没有答案