UNPKG

@retailmenot/anchor

Version:

A React UI Library by RetailMeNot

37 lines 1.85 kB
// REACT import * as React from 'react'; // VENDOR import * as renderer from 'react-test-renderer'; import { ThemeProvider } from '@xstyled/styled-components'; import { shallow, mount } from 'enzyme'; // COMPONENT import { RootTheme } from '../../theme'; import { ResultsContainer } from './ResultsContainer.component'; import { Item } from '../../List'; describe('Component: ResultsContainer', () => { it('should be defined', () => { const subject = (React.createElement(ThemeProvider, { theme: RootTheme }, React.createElement(ResultsContainer, { term: "a", emitSelectedItem: () => true, emitActiveTerm: () => true, dataSource: [ { value: 1, label: 'Result Item 1' }, { value: 2, label: 'Result Item 2' }, ] }))); const wrapper = mount(subject); const component = shallow(subject); expect(subject).toBeDefined(); expect(wrapper).toBeDefined(); expect(component).toBeDefined(); const tree = renderer.create(subject).toJSON(); expect(tree).toMatchSnapshot(); }); it('should accept a resultTemplate', () => { const CustomResult = ({ index, currentIndex, label }) => (React.createElement(Item, { key: index, active: index === currentIndex }, label)); const subject = (React.createElement(ThemeProvider, { theme: RootTheme }, React.createElement(ResultsContainer, { term: "a", emitSelectedItem: () => true, emitActiveTerm: () => true, dataSource: [ { value: 1, label: 'Result Item 1' }, { value: 2, label: 'Result Item 2' }, ], resultTemplate: CustomResult }))); const tree = renderer.create(subject).toJSON(); expect(tree).toMatchSnapshot(); }); }); //# sourceMappingURL=ResultsContainer.component.spec.js.map