Skip to content
Snippets Groups Projects
Content.spec.tsx 1.07 KiB
Newer Older
  • Learn to ignore specific revisions
  • import { render, screen, waitFor } from '@testing-library/react'
    import React from 'react'
    import { Provider } from 'react-redux'
    import {
      createMockEcolyoStore,
      mockChallengeState,
      mockGlobalState,
    } from 'tests/__mocks__/store'
    import Content from './Content'
    
    window.scrollTo = jest.fn()
    
    const store = createMockEcolyoStore()
    describe('Content component', () => {
      it('should match snapshot', async () => {
        const { container } = render(
          <Provider store={store}>
            <Content>children</Content>
          </Provider>
        )
        await waitFor(() => null, { container })
        expect(container).toMatchSnapshot()
      })
    
      it('should be rendered with feedback modal opened', async () => {
        const store = createMockEcolyoStore({
          global: mockGlobalState,
          challenge: mockChallengeState,
          modal: { isFeedbacksOpen: true },
        })
        const { container } = render(
          <Provider store={store}>
            <Content>children</Content>
          </Provider>
        )
        await waitFor(() => null, { container })
        expect(screen.getByRole('dialog')).toBeInTheDocument()
      })
    })