Тест моментального снимка монтирования фермента создает снимок только фиктивных компонентов, а именно: - PullRequest
0 голосов
/ 06 января 2020

Я не уверен, почему, но когда я запускаю энзимное монтирование, я получаю только снимок проверенных компонентов, но НЕ фактический компонент, который я пытаюсь сделать снимок. есть идеи по этому поводу? ниже мой тестовый файл и файл снимка, который создается. Кроме того, тест моментального снимка проходит каким-то образом, даже если компонент, импортируемый для создания моментального снимка, действительно отображается

Вот мой тест:

import { shallow, configure, mount } from 'enzyme'
import Adapter from 'enzyme-adapter-react-16'
import Request from '../pages/Request'
import RequestForm from 'components/Forms/RequestGeneral/RequestGeneral.js'
import get from 'lodash/get'
import renderer from 'react-test-renderer'
import { ThemeProvider as MuiThemeProvider } from '@material-ui/core/styles'
import { MockedProvider } from '@apollo/react-testing'
import { GET_REVIEW_BOARD_SERVICES } from 'lib/queries'
import { createSerializer } from 'enzyme-to-json'
import { GET_REQUEST_GENERAL } from 'lib/queries'
import toJson from 'enzyme-to-json'
import mediaQuery from 'css-mediaquery'
import MediaQuery from 'react-responsive'
import wait from 'waait'
import 'regenerator-runtime/runtime'

expect.addSnapshotSerializer(createSerializer({ mode: 'deep' }))
configure({ adapter: new Adapter() })

const initTest = width => {
 Object.defineProperty(window, 'innerWidth', {
   writable: true,
   configurable: true,
   value: width
 })
 window.matchMedia = jest.fn().mockImplementation(query => {
   return {
     matches: width >= theme.breakpoints.values.sm ? true : false,
     media: query,
     onchange: null,
     addListener: jest.fn(),
     removeListener: jest.fn()
   }
 })
 const height = Math.round((width * 9) / 16)
 return { width, height }
}

console.error = jest.fn()

describe('Request General', () => {
 window.testMediaQueryValues = { width: 740 }
 it('renders REQUEST page without error', function() {
   const wrapper = mount(
     <MockedProvider mocks={mocks} addTypename={false}>
       <MuiThemeProvider
         theme={{
           spacing: info => {
             return info
           },
           breakpoints: {
             up: info => {
               return info
             },
             down: info => {
               return info
             }
           },
           palette: {
             primary: { dark: '#181818' },
             secondary: { dark: '#181818' },
             background: { default: '#181818' }
           },
           xs: '4'
         }}
       >
         <MediaQuery maxWidth={457} values={window.testMediaQueryValues}>
           <Request router={router} />
         </MediaQuery>
       </MuiThemeProvider>
     </MockedProvider>
   )

   expect(wrapper.debug()).toMatchSnapshot()
 }) 

       and here is the snapshot i get back:::::`


```exports[`Request General renders REQUEST page without error 1`] = `
"<MockedProvider mocks={{...}} addTypename={false}>
 <ApolloProvider client={{...}}>
   <ThemeProvider theme={{...}}>
     <MediaQuery maxWidth={457} values={{...}} />
   </ThemeProvider>
 </ApolloProvider>
</MockedProvider>"
`; ```
...