jeu de se moquer de valeur de retour pour tout entier paramètre d'entrée
when(candidateService.findById(1)).thenReturn(new Candidate());
Je souhaite prolonger ce comportement pour un Entier quelconque(pas nécessairement pour 1)
Si je wrire
when(candidateService.findById( any(Integer.class) )).thenReturn(new Candidate());
J'ai des erreur de compilation
La méthode findById(Entier) dans le type CandidateService n'est pas
applicable pour les arguments (Matcher)
Mise à JOUR
importations:
import static org.junit.Assert.assertEquals;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.anyString;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
import java.util.ArrayList;
import java.util.HashSet;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
Qui
<Object> Objet org.mockito.Les allumettes.() j'utilise
Vraiment? Parce que le code que vous avez posté fonctionne parfaitement bien pour moi. Êtes-vous en mesure de publier l'ensemble de la classe, y compris les déclarations d'importation?
Je suis ajout d'infos à la rubrique
J'ai fait signifie que vous devez poster l'ensemble de la classe, afin que je puisse voir ce que l'erreur a été. Mais jamais l'esprit. Il n'y a pas d'importer ici pour
any
méthode avez-vous de manière statique à l'importation? Le Mockito l'un ou l'Hamcrest? Il doit être le Mockito. Si vous avez utilisé org.hamcrest.Matchers.any
, puis de le modifier pour org.mockito.Matchers.any
.<Object> Objet org.mockito.Les allumettes.() j'utilise
Vraiment? Parce que le code que vous avez posté fonctionne parfaitement bien pour moi. Êtes-vous en mesure de publier l'ensemble de la classe, y compris les déclarations d'importation?
Je suis ajout d'infos à la rubrique
J'ai fait signifie que vous devez poster l'ensemble de la classe, afin que je puisse voir ce que l'erreur a été. Mais jamais l'esprit. Il n'y a pas d'importer ici pour
any
, donc il semble que vous n'êtes PAS vraiment à l'aide de la Mockito. Avez-vous défini des any
quelque part d'autre? Si oui, c'est le problème.OriginalL'auteur | 2013-10-03
Vous devez vous connecter pour publier un commentaire.
Essayer anyInt():
Par exemple, j'ai anyLong() dans mon projet:
EDIT:
Vous devez importer:
Vous avez sauvé ma journée! Je ne sais pas pourquoi mais
Mockito.any<Int>()
causesjava.lang.IllegalStateException: Mockito.any<Int>() must not be null
. Dans le même tempsMockito.anyInt()
ne jette pas des exceptions.OriginalL'auteur Ernestas Kardzys