J'ai ce morceau de code:appel Affirmant avec lambda
from shutil import rmtree
def ook(path):
rmtree(path, onerror=lambda x, y, z: self._logger.warn(z[1]))
Dans mes tests unitaires, je veux moquer vérifier si ce droit path
est passé:
from mock import patch, ANY
@patch("rmtree")
def test_rmtree(self, m_rmtree):
ook('/tmp/fubar')
m_rmtree.assert_called_once_with('/tmp/fubar', onerror=ANY)
Que puis-je remplacer ANY
avec pour vérifier qu'il y a un lambda là-bas?
Je pense qu'il est probablement plus facile d'affirmer qu'il a été appelé du tout, puis d'obtenir les arguments du faux et de les affirmer individuellement. AFAIK 'unittest.mock' n'a rien comme [' jasmine.any'] (http://jasmine.github.io/2.0/introduction.html#section-Matching_Anything_with_
jasmine.any
), par exemple. – jonrsharpe