Макет объекта в методе, который не является параметром в Python - PullRequest
1 голос
/ 21 июля 2011

(я новичок в Python)

Я смотрел на: Разметка объектов и методов

И мне было интересно, смогу ли я заменить объект вметод python, который не передается в качестве параметра, скажем, мой метод выглядит следующим образом:

def mypymethod(param1)
  myresult = os.path.something
  return myresult

и я хочу проверить mypymethod, однако я хочу, чтобы os.path в этом случае возвратил "yourmockresult"" когда я вызываю его из моего метода теста

в любом случае я могу это сделать?спасибо !!

1 Ответ

1 голос
/ 21 июля 2011

Вы должны использовать для этого же модуль Mock Майкла Фурда.

Из документации:

>>> from mock import Mock
>>> real = ProductionClass()
>>> real.method = Mock(return_value=3)
>>> real.method(3, 4, 5, key='value')
3
>>> real.method.assert_called_with(3, 4, 5, key='value')
...