From 5f8c0c8c9721bad2699ccbc47c1ee76aba7908a4 Mon Sep 17 00:00:00 2001 From: SaelixCode Date: Sat, 4 Jul 2026 12:31:34 -0400 Subject: [PATCH] fix: add aria-labels to schedule action buttons, update test selectors Replaced native title attributes with aria-labels on Run now, Execution history, Edit, and Delete buttons so the Radix tooltip conversion does not break test selectors that relied on title. Updated tests from findByTitle to findByRole. --- frontend/src/components/ScheduledOperationsView.tsx | 8 ++++---- .../__tests__/ScheduledOperationsView.test.tsx | 10 +++++----- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/frontend/src/components/ScheduledOperationsView.tsx b/frontend/src/components/ScheduledOperationsView.tsx index a529bb1a..c8debbe0 100644 --- a/frontend/src/components/ScheduledOperationsView.tsx +++ b/frontend/src/components/ScheduledOperationsView.tsx @@ -790,7 +790,7 @@ export default function ScheduledOperationsView({ filterNodeId, onClearFilter, p - @@ -800,7 +800,7 @@ export default function ScheduledOperationsView({ filterNodeId, onClearFilter, p - @@ -810,7 +810,7 @@ export default function ScheduledOperationsView({ filterNodeId, onClearFilter, p - @@ -820,7 +820,7 @@ export default function ScheduledOperationsView({ filterNodeId, onClearFilter, p - diff --git a/frontend/src/components/__tests__/ScheduledOperationsView.test.tsx b/frontend/src/components/__tests__/ScheduledOperationsView.test.tsx index e3e607bf..d50aebaf 100644 --- a/frontend/src/components/__tests__/ScheduledOperationsView.test.tsx +++ b/frontend/src/components/__tests__/ScheduledOperationsView.test.tsx @@ -137,7 +137,7 @@ describe('ScheduledOperationsView', () => { render(); await userEvent.click(await screen.findByRole('radio', { name: /All tasks/ })); - await userEvent.click(await screen.findByTitle('Edit')); + await userEvent.click(await screen.findByRole('button', { name: 'Edit' })); await waitFor(() => expect(screen.getAllByRole('combobox')[2]).toHaveTextContent('web')); }); @@ -584,7 +584,7 @@ describe('ScheduledOperationsView', () => { render(); await userEvent.click(await screen.findByRole('radio', { name: /All tasks/ })); - await userEvent.click(await screen.findByTitle('Edit')); + await userEvent.click(await screen.findByRole('button', { name: 'Edit' })); await userEvent.click(screen.getAllByRole('combobox')[0]); await userEvent.click(await screen.findByRole('button', { name: 'Create Fleet Snapshot' })); await userEvent.click(screen.getByRole('button', { name: 'Update' })); @@ -720,7 +720,7 @@ describe('ScheduledOperationsView', () => { render(); await userEvent.click(await screen.findByRole('radio', { name: /All tasks/ })); - await userEvent.click(await screen.findByTitle('Edit')); + await userEvent.click(await screen.findByRole('button', { name: 'Edit' })); expect(screen.getByRole('radio', { name: 'Simple' })).toHaveAttribute('aria-checked', 'true'); expect(screen.getByRole('radio', { name: 'Daily' })).toHaveAttribute('aria-checked', 'true'); @@ -738,7 +738,7 @@ describe('ScheduledOperationsView', () => { render(); await userEvent.click(await screen.findByRole('radio', { name: /All tasks/ })); - await userEvent.click(await screen.findByTitle('Edit')); + await userEvent.click(await screen.findByRole('button', { name: 'Edit' })); await userEvent.click(screen.getByRole('button', { name: 'Update' })); await waitFor(() => { @@ -755,7 +755,7 @@ describe('ScheduledOperationsView', () => { render(); await userEvent.click(await screen.findByRole('radio', { name: /All tasks/ })); - await userEvent.click(await screen.findByTitle('Edit')); + await userEvent.click(await screen.findByRole('button', { name: 'Edit' })); expect(screen.getByRole('radio', { name: 'Advanced' })).toHaveAttribute('aria-checked', 'true'); expect(screen.getByDisplayValue('*/15 * * * *')).toBeInTheDocument();