import React from 'react';
import { fireEvent } from '@testing-library/react';
import configureMockStore from 'redux-mock-store';
import thunk from 'redux-thunk';
import mockState from '../../../../test/data/mock-state.json';
import { renderWithProvider } from '../../../../test/lib/render-helpers';
import BetaHeader from '.';
const mockHideBetaHeader = jest.fn();
jest.mock('../../../store/actions', () => {
return {
hideBetaHeader: () => {
mockHideBetaHeader();
},
};
});
describe('Beta Header', () => {
let store;
beforeEach(() => {
store = configureMockStore([thunk])(mockState);
});
afterEach(() => {
mockHideBetaHeader.mockClear();
});
it('should match snapshot', () => {
const { container } = renderWithProvider(, store);
expect(container).toMatchSnapshot();
});
describe('Beta Header', () => {
it('gets hidden when close button is clicked', () => {
const { queryByTestId } = renderWithProvider(, store);
const closeButton = queryByTestId('beta-header-close');
fireEvent.click(closeButton);
expect(mockHideBetaHeader).toHaveBeenCalledTimes(1);
});
});
});