Я использую fakeAsyn c и отметку в модульном тесте angular, получаю ошибку 2 periodi c timer (s) все еще в очереди - PullRequest
0 голосов
/ 31 марта 2020

я тихий новичок в модульном тестировании в angular, получаю ошибку Periodi c таймер все еще в очереди, пожалуйста, проверьте код ниже, я пробовал discardPeriodicTasks (), у меня не работает

it('navigate to "" redirects you to /orders', fakeAsync(() => {
    tick(15000);
    router.navigate([""]).then(() => {
      expect(location.path()).toBe("/home");
    });
  }));

1 Ответ

0 голосов
/ 31 марта 2020

Пожалуйста, попробуйте вот так. Метод navigate разрешает значение true, если навигация завершается успешно, разрешает false, если навигация завершается неудачей, отклоняет при возникновении ошибки.

it('test', fakeAsync(() => {
    const router = TestBed.get(Router);
    router.navigate(['']).then(stat => {
      expect(stat).toBeTruthy();
    })
    tick(1500)
  }))
...