Невозможно правильно имитировать метод в модуле зависимостей в PythonPython

Программы на Python
Anonymous
Невозможно правильно имитировать метод в модуле зависимостей в Python

Сообщение Anonymous »

Вот структура моего проекта

Код: Выделить всё

|-- project
|-- util.py
|-- main.py
|-- tests
|-- test_main.py
В файле main.py я ссылаюсь на функцию в util.py

Код: Выделить всё

from util import rename

def use_rename():
after_rename = rename("name")
return after_rename
И вот как я реализую функцию переименования в util.py

Код: Выделить всё

def rename(name: str) -> str:
return name
Наконец я проверяю это в файле test_main.py

Код: Выделить всё

import sys
import os
from unittest.mock import patch

sys.path.append(os.path.join(os.path.dirname(__file__), ".."))

from main import use_rename

@patch("util.rename")
def test_use_rename(mock_rename):
mock_rename.return_value = "name2"
assert use_rename() == "name"
Как видите, я пытаюсь имитировать результат, возвращаемый функцией переименования, и предполагаю, что тест должен завершиться неудачно, но это всегда удается. Что-то не так с моим кодом?


Подробнее здесь: https://stackoverflow.com/questions/786 ... -in-python

Вернуться в «Python»