0
我試圖使用到的Mockito執行單元測試,但測試失敗我正在此:的Mockito:java.lang.ClassCastException:java.lang.Boolean中不能轉換到DataListListener
的java .lang.ClassCastException:java.lang.Boolean的不能轉換到 OnDataListListener
在這裏這條線:mPresenter.getUsers(isLoad, forceUpdate);
測試:
doAnswer(answerVoid(
(OnDataListListener<List<User>> myCallback) -> myCallback.onSuccess(mList))).when(
dataInteractor).getUsers(anyBoolean(), any(DataListener.class));
mPresenter.getUsers(isLoad, forceUpdate);
演示
@Override public void getUsers(boolean isLoad, boolean update) {
this.isLoad = isLoad;
this.forceUpdate = update;
dataInteractor.performgetUsers(update, this);//this refer to the listener
}
DataInteractor:
public void performGetGetUsers(boolean update, OnDataListListener callback) {
mDataHandler.getUsers(update, new Observer<List<User>>() {
....
的偵聽器接口:
public interface DataListener<T> {
void onSuccess(T data);
void onFailure(Throwable e);
}
'.getUsers(anyBoolean(),任(DataListener.class))'大概應該是'.getUsers(anyBoolean(),anyBoolean())' – 2017-06-12 13:09:21
你能發佈'DataInteractor#getUsers()'的簽名? – azizbekian
更多代碼 –