我正在尝试找到最干净/最快的方法来测试回调(发生在同一线程上)是否被执行,并且仅执行一次。
我的最大努力看起来像这样:
class Called {
boolean value;
}
...
Called called = new Called();
object.execute(new Listener() {
public void onExecuted() {
assertFalse(called.value);
called.value = true;
}
}
assertTrue(called.value);
...
这样就够了吗?
最佳答案
使用mockito :
import org.mockito.Mockito.*;
...
@Test
public void Test {
Listener listener = mock(Listener.class);
object.execute(listener);
verify(listener).onExecuted();
}
关于java - 断言在 JUnit 中调用回调/监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26435207/