vuecssuiant-designantdreactantantd-vueenterprisefrontendui-designvue-antdvue-antd-uivue3vuecomponent
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.2 KiB
49 lines
1.2 KiB
import { mount } from '@vue/test-utils'; |
|
import { asyncExpect } from '../../../tests/utils'; |
|
import Popover from '..'; |
|
import mountTest from '../../../tests/shared/mountTest'; |
|
|
|
describe('Popover', () => { |
|
mountTest({ |
|
render() { |
|
return ( |
|
<div> |
|
<Popover /> |
|
</div> |
|
); |
|
}, |
|
}); |
|
it('should show overlay when trigger is clicked', async () => { |
|
const popover = mount( |
|
{ |
|
render() { |
|
return ( |
|
<Popover |
|
ref="popover" |
|
content="console.log('hello world')" |
|
title="code" |
|
trigger="click" |
|
> |
|
<span>show me your code</span> |
|
</Popover> |
|
); |
|
}, |
|
}, |
|
{ sync: false }, |
|
); |
|
await asyncExpect(() => { |
|
expect(popover.vm.$refs.popover.getPopupDomNode()).toBe(null); |
|
|
|
popover.find('span').trigger('click'); |
|
}, 0); |
|
let popup = null; |
|
await asyncExpect(() => { |
|
popup = popover.vm.$refs.popover.getPopupDomNode(); |
|
expect(popup).not.toBe(null); |
|
}, 1000); |
|
await asyncExpect(() => { |
|
expect(popup.innerHTML).toMatchSnapshot(); |
|
expect(popup.innerHTML).toMatchSnapshot(); |
|
}); |
|
}); |
|
});
|
|
|