Как заставить MagicMock возвращать несколько значений - PullRequest
0 голосов
/ 15 марта 2019

Я пытаюсь смоделировать библиотеку (matplotlib за то, что она стоит), и сталкиваюсь с проблемой, когда происходит сбой при вызове макета в ожидании возвращения кортежа. Есть ли лучший способ сделать это?

Python 3.7.2 (default, Jan 13 2019, 12:50:15) 
[Clang 10.0.0 (clang-1000.11.45.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import mock
>>> foo = mock.MagicMock()
>>> a, b = foo()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: not enough values to unpack (expected 2, got 0)
>>> 

1 Ответ

0 голосов
/ 15 марта 2019

Вы можете установить атрибут return_value объекта MagicMock с помощью кортежа по вашему выбору:

import mock
foo = mock.MagicMock()
foo.return_value = 1, 2
a, b = foo()
assert a == 1
assert b == 2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...