Инструктаж шутку по использованию макета - PullRequest
0 голосов
/ 30 октября 2018

У меня есть базовое приложение на основе create-react-app, что означает, что его конфигурация jest также используется по умолчанию. Моя структура папок выглядит следующим образом:

src
└── __mocks__
    └── Item.js
└── __tests__
    └── Item.test.js
    └── List.test.js
└── Item.js
└── List.js

Мой макет довольно прост - я получаю исходный компонент, который обернут в react-dnd контекст:

.. / __ издевается __ / Item.js

import Item from "../Item"

export default Item.DecoratedComponent

В моем Item.test.js , если я импортирую напрямую из папки __mocks__, мои тесты выполняются очень хорошо:

import Item from '../__mocks__/Item'

Однако я бы вместо этого поручил jest использовать смоделированную версию этого модуля, что-то вроде этого:

import Item from '../Item'
jest.mock('../Item')

Причина, по которой я хочу это сделать, заключается в том, что когда я пишу тесты для компонента List, который внутренне отображает несколько компонентов Item, я не буду импортировать компоненты Item непосредственно в List.test.js , но вместо этого я хотел бы также проинструктировать jest использовать смоделированный модуль Item.

Вышеописанное, однако, не работает для меня, то есть в моих тестах, похоже, используется оригинальный компонент Item, хотя есть предположения, что это должно работать .

Что я делаю не так? Как мне указать jest, как правильно использовать макетный экземпляр модуля?

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