From 2146e51368af20e2a55b2d578977c1e8e8c80952 Mon Sep 17 00:00:00 2001 From: arabcoders Date: Fri, 15 May 2026 19:00:06 +0300 Subject: [PATCH] fix: flakey test --- ui/app/composables/useTasks.ts | 7 ++-- ui/tests/composables/useTasks.test.ts | 59 +++++++++++++++------------ 2 files changed, 37 insertions(+), 29 deletions(-) diff --git a/ui/app/composables/useTasks.ts b/ui/app/composables/useTasks.ts index 7ccdc0c4..97577b07 100644 --- a/ui/app/composables/useTasks.ts +++ b/ui/app/composables/useTasks.ts @@ -375,13 +375,12 @@ const deleteTask = async ( * @returns Inspect result or null on error */ const inspectTaskHandler = async ( - request: TaskInspectRequest, + payload: TaskInspectRequest, ): Promise => { try { - const response = await fetch('/api/tasks/inspect', { + const response = await request('/api/tasks/inspect', { method: 'POST', - headers: { 'Content-Type': 'application/json' }, - body: JSON.stringify(request), + body: JSON.stringify(payload), }); const json = await response.json(); diff --git a/ui/tests/composables/useTasks.test.ts b/ui/tests/composables/useTasks.test.ts index d515095c..c7a11cc3 100644 --- a/ui/tests/composables/useTasks.test.ts +++ b/ui/tests/composables/useTasks.test.ts @@ -426,8 +426,8 @@ describe('useTasks', () => { }, } - const fetchSpy = spyOn(globalThis, 'fetch') - fetchSpy.mockResolvedValueOnce( + const requestSpy = spyOn(utils, 'request') + requestSpy.mockResolvedValueOnce( createMockResponse({ ok: true, status: 200, @@ -436,14 +436,17 @@ describe('useTasks', () => { ) const tasks = useTasks() - const result = await tasks.inspectTaskHandler({ - url: 'https://www.youtube.com/channel/UCtest123', - }) + try { + const result = await tasks.inspectTaskHandler({ + url: 'https://www.youtube.com/channel/UCtest123', + }) - expect(result).toEqual(inspectResponse) - expect(result?.matched).toBe(true) - expect(result?.handler).toBe('YoutubeHandler') - fetchSpy.mockRestore() + expect(result).toEqual(inspectResponse) + expect(result?.matched).toBe(true) + expect(result?.handler).toBe('YoutubeHandler') + } finally { + requestSpy.mockRestore() + } }) it('handle_unsupported_handler', async () => { @@ -455,8 +458,8 @@ describe('useTasks', () => { metadata: null, } - const fetchSpy = spyOn(globalThis, 'fetch') - fetchSpy.mockResolvedValueOnce( + const requestSpy = spyOn(utils, 'request') + requestSpy.mockResolvedValueOnce( createMockResponse({ ok: true, status: 200, @@ -465,27 +468,33 @@ describe('useTasks', () => { ) const tasks = useTasks() - const result = await tasks.inspectTaskHandler({ - url: 'https://unsupported.com', - }) + try { + const result = await tasks.inspectTaskHandler({ + url: 'https://unsupported.com', + }) - expect(result?.supported).toBe(false) - expect(result?.matched).toBe(false) - fetchSpy.mockRestore() + expect(result?.supported).toBe(false) + expect(result?.matched).toBe(false) + } finally { + requestSpy.mockRestore() + } }) it('store_inspect_error', async () => { - const fetchSpy = spyOn(globalThis, 'fetch') - fetchSpy.mockRejectedValueOnce(new Error('Network error')) + const requestSpy = spyOn(utils, 'request') + requestSpy.mockRejectedValueOnce(new Error('Network error')) const tasks = useTasks() - const result = await tasks.inspectTaskHandler({ - url: 'invalid', - }) + try { + const result = await tasks.inspectTaskHandler({ + url: 'invalid', + }) - expect(result).toBeNull() - expect(tasks.lastError.value).toBe('Network error') - fetchSpy.mockRestore() + expect(result).toBeNull() + expect(tasks.lastError.value).toBe('Network error') + } finally { + requestSpy.mockRestore() + } }) })