Nous avons utilisé Mock pour python depuis un moment.
Maintenant, nous avons une situation dans laquelle nous voulons simuler une fonction
def foo(self, my_param):
#do something here, assign something to my_result
return my_result
Normalement, la façon de simuler cela serait (en supposant que foo fasse partie d'un objet)
self.foo = MagicMock(return_value="mocked!")
Même, si j'appelle foo() plusieurs fois, je peux utiliser
self.foo = MagicMock(side_effect=["mocked once", "mocked twice!"])
Maintenant, je suis confronté à une situation dans laquelle je veux retourner une valeur fixe lorsque le paramètre d'entrée a une valeur particulière. Donc si disons que "mon_param" est égal à "quelque chose" alors je veux retourner "mon_froid_mock".
Cela semble être disponible sur mockito pour python
when(dummy).foo("something").thenReturn("my_cool_mock")
J'ai cherché comment réaliser la même chose avec Mock, sans succès ?
Des idées ?