import { mount } from '@vue/test-utils' import Alert from '..' describe('Alert', () => { beforeAll(() => { jest.useFakeTimers() }) afterAll(() => { jest.useRealTimers() }) it('could be closed', () => { const onClose = jest.fn() const afterClose = jest.fn() const wrapper = mount({ render () { return }, }) wrapper.find('.ant-alert-close-icon').trigger('click') expect(onClose).toBeCalled() jest.runAllTimers() wrapper.vm.$refs.alert.animationEnd() expect(afterClose).toBeCalled() }) describe('data and aria props', () => { it('sets data attributes on input', () => { const wrapper = mount({ render () { return }, }) const input = wrapper.find('.ant-alert').element expect(input.getAttribute('data-test')).toBe('test-id') expect(input.getAttribute('data-id')).toBe('12345') }) it('sets aria attributes on input', () => { const wrapper = mount({ render () { return }, }) const input = wrapper.find('.ant-alert').element expect(input.getAttribute('aria-describedby')).toBe('some-label') }) it('sets role attribute on input', () => { const wrapper = mount({ render () { return }, }) const input = wrapper.find('.ant-alert').element expect(input.getAttribute('role')).toBe('status') }) }) })