jest не удалось найти модуль ускорения при тестировании собственного компонента - PullRequest
0 голосов
/ 06 июня 2018

Я использую исходный код реагирования из git для зависимости от проекта, я помещаю источник RN во внешний каталог (вместо node_modules) и добавляю его в extraNodeModules в rn-cli.js, чтобы упаковщик RN могнайти все источники правильно.но при запуске jest не удалось найти встроенные компоненты RN.

тестовый файл:

import { View } from 'react-native';
import React from 'react';
import mockCamera from '../__mocks__/camera';
import renderer from 'react-test-renderer';
jest.mock('react-native-camera', () => mockCamera);

var TableIDInputer = props => <View />;
test('renders correctly', () => {
    const component = renderer.create(<TableIDInputer />);
    let tree = component.toJSON();

    expect(tree.type).not.toBe('b');
    expect(tree).toMatchSnapshot();
});

результат теста:

● правильно отображает

Cannot find module 'View' from 'react-native-implementation.js'

  146 |   },
  147 |   get View() {
> 148 |     return require('View');
  149 |   },
  150 |   get ViewPagerAndroid() {
  151 |     return require('ViewPagerAndroid');

  at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:169:17)
  at Object.get View [as View] (../../libs/react-native/Libraries/react-native/react-native-implementation.js:148:12)
  at TableIDInputer (__tests__/test-component.js:7:31)
  at mountIndeterminateComponent (node_modules/react-test-renderer/cjs/react-test-renderer.development.js:4137:15)
  at beginWork (node_modules/react-test-renderer/cjs/react-test-renderer.development.js:4541:16)

, поскольку компонент View предоставляется haste module, который был реализован ранее @providesModule, но сегодня кажется, что он заменен новым механизмом, поэтому я сомневаюсь, чтоэто вызвало провал теста ??

env info: jest: ^ 22.4.3 response-native: 2018-5-31 6e359c4589b0627de59332ce56fe28804425a609

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