我最近开始学习TestObserver的Mockito,以测试RxJava。但是当我为此登录方法编写测试时,遇到了一些问题:
我尝试使用@sky初始化LoginViewModel,但是它的晚饭类是AndroidViewModel。我不能初始化它。 如果您有任何理想或重要的工作,我将非常感激。预先谢谢你
if (!validate()) {// private method
return;
}
subscribe(
repository.login(username, password)
.observeOn(AndroidSchedulers.mainThread())
.doOnSubscribe(disposable -> getLoadingLiveData().postValue(true))
.doAfterTerminate(() -> getLoadingLiveData().postValue(false))
.subscribe(response -> {
if (response.isSuccess()) {
if (mOrganizationId > 0) { // class variable
//do st
}
String latestVersion = response.getVersion();
String currentVersion = Utils.getVersion();
if (response.isForceUpdate() && !TextUtils.equals(latestVersion, currentVersion)) {
//Notify via Eventbus
return;
}
if (!TextUtils.isEmpty(mToken) && response.getUserId() == mUserId) {
confirmMail(mToken);
} else {
// success
}
} else {
/error
}
}, this::handleError)
);
}