Maison >Java >javaDidacticiel >Comment renvoyer les arguments des méthodes simulées en Java ?
Renvoi d'arguments transmis à partir de méthodes simulées
Dans certains scénarios, il peut être souhaitable qu'une méthode simulée renvoie le même argument qui a été transmis à cela. Mockito, un framework moqueur bien connu pour Java, propose différentes approches pour obtenir ce comportement :
Mockito 1.9.5 avec Java 8
En utilisant des expressions lambda, vous pouvez définissez maintenant succinctement le comportement :
<code class="java">when(myMock.myFunction(anyString())).thenAnswer(i -> i.getArguments()[0]);</code>
Anciennes versions de Mockito
Alternativement, pour les anciennes versions de Mockito, vous pouvez créer une réponse personnalisée :
<code class="java">when(mock.myFunction(anyString())).thenAnswer(new Answer<String>() { @Override public String answer(InvocationOnMock invocation) throws Throwable { Object[] args = invocation.getArguments(); return (String) args[0]; } });</code>
Cette implémentation de Answer récupère le premier argument de l'invocation et le renvoie, renvoyant effectivement la même chaîne qui a été transmise à la méthode simulée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!