আমি নীচে (সরলীকৃত) কোডটি পরীক্ষা করতে মকিতোটি ব্যবহার করতে চাই। আমি জানি না যে কীভাবে মকিতোকে প্রথমবার ব্যর্থ হতে হবে, তারপরে দ্বিতীয়বার সফল হন।
for(int i = 1; i < 3; i++) {
String ret = myMock.doTheCall();
if("Success".equals(ret)) {
log.write("success");
} else if ( i < 3 ) {
log.write("failed, but I'll try again. attempt: " + i);
} else {
throw new FailedThreeTimesException();
}
}
আমি এর সাথে সাফল্য পরীক্ষা সেটআপ করতে পারি:
Mockito.when(myMock).doTheCall().thenReturn("Success");
এবং এর সাথে ব্যর্থতা পরীক্ষা:
Mockito.when(myMock).doTheCall().thenReturn("you failed");
তবে আমি কীভাবে পরীক্ষা করতে পারি যে এটি যদি একবার (বা দুবার) ব্যর্থ হয় তবে সফল হয়, ঠিক আছে?
doThrow(new RuntimeException()).doNothing().when(myMock).doTheCall();