Форум сайта python.su
Продолжаю разбираться с этой бедой, и вот, что имею (Python 2.7):
1)
from mock import Mock, patch, create_autospec class A(object): def func1(self, arg): return arg class B(object): def func1(self, arg): a = A() return "=== %s ===" % a.func1(arg) b = B() print b.func1("hello") # === hello === mocked_A = create_autospec(A) ma = mocked_A() print ma.func1("hello") # <MagicMock bla-bla-bla'> ma.func1.return_value = "world" print ma.func1("hello") # world globals()['A'] = mocked_A b = B() print b.func1("hello") # === world ===
=== hello === <MagicMock name='mock().func1()' id='3070641676'> world === world ===
ma.func1.return_value = "world"
mocked_A.func1.return_value = "world"
from mock import Mock, patch, create_autospec class A(object): def func1(self, arg): return arg class B(object): def func1(self, arg): a = A() return "=== %s ===" % a.func1(arg) b = B() print b.func1("hello") # === hello === mocked_A = create_autospec(A) ma = mocked_A() print ma.func1("hello") # <MagicMock bla-bla-bla'> mocked_A.func1.return_value = "world" print ma.func1("hello") # world globals()['A'] = mocked_A b = B() print b.func1("hello") # === world ===
=== hello === <MagicMock name='mock().func1()' id='3070903788'> <MagicMock name='mock().func1()' id='3070903788'> === <MagicMock name='mock().func1()' id='3070903788'> ===
Отредактировано Master_Sergius (Дек. 23, 2015 23:49:43)
Офлайн