Возврат Обещания из «описать» не поддерживается. Тесты должны быть определены синхронно - PullRequest
2 голосов
/ 18 июня 2019

Конкретный тест пройден, но я получаю это.

    console.log node_modules/jest-jasmine2/build/jasmine/Env.js:502
          ● 

Test suite failed to run

            Returning a Promise from "describe" is not supported. Tests must be defined synchronously.
            Returning a value from "describe" will fail the test in a future version of Jest.

        > 4 | describe('handlers.getSemesters', async () => {

Вот полный тестовый код

describe('handlers.getSemesters', async () => {
      it('should return an array of Semesters', async () => {
        academicCalendarRequest.request = jest.fn();
        academicCalendarRequest.request.mockReturnValue([
          {
            description: 'Semester1',
          }
        ]);
        const expected = [      
          {
            description: 'Semester1',
          },
        ];

        const handlers = new Handlers();
        const actual = await handlers.getSemesters();
        expect(actual).toEqual(expected);
      });
    });

Как я могу это исправить?

Ответы [ 2 ]

2 голосов
/ 18 июня 2019

Изменить

describe('handlers.getSemesters', async () => {

На

describe('handlers.getSemesters', () => {
0 голосов
/ 11 июля 2019

Асинхронные функции являются синтаксическим сахаром для возвращаемых цепочек обещаний, а блоки описания Mocha не поддерживают (как в ожидании разрешения) возвращаемые обещания.Неспособность предупредить об этом, возможно, менее полезна, чем могла бы быть, но поведение вполне ожидаемо при нынешнем дизайне.

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