У меня есть класс обслуживания
Service.js
class Service {
}
export default new Service();
И я пытаюсь обеспечить макетную реализацию для этого. Если я использую что-то вроде этого:
jest.mock('./Service', () => { ... my mock stuff });
Он работает отлично, однако я не могу получить доступ к любым переменным, объявленным вне макета, что немного ограничивает, так как я хотел бы перенастроить то, что возвращает mock и т.д.
Я попробовал это (вдохновленный этой другой статьей StackOverflow: Служба, издевавшаяся с причинами Jest " Модуль factory для jest.mock() не имеет права ссылаться на любые out- переменные области видимости ")
import service from './Service';
jest.mock('./Service', () => jest.fn);
service.mockImplementation(() => {
return { ... mock stuff }
);
К сожалению, когда я пытаюсь запустить это, я получаю следующую ошибку:
TypeError: _Service2.default.mockImplementation is not a function