Mais conteúdo relacionado
Django User Group 21.02.2012 - Mock
- 2. Mocking
>>> from mock import Mock
>>> Mock()
<Mock id='4419885840'>
Calling an undefined method on the mock
returns the mock.
- 3. Mocking
>>> m = Mock(return_value='foo')
>>> m()
'foo'
Mocks can have return values.
- 5. Mocking
>>> mock = Mock()
>>> mock.side_effect = Exception('Bam')
>>> mock()
Traceback (most recent call last):
...
Exception: Bam
>>> mock.side_effect = [3, 2, 1]
>>> mock(), mock(), mock()
(3, 2, 1)
Mocks can have side effects.
- 7. Patching
>>> class Class(object):
... def method(self):
... pass
...
>>> with patch('__main__.Class') as M:
... instance = M()
... instance.method.return_value = 'foo'
... assert Class() is instance
... assert Class().method() == 'foo'
...
- 10. mock Library Author
• Michael Foord
• http://www.voidspace.org.uk/python/mock/
index.html
• @voidspace