У меня проблемы с Python mock(), и я недостаточно знаком, чтобы понять, что с ним происходит.Python mock() не высмеивает возвращаемое значение
У меня есть абстрактный класс асинхронной задачи, которая выглядит примерно так:
class AsyncTask(object):
@classmethod
def enqueue(cls):
....
task_ent = cls.createAsyncTask(body, delayed=will_delay)
....
я хотел бы, чтобы залатать метод createAsyncTask для конкретного экземпляра этого класса.
Код я написал выглядит следующим образом:
@patch.object(CustomAsyncTaskClass, "createAsyncTask")
def test_my_test(self, mock_create_task):
....
mock_create_task.return_value = "12"
fn() # calls CustomAsyncTaskClass.enqueue(...)
....
Когда я распечатать task_ent в Ставить, я получаю <MagicMock name='createAsyncTask()' id='140578431952144'>
Когда я распечатать cls.createAsyncTask
в Ставить, я получаю <MagicMock name='createAsyncTask' id='140578609336400'>
Что я Я делаю неправильно? Почему createAyncTask не возвращает 12?
извед, игнорировать это - у меня были аргументы за то в обратном направлении. Я не могу понять, как удалить вопрос, извините = ( – user358829