import React from 'react'; import OpenMap from '../../components/OpenMap'; import { shallow } from '../enzyme'; describe('OpenMap', () => { let params: any, mockedOpen: any, setParam: any; beforeAll(() => { params = { visible: true, ios: [ { label: 'Apple Map', url: 'https://apple.map.univeral/params', }, { label: 'Google Map', scheme: 'googmemap://', url: 'https://google.map.univeral/params', }, { label: 'Yahoo! Map', scheme: 'yjmap://', url: 'https://yahoo.map.universal/params', }, ], successCB: jest.fn(), failCB: jest.fn(), }; mockedOpen = jest.fn(); window.open = mockedOpen; setParam = jest.fn(); }); it('should be defined', () => { expect(OpenMap).toBeDefined(); }); it('should render correctly', () => { const tree = shallow( ); expect(tree).toMatchSnapshot(); }); it('on close button click', () => { const tree = shallow( ); expect(tree.find('Button').at(0).simulate('click')); expect(setParam).toBeCalled(); }); it('on li click', () => { const tree = shallow( ); expect(tree.find('li').at(1).simulate('click')); expect(mockedOpen).toBeCalled(); }); });