Использование патча mock для издевательства над методом экземпляра

Я пытаюсь сымитировать что-то во время тестирования приложения Django, используя образно названную библиотеку тестирования Mock. Я не могу заставить его работать, я пытаюсь сделать следующее:

models.py

from somelib import FooClass

class Promotion(models.Model):
    foo = models.ForeignKey(FooClass)
    def bar(self):
       print "Do something I don't want!"


test.py

class ViewsDoSomething(TestCase):
    view = 'my_app.views.do_something'

    def test_enter_promotion(self):
        @patch.object(my_app.models.FooClass, 'bar')
        def fake_bar(self, mock_my_method):
            print "Do something I want!"
            return True

        self.client.get(reverse(view))

Что я делаю не так?

67
задан kkurian 13 March 2016 в 21:20
поделиться