Новичок в rxjs и angular, пытаясь написать несколько базовых модульных тестов для простого rxjs, наблюдаемого со сценарием успеха / ошибки:
Метод обслуживания:
export class MyService {
constructor(private http: HttpClient) {}
public getId(id) {
return this.http.get('www.myurl.com/' + id, {
withCredential: true,
responseType: 'json' as 'json'
})
.pipe(
map(response => {
return response;
}),
catchError(() => {
return 'Service returned error';
})
};
}
}
Тест:
it('should throw an error',() => {
spyOn(httpClientMock, 'get').and.returnValue(Observable.throw('error));
myService.getId('test1')
.subscribe(
() => {},
error => {
expect(error).toEqual('Service returned error');
}
};
});
Вышеописанное проходит, однако, если я изменяю оператор ожидания на:
expect(error).toEqual('Service returned erro');
Модульный тест все еще проходит.
Если я выхожу из системы, я вижу:
S
e
r
v
i
c
e
r
e
t
u
r
n
e
d
e
r
r
o
r