Как макетировать функцию Python внутри другой функции - PullRequest
1 голос
/ 20 апреля 2019

У меня есть следующая функция в script.py:

from mock import patch

def outer():
    def inner():
        # something here
        return 5
    return inner() + 2

print(outer())
# 7

Чтобы проверить функцию outer, я пытаюсь смоделировать функцию inner. Это то, что я до сих пор:

@patch("script.outer.inner")
def test_outer(mock_inner):
    mock_inner.return_value = 10

    result = outer()
    assert result == 12

Но я продолжаю получать AttributeError: <function outer at 0x10d594ae8> does not have the attribute 'inner'. Я что-то не так делаю или это невозможно?

...