J'ai été à la recherche à la Moq documentation et les commentaires sont trop courtes pour moi de comprendre chacune des choses qu'il peut faire.
La première chose que je ne comprends pas est - It.IsAny<string>(). //example using string
Est-il un avantage de l'utilisation de ce plus juste de mettre un peu de valeur? Je sais que les gens disent à utiliser si vous n'avez pas de soins sur la valeur, mais si vous n'avez pas de soins sur la valeur que tu ne peux pas faire "un" ou quelque chose? Cela ressemble plus à taper.
Deuxièmement, quand il serait un exemple de quand vous ne se soucient pas de la valeur? J'ai pensé Moq besoins de la valeur à respecter les trucs.
Je ne comprends pas ce qu' It.Is<>
est pour tous ou comment l'utiliser. Je ne comprends pas l'exemple et il essaie de montrer.
Ensuite, je ne comprends pas quand utiliser Times
(et de ses AtMost
méthodes et similaires). Pourquoi vous limitez le nombre de fois que quelque chose est mis en place? J'ai quelques AppConfig
de la valeur que je dois utiliser deux fois. Pourquoi voudrais-je à ce limiter à, disons, une fois? Ce serait tout simplement faire le test échoue. Est-ce pour empêcher d'autres personnes de l'ajout d'une autre de votre code ou quelque chose?
Je ne comprends pas comment utiliser mock.SetupAllProperties();
Que faut-il configurer les propriétés avec?
Je ne suis pas aussi pourquoi il y a tellement de façons différentes de mettre en place une propriété et quelles sont leurs différences. La documentation a:
SetupGet(of property)
SetupGet<TProperty>
J'ai remarqué que beaucoup de choses dans Moq montre ()
et <>
- quelle est la différence entre eux et quelles seraient-elles en cours d'utilisation?
Aussi je ne comprends pas pourquoi ils ont SetupGet
. Ne seriez-vous pas utiliser SetupSet
de définir une propriété?
SetupSet
a cinq différentes manières de l'utiliser dans la documentation. Plus un autre qu'on appelait SetupProperty
. Donc je ne comprends pas pourquoi ils sont si nombreux.
Sur une note de côté, je me demande si les variables utilisées dans les lambdas sont indépendants des autres lambdas. E. g.:
mock.setup(m => m.Test);
stop.setup(m => m.Test);
Serait-ce ok ou y aurait-il un conflit entre la variable m
?
Enfin, j'ai été en regardant cette vidéo et je me demandais si il montre Visual Studio. Son Intellisense est différent. Une ampoule s'ouvrira pour lui (je suis heureux mine de ne pas, comme il apporte des souvenirs douloureux de netbeans), et il y a de lignes, allant d'une accolade d'ouverture à l'accolade de fermeture et etc.
Merci :)