From a422b392dec8950e5799d19ff6fb0a9aeeafb8cc Mon Sep 17 00:00:00 2001 From: dante01yoon Date: Fri, 8 May 2026 10:14:36 +0900 Subject: [PATCH] test: add failing test for openJobWorkflow swallowing load errors --- src/composables/queue/useJobMenu.test.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/composables/queue/useJobMenu.test.ts b/src/composables/queue/useJobMenu.test.ts index 3b64ce4b6c..a63d7aea60 100644 --- a/src/composables/queue/useJobMenu.test.ts +++ b/src/composables/queue/useJobMenu.test.ts @@ -246,6 +246,24 @@ describe('useJobMenu', () => { expect(workflowServiceMock.openWorkflow).not.toHaveBeenCalled() }) + it('surfaces an error dialog when workflow open fails', async () => { + const { openJobWorkflow } = mountJobMenu() + const workflow = { nodes: [{ type: 'rgthree.DisplayAny' }] } + getJobWorkflowMock.mockResolvedValue(workflow) + const loadError = new Error('configure() failed: malformed widget') + workflowServiceMock.openWorkflow.mockRejectedValueOnce(loadError) + setCurrentItem(createJobItem({ id: '77' })) + + await expect(openJobWorkflow()).resolves.toBeUndefined() + + expect(dialogServiceMock.showErrorDialog).toHaveBeenCalledWith( + loadError, + expect.objectContaining({ + reportType: 'queueOpenWorkflowError' + }) + ) + }) + it('copies job id to clipboard', async () => { const { copyJobId } = mountJobMenu() setCurrentItem(createJobItem({ id: 'job-99' }))