element-plus/packages/hooks/__tests__/use-restore-active.test.ts
三咲智子 1d13ebb05d
feat: drop jest (#7248)
* feat: drop jest

* test: remove ssr

* test: rename

* chore: update tsconfig
2022-04-19 16:51:44 +08:00

25 lines
736 B
TypeScript

import { nextTick, ref } from 'vue'
import { describe, expect, it } from 'vitest'
import { useRestoreActive } from '../use-restore-active'
describe('useRestoreActive', () => {
it('should restore active element', async () => {
const visible = ref(false)
useRestoreActive(visible)
const btn1 = document.createElement('button')
const btn2 = document.createElement('button')
document.body.appendChild(btn1)
document.body.appendChild(btn2)
btn1.focus()
expect(document.activeElement).toBe(btn1)
visible.value = true
await nextTick()
btn2.focus()
expect(document.activeElement).toBe(btn2)
visible.value = false
await nextTick()
expect(document.activeElement).toBe(btn1)
})
})