Zombando de uma classe: Mock () ou patch ()?
Estou usandozomba com Python e queria saber qual dessas duas abordagens é melhor (leia-se: mais pythonic
Method one: Crie um objeto simulado e use-o. O código se parece com:
def test_one (self):
mock = Mock()
mock.method.return_value = True
self.sut.something(mock) # This should called mock.method and checks the result.
self.assertTrue(mock.method.called)
Method two: Use o patch para criar uma simulação. O código se parece com:
@patch("MyClass")
def test_two (self, mock):
instance = mock.return_value
instance.method.return_value = True
self.sut.something(instance) # This should called mock.method and checks the result.
self.assertTrue(instance.method.called)
Ambos os métodos fazem a mesma coisa. Não tenho certeza das diferenças.
lguém poderia me esclarece