ant-design/components/breadcrumb/__tests__/Breadcrumb.test.js

37 lines
1.0 KiB
JavaScript
Raw Normal View History

import React from 'react';
import { mount, render } from 'enzyme';
import { renderToJson } from 'enzyme-to-json';
import Breadcrumb from '../index';
describe('Breadcrumb', () => {
it('warns on non-Breadcrumb.Item children', () => {
const MyCom = () => <div>foo</div>;
spyOn(console, 'error');
mount(
<Breadcrumb>
<MyCom />
</Breadcrumb>
);
2017-01-27 17:26:52 +08:00
// eslint-disable-next-line
expect(console.error.calls.count()).toBe(1);
2017-01-27 17:26:52 +08:00
// eslint-disable-next-line
expect(console.error.calls.argsFor(0)[0]).toContain(
2017-03-06 11:21:26 +08:00
'Breadcrumb only accepts Breadcrumb.Item as it\'s children'
);
});
// https://github.com/ant-design/ant-design/issues/5015
it('should allow Breadcrumb.Item is null or undefined', () => {
const wrapper = render(
<Breadcrumb>
{null}
<Breadcrumb.Item>Home</Breadcrumb.Item>
{undefined}
</Breadcrumb>
);
// eslint-disable-next-line
expect(console.error.calls).toBe(undefined);
expect(renderToJson(wrapper)).toMatchSnapshot();
});
});