Как обрабатывать контрольные примеры для функции, которая возвращает Promise с разрешением и отклонением в Angular 6 - PullRequest
0 голосов
/ 15 апреля 2019

Я пишу контрольный пример для функции, которая возвращает Promise с разрешением и отклоняет следующим образом:

isAuthSuccess(): Promise<any> {
    const promise = new Promise((resolve, reject) => {
      if (this.userInfo) {
        resolve();
      } else {
        const validUserUrl: string = this.cookieService.get('PPRC_VALID_USER');
        if (validUserUrl) {
          this.authenticateUser(validUserUrl)
            .toPromise()
            .then(
              userInfo => {
                if (userInfo) {
                  this.userInfo = userInfo;
                  this.loadResources(userInfo, resolve);
                } else {
                  reject('500_1');
                }
              },
              error => {
                reject('500_1');
              }
            );
          } else {
            reject('500_1');
          }
      }
    });
    return promise;
  }

Я новичок в написании тестовых случаев для функции, которая обрабатывает обещание. Проверил несколько вариантов, но не получил никакого успеха. Пожалуйста, помогите мне с вышеизложенным обработать тестовые случаи для положительных и отрицательных сценариев.

1 Ответ

0 голосов
/ 15 апреля 2019

Вы пытались передать функцию async ?Простой комбинации async / await ниже может быть достаточно.

it("your test case name", async function() {
  await obj.isAuthSuccess();
  // expect(...).toBe(...);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...