Тесты Jest проходят, хотя утверждение не проходит - PullRequest
0 голосов
/ 09 октября 2018

Я тестирую асинхронную функцию, используя jest.Код в функции находится в блоке try catch с ошибками, которые перехватываются и обрабатываются, подобно следующему

export default async () => {
    try {
        await promisesAndThat();
    } catch (e) {
        // handle errors
    }
}

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

/home/app # npm test

> node-js-base@1.0.0 test /home/app
> jest

(node:77) UnhandledPromiseRejectionWarning: Error: expect(received).toBe(expected) // Object.is equality

Expected value to be:
"Invalid context"
Received:
"Invalid parameters"
(node:77) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:77) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
PASS  function/handler.test.js
✓ Should return true with valid parameters (8ms)
✓ Should return false with invalid parameters (4ms)

Test Suites: 1 passed, 1 total
Tests:       2 passed, 2 total
Snapshots:   0 total
Time:        1.276s
Ran all test suites.

Кто-нибудь знает, что здесь происходит не так?

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