From 642134d16fe8705f4c8a13115cf40cabf9b61ac4 Mon Sep 17 00:00:00 2001 From: kolaente Date: Fri, 3 Apr 2026 21:17:21 +0200 Subject: [PATCH] test(gantt): add e2e test for date range preservation after task modal close Verifies that opening and closing a task modal on the Gantt view does not lose the date range query parameters. --- .../e2e/project/project-view-gantt.spec.ts | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/frontend/tests/e2e/project/project-view-gantt.spec.ts b/frontend/tests/e2e/project/project-view-gantt.spec.ts index 197861391..ed1a71f8c 100644 --- a/frontend/tests/e2e/project/project-view-gantt.spec.ts +++ b/frontend/tests/e2e/project/project-view-gantt.spec.ts @@ -132,4 +132,29 @@ test.describe('Project View Gantt', () => { await expect(page).toHaveURL(new RegExp(`/tasks/${tasks[0].id}`)) }) + + test('Should preserve date range query parameters after opening and closing a task modal', async ({authenticatedPage: page}) => { + await ProjectFactory.create(1) + await ProjectViewFactory.create(1, {id: 2, project_id: 1, view_kind: 1}) + await TaskFactory.create(1, { + start_date: new Date(2022, 9, 1).toISOString(), + end_date: new Date(2022, 9, 5).toISOString(), + }) + await page.goto('/projects/1/2?dateFrom=2022-09-25&dateTo=2022-11-05') + + // Verify the date range is shown + await expect(page).toHaveURL(/dateFrom=2022-09-25/) + await expect(page).toHaveURL(/dateTo=2022-11-05/) + + // Double-click the task to open the modal + await page.locator('.gantt-container .gantt-row-bars .gantt-bar').dblclick() + await expect(page).toHaveURL(/\/tasks\//) + + // Close the modal + await page.locator('dialog[open] .modal-container > .close').click() + + // Verify the date range query parameters are preserved + await expect(page).toHaveURL(/dateFrom=2022-09-25/) + await expect(page).toHaveURL(/dateTo=2022-11-05/) + }) })