Я пытаюсь написать модульный тест службы Angular, который возвращает Observable
// MainService
export class MainService {
connect(): Observable<IData> {
return this.depService.subscribe().pipe(
map(res => JSON.parse(res.body))
);
}
}
// depService
export class depService {
subscribe(): Observable<string> {
return of(data1, data2, data3).pipe(delay(500));
}
}
Я пытался написать модульный тест, например:
it('Testing Delayed Observable', () => {
const service = TestBed.get(MainService);
service.connect().subscribe(res => {
expect(res).toEqual([data1, data2, data3]);
});
});
Я знаю этоэто неправильно, но тест всегда проходит, потому что я тест завершает работу еще до того, как ожидать логики.Каков наилучший способ проверить службу, которая зависит от другой службы, которая возвращает поток ????