Project

General

Profile

Download (1.08 KB) Statistics
| Branch: | Tag: | Revision:
import { shallow } from 'enzyme';
import toJson from 'enzyme-to-json';
import React from 'react';
import componentRegistry from '../../componentRegistry';
import ComponentWrapper from './ComponentWrapper';

jest.mock('../../componentRegistry');

describe('ComponentWrapper', () => {
it('should render core component', () => {
componentRegistry.getComponent = jest.fn(() => ({ type: 'AwesomeComponent' }));

const wrapper = shallow(<ComponentWrapper data={{ component: 'AwesomeComponent' }} />);

expect(toJson(wrapper)).toMatchSnapshot();
});

it('should not render unregistered component', () => {
const render = () => {
componentRegistry.getComponent = jest.fn(() => undefined);
shallow(<ComponentWrapper data={{ component: 'NotAwesomeComponent' }} />);
};

expect(render).toThrow(Error);
});

it('should not render self', () => {
const render = () => {
componentRegistry.getComponent = jest.fn(() => undefined);
shallow(<ComponentWrapper data={{ component: 'ComponentWrapper' }} />);
};

expect(render).toThrow(Error);
});
});
(2-2/2)