import {expect, test, jest} from 'vitest'; import {flushPromises} from '../../utils'; import {showModal} from '@/scripts/notify'; import {post} from '@/scripts/net'; import handler from '@/views/admin/Update'; vi.mock('@/scripts/notify'); vi.mock('@/scripts/net'); test('click button', async () => { post .mockResolvedValueOnce({code: 1, message: 'failed'}) .mockResolvedValue({code: 0, message: 'ok'}); const button = document.createElement('button'); button.addEventListener('click', handler); const event = new MouseEvent('click'); button.dispatchEvent(event); await flushPromises(); expect(showModal).toBeCalledWith({mode: 'alert', text: 'failed'}); button.dispatchEvent(event); await flushPromises(); expect(showModal).toBeCalledWith({mode: 'alert', text: 'ok'}); });