Утверждают, что «ожидаемо» называется X Times in Jest - PullRequest
0 голосов
/ 17 марта 2020

Как я могу не пройти тест, если expect вообще не вызывался? Или даже лучше, когда он не был назван X раз?

Например:

it('should fail', () => {
    if (1 === 2) {
        expect(1).toEqual(1)
    }
}

Другими словами, что эквивалентно ava - t.plan в Jest

1 Ответ

1 голос
/ 17 марта 2020

Вы можете использовать expect.hasAssertions(), чтобы убедиться, что было выполнено утверждение:

it('made an assertion', () => {
    expect.hasAssertions();
    if (1 === 2) {
        expect(1).toEqual(1)
    }
}

В этом случае тест не пройден, поскольку expect никогда не вызывается.

Вы также можете использовать expect.assertions(...), чтобы убедиться, что в вашем тесте было сделано указанное c количество утверждений. Этот тест пройдет:

it('made 2 assertions', () => {
    expect.assertions(2);
    expect(1).toEqual(1);
    expect(2).toEqual(2);
}

См. Документацию Jest по expect для получения дополнительной информации.

...