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.
ant-design-vue/components/radio/__tests__/radio.test.js

42 lines
1008 B

import { mount } from '@vue/test-utils'
import { asyncExpect } from '@/tests/utils'
import Radio from '../Radio'
import focusTest from '../../../tests/shared/focusTest'
describe('Radio', () => {
focusTest(Radio)
it('should render correctly', () => {
const wrapper = mount({
render () {
return <Radio class='customized'>Test</Radio>
},
})
expect(wrapper.html()).toMatchSnapshot()
})
it('responses hover events', async () => {
const onMouseEnter = jest.fn()
const onMouseLeave = jest.fn()
const wrapper = mount({
render () {
return <Radio
onMouseenter={onMouseEnter}
onMouseleave={onMouseLeave}
/>
},
}, { sync: false })
await asyncExpect(() => {
wrapper.trigger('mouseenter')
})
await asyncExpect(() => {
expect(onMouseEnter).toHaveBeenCalled()
})
wrapper.trigger('mouseleave')
await asyncExpect(() => {
expect(onMouseLeave).toHaveBeenCalled()
})
})
})