2016-04-28 3 views
1

Рассмотрим следующий (очень простой) блок тестовый файл:python mock on method возвращает mock, а не return_value?

import unittest 
from mock import Mock 

class TestMuPE(unittest.TestCase): 

    def test_01(self): 
    mock_buffer = Mock() 
    mock_buffer.frame_count.return_value(42) 
    self.assertEquals(mock_buffer.frame_count(), 42) 

    # => AssertionError: <Mock name='mock.frame_count()' id='4413645520'> != 42 

Я бы ожидать mock_buffer.frame_count() оценить до 42, но вместо этого он возвращает фиктивный объект. Что мне не хватает?

P.S .: Я запускаю Python 2.7.11 с загруженным файлом mock-2.0.0.

ответ

4

Вы можете установить возвращаемое значение с помощью:

mock_buffer.frame_count.return_value = 42 

Вместо:

.
mock_buffer.frame_count.return_value(42) 
+0

[Facepalm] Doh [/ FACEPALM] Спасибо. –