user_of_toster
@user_of_toster

Как мокать \ перезаписывать внутренние зависимости?

Почему expect(a.func2).toBeCalled() выбрасывает ошибку? Т.е, почему метод a.func2 не перезаписывается?
//a.test.js
const a = require('./a');
const b = require('./b');

test('test', () => {
    a.func2 = jest.fn()
    b.func = jest.fn()

   a.func()

   expect(b.func).toBeCalled() // ОК
   expect(a.func2).toBeCalled() // выбрасывает ошибку о том, что a.func2 не было вызвано
})

//a.js
const b = require('./b')

const func = () => [func2(), b.func()]
const func2 = () => 1

module.exports = {
  func
  //пробовал добавлять сюда func2, не помогло
}

//b.js
const func = () => 1

module.exports = {
    func
}
  • Вопрос задан
  • 67 просмотров
Пригласить эксперта
Ответы на вопрос 1
user_of_toster
@user_of_toster Автор вопроса
Решил задачу выносом func2 в c.js, но что-то подсказывает, что это неправильно. Можно ли по-нормальному мокать внутренние зависимости?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы