From 2234c6af454089e8409361ce0c72ab80ea95dcfd Mon Sep 17 00:00:00 2001 From: Tim Williams Date: Mon, 6 Apr 2026 10:56:46 -0400 Subject: [PATCH 1/5] feat: add e2e tests for scheduled sessions UI Add Cypress e2e tests covering scheduled session CRUD operations: create with preset schedule, create with custom cron, client-side and server-side cron validation, schedule update, and deletion. Add data-testid attributes to the scheduled session form and list components for reliable test targeting. --- .../_components/scheduled-session-form.tsx | 17 +- .../scheduled-sessions-tab.tsx | 8 +- e2e/cypress/e2e/scheduled-sessions.cy.ts | 305 ++++++++++++++++++ 3 files changed, 318 insertions(+), 12 deletions(-) create mode 100644 e2e/cypress/e2e/scheduled-sessions.cy.ts diff --git a/components/frontend/src/app/projects/[name]/scheduled-sessions/_components/scheduled-session-form.tsx b/components/frontend/src/app/projects/[name]/scheduled-sessions/_components/scheduled-session-form.tsx index e517b2ba3..ed0edc28a 100644 --- a/components/frontend/src/app/projects/[name]/scheduled-sessions/_components/scheduled-session-form.tsx +++ b/components/frontend/src/app/projects/[name]/scheduled-sessions/_components/scheduled-session-form.tsx @@ -345,7 +345,7 @@ export function ScheduledSessionForm({ projectName, mode, initialData }: Schedul Name - +

{(field.value ?? "").length}/50 characters

@@ -361,7 +361,7 @@ export function ScheduledSessionForm({ projectName, mode, initialData }: Schedul Schedule +
@@ -393,7 +393,7 @@ export function ScheduledSessionForm({ projectName, mode, initialData }: Schedul )} {effectiveCron && ( -
+

{cronDescription}

{nextRuns.length > 0 && (
@@ -458,7 +458,7 @@ export function ScheduledSessionForm({ projectName, mode, initialData }: Schedul Initial Prompt -