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

42 lines
1.1 KiB
JavaScript
Raw Normal View History

2019-01-12 03:33:27 +00:00
import { mount } from '@vue/test-utils';
import { asyncExpect } from '@/tests/utils';
import Popover from '..';
describe('Popover', () => {
it('should show overlay when trigger is clicked', async () => {
2019-01-12 03:33:27 +00:00
const popover = mount(
{
render() {
return (
<Popover
ref="popover"
content="console.log('hello world')"
title="code"
trigger="click"
>
<span>show me your code</span>
</Popover>
);
},
},
2019-01-12 03:33:27 +00:00
{ sync: false },
);
await asyncExpect(() => {
2019-01-12 03:33:27 +00:00
expect(popover.vm.$refs.popover.getPopupDomNode()).toBe(null);
2019-01-12 03:33:27 +00:00
popover.find('span').trigger('click');
}, 0);
let popup = null;
await asyncExpect(() => {
2019-01-12 03:33:27 +00:00
popup = popover.vm.$refs.popover.getPopupDomNode();
expect(popup).not.toBe(null);
expect(popup.className).toContain('ant-popover-placement-top');
}, 1000);
await asyncExpect(() => {
2019-01-12 03:33:27 +00:00
expect(popup.innerHTML).toMatchSnapshot();
expect(popup.innerHTML).toMatchSnapshot();
});
await asyncExpect(() => {});
});
});