@retailmenot/anchor
Version:
A React UI Library by RetailMeNot
46 lines • 2.49 kB
JavaScript
// VENDOR
import * as React from 'react';
import * as renderer from 'react-test-renderer';
import { shallow, mount } from 'enzyme';
import { ThemeProvider } from '@xstyled/styled-components';
import { RootTheme } from '../theme';
// COMPONENT
import { AutoComplete } from './AutoComplete.component';
describe('Component: AutoComplete', () => {
it('should be defined', () => {
const subject = (React.createElement(ThemeProvider, { theme: RootTheme },
React.createElement(AutoComplete, { placeholder: "Search...", dataSource: [{ value: 1, label: 'Result Item 1' }] })));
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 render with a suffix and prefix', () => {
const subject = (React.createElement(ThemeProvider, { theme: RootTheme },
React.createElement(AutoComplete, { prefix: React.createElement("div", null, "prefix"), suffix: React.createElement("div", null, "suffix"), dataSource: [{ value: 1, label: 'Result Item 1' }] })));
const tree = renderer.create(subject).toJSON();
expect(tree).toMatchSnapshot();
});
it('should render with a shadow', () => {
const subject = (React.createElement(ThemeProvider, { theme: RootTheme },
React.createElement(AutoComplete, { shadow: true, dataSource: [{ value: 1, label: 'Result Item 1' }] })));
const tree = renderer.create(subject).toJSON();
expect(tree).toMatchSnapshot();
});
it('should render without a border', () => {
const subject = (React.createElement(ThemeProvider, { theme: RootTheme },
React.createElement(AutoComplete, { border: false, dataSource: [{ value: 1, label: 'Result Item 1' }] })));
const tree = renderer.create(subject).toJSON();
expect(tree).toMatchSnapshot();
});
it('should pass additional input attributes via inputProps', () => {
const subject = (React.createElement(ThemeProvider, { theme: RootTheme },
React.createElement(AutoComplete, { inputProps: { autoCapitalize: 'false' } })));
const wrapper = mount(subject);
expect(wrapper.find({ autoCapitalize: 'false' })).toBeDefined();
});
});
//# sourceMappingURL=AutoComplete.component.spec.js.map