définir les attentes sur moq
-
22-09-2019 - |
Question
J'utilise moq pour tester certains contrôleurs que j'ai. Je ne suis pas en mesure de définir les attentes. Voici le code que j'ai:
var rep = new Mock<IUserRepository>();
rep.Setup(r => r.Save());
Le problème est que ma méthode de Save()
attend un objet User
que je ne peux pas mettre dans l'attente car une instance de celui-ci sera créé par le contrôleur. Est-il possible de mettre en attente sans passer un paramètre spécifique, et juste vérifier si la méthode a été appelée peu importe ce paramètre a été passé?
La solution
Pouvez-vous expliquer ce que vous entendez par « la méthode Save () attend un objet utilisateur »? Est-il attendre comme un paramètre? Si oui, vous pouvez définir que dans la configuration:
rep.Setup(r => r.Save(It.IsAny<SomeObjectType>())
Et ça va prendre dans un objet aussi longtemps que son type est SomeObjectType
.
Si vous vouliez dire quelque chose d'autre, alors s'il vous plaît montrer un exemple de code de ce que le comportement attendu est.