【发布时间】:2016-07-20 00:47:57
【问题描述】:
我有一个使用 onSuccess(result) 和 onFail(error) 方法接收侦听器(接口)的方法。
被测试的方法执行一些操作(在另一个线程上)并最终调用监听器并给出答案。
方法本身(不是测试)的示例代码:
testedObject.performAsyncAction("some data", new IListener(){
@Override
public void onSuccess(int result) {
if (result == 1) { /* do something */ }
else if (result == 2) { /* do something else */ }
}
@Override
public void onFailure(Error error) {
if (error.getMessage().equals("some error")) { /* do something */ }
else if (error.getMessage().equals("another error")) { /* do something else */ }
}
});
我想对此方法进行一些测试:
- 调用 onSuccess(1) 时成功
- 调用 onSuccess(2) 时成功
- 调用 onFailure(new Error("some error")) 时成功
- 调用 onFailure(new Error("another error")) 时成功
谢谢!
【问题讨论】:
标签: java android unit-testing asynchronous mocking