Ожидайте, что переменная будет нулевой или логической - PullRequest
0 голосов
/ 31 мая 2018

Я разрабатываю некоторые тесты с Jest для бэкенда Node.js, и мне нужно проверить некоторые значения, полученные от третьей стороны.В некоторых случаях эти значения могут принимать значение boolean или null.

. Сейчас я проверяю переменные, которые соответствуют этой ситуации:

expect(`${variable}`).toMatch(/[null|true|false]/);

Есть ли что-нибудь лучше?способ проверить их с помощью встроенных функций Jest?

1 Ответ

0 голосов
/ 31 мая 2018

А как насчет

expect(variable === null || typeof variable === 'boolean').toBeTruthy();

Вы можете использовать wait.extend , чтобы добавить его к встроенным сопоставителям:

expect.extend({
    toBeBooleanOrNull(received) {
        return received === null || typeof received === 'boolean' ? {
            message: () => `expected ${received} to be boolean or null`,
            pass: true
        } : {
            message: () => `expected ${received} to be boolean or null`,
            pass: false
        };
    }
});

И использовать его следующим образом:

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