Это моя функция входа в систему:
login(){
let response = this.api.apiPost('auth/login', this.userData)
.then(data => {
console.log(data);
let parsed = JSON.parse(data.toString());
console.log(parsed);
if(parsed.status == 1){
this.token = parsed.token;
this.api.setToken(parsed.token);
let input = {"term": ""};
input.term = this.userData.username;
this.retrieveUserInfo();
this.navCtrl.push(HomePage,{token:this.api.getToken(),appName:this.appName,quotes:this.quotes,picsURL:this.picsURL,uID:this.userData.username,test:this.params.test,code:this.params.code });
var status = true;
return status;
} else if (parsed.status == 0){
var status = false;
return status;
} else {}
});
}
it('test login', () => {
var status = component.login();
expect(status).toBe(true);
});
Проблема в том, что наличие оператора return внутри блока then в функции входа в систему не возвращает изфункция входа.Сама функция входа в систему ничего не возвращает (но возвращает значение true или false в переменную 'response'), поэтому модульный тест завершается неудачно, так как ожидается, что undefined верен.
У меня нет большого опыта работы слибо машинопись или жасмин.Любая помощь будет оценена.