J'essaye d'installer un test dans JUnit avec EasyMock et je rencontre un petit problème que je n'arrive pas à comprendre. J'espérais que quelqu'un ici pourrait aider.JUnit Easymock Appel de méthode inattendue
Voici une version simplifiée de la méthode que je suis en train de tester:
public void myMethod() {
//(...)
Obj myObj = this.service.getObj(param);
if (myObj.getExtId() != null) {
OtherObj otherObj = new OtherObj();
otherObj.setId(myObj.getExtId());
this.dao.insert(otherObj);
}
//(...)
}
Ok, donc en utilisant EasyMock j'ai raillé l'appel service.getObj(myObj)
et qui fonctionne bien.
Mon problème survient lorsque JUnit atteint l'appel dao.insert(otherObj
). EasyMock lance un *Unexpected Method Call*
dessus.
Je ne me dérangerait pas que se moquant dao dans mon test et en utilisant expectLastCall().once();
là-dessus, mais cela suppose que j'ai une poignée sur le « otherObj » qui est passé comme paramètre à insérer l'heure ... Ce qui bien sûr, je Ne le faites pas puisque c'est créé conditionnellement dans le contexte de la méthode testée.
Quelqu'un a déjà dû faire face à cela et en quelque sorte résolu?
Merci.
Yep qui a fait l'affaire merci DoctorRuss. :) – Lancelot