import React from 'react'; import { shallow } from 'enzyme'; jest.mock('./img/git.png', () => ''); describe(' component', () => { beforeEach(() => { jest.resetModules(); }); test('should render the component in default state', () => { const packageMeta = { latest: { repository: { type: 'git', url: 'git+https://github.com/verdaccio/ui.git', }, }, }; jest.doMock('../../pages/version/Version', () => ({ DetailContextConsumer: component => { return component.children({ packageMeta }); }, })); const Repository = require('./Repository').default; const wrapper = shallow(); expect(wrapper.html()).toMatchSnapshot(); }); test('should render the component in with no repository data', () => { const packageMeta = { latest: {}, }; jest.doMock('../../pages/version/Version', () => ({ DetailContextConsumer: component => { return component.children({ packageMeta }); }, })); const Repository = require('./Repository').default; const wrapper = shallow(); expect(wrapper.html()).toEqual(''); }); test('should render the component in with invalid url', () => { const packageMeta = { latest: { repository: { type: 'git', url: 'git://github.com/verdaccio/ui.git', }, }, }; jest.doMock('../../pages/version/Version', () => ({ DetailContextConsumer: component => { return component.children({ packageMeta }); }, })); const Repository = require('./Repository').default; const wrapper = shallow(); expect(wrapper.html()).toEqual(''); }); });