ant-design/components/popover/__tests__/index.test.js

43 lines
1.3 KiB
JavaScript
Raw Normal View History

2016-12-14 14:48:09 +08:00
import React from 'react';
2017-07-07 20:26:08 +08:00
import { mount } from 'enzyme';
2016-12-14 14:48:09 +08:00
import Popover from '..';
2019-08-26 22:53:20 +08:00
import mountTest from '../../../tests/shared/mountTest';
import { sleep } from '../../../tests/utils';
2016-12-14 14:48:09 +08:00
describe('Popover', () => {
2019-08-26 22:53:20 +08:00
mountTest(Popover);
it('should show overlay when trigger is clicked', async () => {
2017-07-07 20:26:08 +08:00
const popover = mount(
2016-12-14 14:48:09 +08:00
<Popover content="console.log('hello world')" title="code" trigger="click">
<span>show me your code</span>
2018-12-07 16:17:45 +08:00
</Popover>,
2016-12-14 14:48:09 +08:00
);
2017-09-20 16:26:18 +08:00
expect(popover.instance().getPopupDomNode()).toBe(null);
2016-12-14 14:48:09 +08:00
2017-07-07 20:26:08 +08:00
popover.find('span').simulate('click');
await sleep(100);
2016-12-14 14:48:09 +08:00
2017-09-20 16:26:18 +08:00
const popup = popover.instance().getPopupDomNode();
2016-12-14 14:48:09 +08:00
expect(popup).not.toBe(null);
expect(popup.className).toContain('ant-popover-placement-top');
2017-07-07 20:26:08 +08:00
expect(popup.innerHTML).toMatchSnapshot();
expect(popup.innerHTML).toMatchSnapshot();
2016-12-14 14:48:09 +08:00
});
it('props#overlay do not warn anymore', () => {
const errorSpy = jest.spyOn(console, 'error').mockImplementation(() => {});
const overlay = jest.fn();
mount(
<Popover content="console.log('hello world')" title="code" trigger="click">
<span>show me your code</span>
</Popover>,
);
expect(errorSpy.mock.calls.length).toBe(0);
expect(overlay).not.toHaveBeenCalled();
});
2016-12-14 14:48:09 +08:00
});