123456789101112131415161718192021222324252627282930313233 |
- import { nextTick, ref } from 'vue'
- import { describe, expect, it, vi } from 'vitest'
- import { EVENT_CODE } from '@element-plus/constants'
- import { useModal } from '../use-modal'
- describe('useModal', () => {
- it('should work when ref value changed', async () => {
- const visible = ref(false)
- const handleClose = vi.fn()
- useModal(
- {
- handleClose,
- },
- visible
- )
- expect(handleClose).not.toHaveBeenCalled()
- visible.value = true
- await nextTick()
- const event = new KeyboardEvent('keydown', {
- code: EVENT_CODE.esc,
- })
- document.dispatchEvent(event)
- expect(handleClose).toHaveBeenCalledTimes(1)
- visible.value = false
- await nextTick()
- document.dispatchEvent(event)
- expect(handleClose).toHaveBeenCalledTimes(1)
- })
- })
|