как проверить, что функция была вызвана во время создания компонента - PullRequest
0 голосов
/ 14 января 2019

У меня есть Component, который во время инициализации отправляет сообщение на сервер для получения некоторой информации (в ngOnInit). Если сервер возвращает ошибку, то должна быть вызвана определенная функция.

ngOnInit(){

this.service.tags$.subscribe((result:Result)=>{
      ...
    },
      (err:Result)=>{
        ...
       this.showDialog(err.additionalInfo,new DialogContext("",""));// I WANT TO TEST THAT THIS FUNCTION IS CALLED IF SERVER RETURNS ERROR
          } 
      });
}

Я хочу протестировать эту функцию, но не могу. Кажется, проблема в том, что it вызывается после создания компонента. Таким образом, слежка за showDialog не будет работать.

    it('should show error if unable to get tags from the server on loading', () => {
        let myComponent = component;
        let service= TestBed.get(MyService);
        spyOn(myComponent,'showDialog');

//this expectation will not workk as the showDialog was called before it was executed  
        expect(newPracticeQuestionComponent.showDialog).toHaveBeenCalled();

      });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...