Ошибка типа: не удается прочитать свойство 'subroute' из неопределенного в JEST и ферментном тестировании - PullRequest
0 голосов
/ 20 декабря 2018

Я использую библиотеку шутов и энзимов для тестирования реакции с шаблоном создания-реакции-приложения .

С запуском комплекта и теста я вхожу вВыше ошибка .. Не удалось найти решение.Дайте мне знать, если какое-либо решение.

TypeError: Cannot read property 'subroute' of undefined

1 Ответ

0 голосов
/ 31 декабря 2018

Да, я рендерил connected component с передачей реквизита в него.

Таким образом, для этой цели нам нужно передать элемент store в Provider и смонтировать в него компонент.

Итак, все, что нам нужно понять, это:

Маунт : он будет визуализировать глубокий элемент реквизита и компонентасвязанный с ним.

Мелкий : он будет визуализировать первый компонент верхнего слоя, не переходя к глубокому связанному компоненту, как я делал это ранее с мелким.

Вот код и полное решение:

import { mountWrap } from '../contextWrap'
import { Provider } from 'react-redux'
import sinon from 'sinon'
import Login from '../components/Login/'
// import makeStore from '../redux/createStore'

import React from 'react'
import configureMockStore from 'redux-mock-store'
import thunk from 'redux-thunk'

const mockStore = configureMockStore([ thunk ])
const authDetails = {
  'authDetails' : {
    Terms :''
  }
}

const match = {
  params : {}
}
let actionSpy = sinon.spy()
let actionHistorySpy = sinon.stub({})
let authDetails_ = sinon.stub(authDetails)
let store
let component
/* eslint-disable */
describe('tests for MyContainerComponent', () => {
  beforeEach(() => {
    store = mockStore(authDetails)
    component = mountWrap(<Provider store={ store }>
      <Login history={actionHistorySpy} match={match} setGlobalLoaderStatus= {actionSpy} userDetail={authDetails_} />
     </Provider>)
  })

  it('renders container', () => {
    console.log(component.debug())
  })
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...