Ожидаем. что-нибудь () не работает с ожидаем. - PullRequest
0 голосов
/ 01 февраля 2019

wait.anything () не работает с ожидаемо. ToBe (), но работает с ожидаемо. Экв. ()

test("this will pass", () => {
  expect("red").toEqual(expect.anything());
  expect("red").toBe(expect.anything());
});

оба теста должны пройти, но второй не пройден

1 Ответ

0 голосов
/ 01 февраля 2019

toBe сравнивает значения, используя Object.is (см. описание );
expect.anything() возвращает объект Anything class

Итак, во втором случае вы сравниваете строку с объектом - поэтому она не работает.

toEqual фактически вызывает метод , который подготовлен для работы с объектами matcher (например, экземплярами класса Anything) - он вызывает метод asymmetricMatch matcher *.

в первом случае asymmetricMatch возвращает true, первый тест проходит.

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