Я пишу тестовый блок и пытаюсь шпионить за сервисной функцией, но застрял с преобразованием массива в наблюдаемый. Я пробовал подобный вопрос о переполнении стека, но ничего не получалось. Пожалуйста, помогите, как мне вызвать сервисную функцию
Я работаю над последней версией angular и ngrx
Опции, которые я пробовал
1)
spyOn(service, 'getData').and.returnValue(Observable.of(data));
2) Этот раздел не охватывал часть подписки в компоненте модульного тестирования
spyOn(service, 'getData').and.returnValue(of(data));
весь код: тестовый регистр никогда не вводится, подпишите часть this.dataService.getState ()
// component:
getState(){
this.dataService.getState().subscribe(s => s.forEach(element => {
this.data.push(element.name);
}));
}
//test case
beforeEach(() => {
fixture = TestBed.createComponent(DataComponent);
component = fixture.componentInstance;
service = TestBed.inject(DataService);
fixture.detectChanges();
});
it('should call get data Function', () => {
spyOn(service, 'getData').and.returnValue(of(data));
});