как издеваться над json.parse () в шутливых тестах - PullRequest
0 голосов
/ 09 ноября 2018

В моем коде есть try / catch, и когда код попадает в часть catch, он попадает в JSON.parse ()

catch(err){
    JSON.parse(err.message)
}

код работает, но тесты не пройдены. тест просто утверждает, что что-то происходит в попытке

try {
   popUp.method(mockedUrl)
}

тест только подтверждает, что этот метод был вызван, но он не работает, потому что что-то взрывается на стадии JSON.parse(). просто интересно, как я могу заглушить это, чтобы он знал, что я передал в JSON?

1 Ответ

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

Вы могли бы посмеяться над реализацией JSON.parse

JSON.parse = jest.fn().mockImplementationOnce(() => {
  // return your what your code is returning.
});

Этого должно быть достаточно, если вам не нужно тестировать встроенный объект javascript: JSON. поэтому вы возвращаете то, что ожидает от него ваш код, а остальное должно быть в порядке.

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