Задать вопрос
@Mutalimov95

Как замокать один из нескольких методов класса?

Есть класс

class A():
    def get_value(self):
        return 'value'

    def abc(self):
        return self.a()

как мне использовать unittest.mock, чтобы метод "get_value", чтобы при:

A().abc()
возвращался mock объект
  • Вопрос задан
  • 859 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Академия Эдюсон
    Python-разработчик + ИИ
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Python-разработчик + ИИ
    8 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@Mutalimov95 Автор вопроса
Решено:

import unittest.mock.patch

with patch.object(A, 'get_value') as mock_get_value:
    mock_get_value.return_value = 'new_value'
    value = A().abc()
    assert value = 'new_value'
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы