我在测试中使用下面的课程代替了真实的' Requestor
。 (真实的是HTTP。)请注意,此处的方法对于返回类型有void
,但它具有模拟行为;它回调了回调。我希望我能在这里写出对方法的期望,这样我就不需要在计数器等上写JUnit断言了。但我不知道如何;我不知道这可能是@Mock
,因为我没有替换其他一些活动对象,我也看不到如何使用委托来获取返回的函数void
。有办法吗?
private static class TrivialRequestor implements Requestor {
private final boolean error;
private final int returnedQueueDepth;
TrivialRequestor(boolean error, int returnedQueueDepth) {
this.error = error;
this.returnedQueueDepth = returnedQueueDepth;
}
@Override
public void dispatch(Ticket ticket, FutureCallback<RequestorResult> callback) {
if (error) {
callback.onFailure(new Exception("You asked for it"));
} else {
callback.onSuccess(new RequestorResult(ticket, returnedQueueDepth));
}
}
}