Ошибка типа: невозможно прочитать свойство 'DETECTION_MODE' с неопределенным значением - 'response-native-awesome-card-io' - PullRequest
0 голосов
/ 31 декабря 2018

Я использую свой тестовый костюм в этом файле:

import React from 'react'

import { PaymentDetails } from '../../../../app/screens/Account/components'
import { snapshot } from '../../../utils'


describe('PaymentDetails', () => {
  const paymentMethod = {
    accountName: 'Test Account',
    expMonth: 11,
    expYear: 2021,
    number: '4111111111111111',
    type: 'Visa',
    preferred: true,
  }

  test('snapshot = paymentDetails not empty', () => {
    snapshot(shallow(<PaymentDetails navigation={paymentMethod} />))
  })

  test('snapshot = paymentDetails empty', () => {
    snapshot(shallow(<PaymentDetails navigation={{}} />))
  })

Я получаю эту ошибку:

enter image description here

DoМне нужно издеваться над этой библиотекой?Я пробовал это, но не очень помог там.

Ответы [ 2 ]

0 голосов
/ 02 января 2019
jest.mock('react-native-awesome-card-io', () => {
  return {
    CardIOUtilities: {
      preload: jest.fn(() => Promise.resolve('the response')),
    },
  }
})

Это сделало работу за меня.Мне не нужно было сопоставлять модуль.Поэтому, если вы издеваетесь над собственным модулем, обязательно используйте оригинальное имя, например CardIOUtility, а не псевдоним cardIOUtility.

0 голосов
/ 01 января 2019

Добавление файла в moduleNameMapper в package.json исправило это для меня.

"jest": {
  "preset": "react-native",
  "transform": {
    "^.+\\.(js)$": "<rootDir>/node_modules/react-native/jest/preprocessor.js"
  },
  "moduleNameMapper": {
   "react-native-awesome-card-io": "<rootDir>/node_modules/react-native-awesome-card-io/CardIOView.ios.js"
}

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

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