535 votes

MOQ: Valeur de retour transmise à une méthode

J'ai une méthode sur une interface:

 string DoSomething(string whatever);
 

Je veux me moquer de cela avec MOQ, de sorte qu'il renvoie tout ce qui a été passé - quelque chose comme:

 _mock.Setup( theObject => theObject.DoSomething( It.IsAny<string>( ) ) )
   .Returns( [the parameter that was passed] ) ;
 

Des idées?

725voto

mhamrah Points 1240

Vous pouvez utiliser un lambda avec un paramètre d’entrée, comme suit :

Ou un peu plus lisible :

366voto

Steve Points 165

Encore plus utile, si vous avez plusieurs paramètres, vous pouvez accéder tout d’eux avec :

Vous devez toujours faire référence à tous les arguments, pour faire correspondre la signature de la méthode, même si vous allez seulement d’utiliser l’un d'entre eux.

96voto

WDuffy Points 2912

Le générique `` méthode peut gérer cette situation bien

14voto

BenA Points 1342

Vous devriez être capable de faire quelque chose de semblable à ce

-3voto

Praveen Angyan Points 6232
Vous pouvez :

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X