Я сделал простой тестовый класс, чтобы упростить мою актуальную задачу:
открытый класс BidonTest {
@Mocked
IBidon ibidon;
@Mocked
IBidon ibidon2;
@Mocked
Bidon bidon;
@Mocked
Bidon bidon2;
@Test
public void testBidon(){
new NonStrictExpectations(2, Bidon.class){
{
ibidon.doIt(); result = "i: coco";
ibidon2.doIt(); result = "i: ismael et jordan";
bidon.doIt(); result = "c: coco";
bidon2.doIt(); result = "c: ismael et jordan";
}
};
System.out.println(ibidon.doIt());
System.out.println(ibidon2.doIt());
System.out.println(bidon.doIt());
System.out.println(bidon2.doIt());
}
public interface IBidon{
public String doIt();
}
public class Bidon implements IBidon{
@Override
public String doIt(){
return "toto";
}
}
}
Ниже результат теста:
i: coco
i: coco
c: coco
c: ismael et jordan
Мой первый вопрос: почему ibidon2 возвращает «кокос»?(даже если у меня мало идей, но, может быть, кто-то здесь является экспертом по JMockit: D) Мой второй вопрос: как я могу изменить его, чтобы он возвращал «ismael et jordan»?