Как использовать jest mockImplemention для модуля экспорта по умолчанию? - PullRequest
0 голосов
/ 22 сентября 2019

Пакеты:

  • "реакция": "16.2.0"
  • "шутка": "22.0.4"

Потому что я быМне нужна другая импровизированная реализация в зависимости от теста, я пытаюсь получить эквивалент

import Component from '../component.js'
jest.mock('../component.js', () => {
  return () => <div>Component</div>
});

, который, если работает, но на этот раз с использованием mockImplementation.

Пройдя через stackoverflow, я попробовал следующие реализациибез успеха:

jest.mock('../component.js')
Component.mockImplementation(() => {
  return {
    render: () => <div>MockComponent</div>
  };
});

или

jest.mock('../component.js', () => jest.fn())
Component.mockImplementation(() => {
  return () => <div>Component</div>
});

или

jest.mock('../component.js')
Component.mockImplementation(() => {
  return () => <div>Component</div>
});

Чего мне не хватает?

1 Ответ

0 голосов
/ 22 сентября 2019

Я бы сказал, что вы должны возвращать только функцию, а не функцию, которая возвращает функцию.Я думаю, что-то вроде этого должно сработать:

jest.mock('../component.js')
Component.mockImplementation(() => <div>Component</div>);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...