diff --git a/.betterer.results b/.betterer.results index aa617b9bcb8..8a97fb402f8 100644 --- a/.betterer.results +++ b/.betterer.results @@ -3037,17 +3037,12 @@ exports[`better eslint`] = { [0, 0, 0, "Unexpected any. Specify a different type.", "3"] ], "public/app/features/datasources/components/BasicSettings.tsx:5381": [ - [0, 0, 0, "Use data-testid for E2E selectors instead of aria-label", "0"], - [0, 0, 0, "Styles should be written using objects.", "1"] - ], - "public/app/features/datasources/components/DataSourceReadOnlyMessage.tsx:5381": [ - [0, 0, 0, "Use data-testid for E2E selectors instead of aria-label", "0"] + [0, 0, 0, "Styles should be written using objects.", "0"] ], "public/app/features/datasources/components/DataSourceTestingStatus.tsx:5381": [ [0, 0, 0, "Styles should be written using objects.", "0"], [0, 0, 0, "Styles should be written using objects.", "1"], - [0, 0, 0, "Do not use any type assertions.", "2"], - [0, 0, 0, "Use data-testid for E2E selectors instead of aria-label", "3"] + [0, 0, 0, "Do not use any type assertions.", "2"] ], "public/app/features/datasources/components/DataSourceTypeCard.tsx:5381": [ [0, 0, 0, "Use data-testid for E2E selectors instead of aria-label", "0"] @@ -4065,9 +4060,6 @@ exports[`better eslint`] = { [0, 0, 0, "Styles should be written using objects.", "1"], [0, 0, 0, "Styles should be written using objects.", "2"] ], - "public/app/features/plugins/admin/components/PluginDetailsDisabledError.tsx:5381": [ - [0, 0, 0, "Use data-testid for E2E selectors instead of aria-label", "0"] - ], "public/app/features/plugins/admin/components/PluginDetailsHeaderDependencies.tsx:5381": [ [0, 0, 0, "Styles should be written using objects.", "0"], [0, 0, 0, "Styles should be written using objects.", "1"] @@ -4082,9 +4074,6 @@ exports[`better eslint`] = { [0, 0, 0, "Styles should be written using objects.", "2"], [0, 0, 0, "Styles should be written using objects.", "3"] ], - "public/app/features/plugins/admin/components/PluginDetailsSignature.tsx:5381": [ - [0, 0, 0, "Use data-testid for E2E selectors instead of aria-label", "0"] - ], "public/app/features/plugins/admin/components/PluginSignatureDetailsBadge.tsx:5381": [ [0, 0, 0, "Styles should be written using objects.", "0"], [0, 0, 0, "Styles should be written using objects.", "1"], @@ -4119,9 +4108,6 @@ exports[`better eslint`] = { "public/app/features/plugins/admin/types.ts:5381": [ [0, 0, 0, "Unexpected any. Specify a different type.", "0"] ], - "public/app/features/plugins/components/PluginsErrorsInfo.tsx:5381": [ - [0, 0, 0, "Use data-testid for E2E selectors instead of aria-label", "0"] - ], "public/app/features/plugins/datasource_srv.ts:5381": [ [0, 0, 0, "Do not use any type assertions.", "0"], [0, 0, 0, "Unexpected any. Specify a different type.", "1"], diff --git a/packages/grafana-e2e-selectors/src/selectors/pages.ts b/packages/grafana-e2e-selectors/src/selectors/pages.ts index 7072be97a73..2ab4555591f 100644 --- a/packages/grafana-e2e-selectors/src/selectors/pages.ts +++ b/packages/grafana-e2e-selectors/src/selectors/pages.ts @@ -17,11 +17,11 @@ export const Pages = { url: '/', }, DataSource: { - name: 'Data source settings page name input field', + name: 'data-testid Data source settings page name input field', delete: 'Data source settings page Delete button', - readOnly: 'Data source settings page read only message', + readOnly: 'data-testid Data source settings page read only message', saveAndTest: 'data-testid Data source settings page Save and Test button', - alert: 'Data source settings page Alert', + alert: 'data-testid Data source settings page Alert', }, DataSources: { url: '/datasources', @@ -268,12 +268,12 @@ export const Pages = { page: 'Plugins list page', list: 'Plugins list', listItem: 'Plugins list item', - signatureErrorNotice: 'Unsigned plugins notice', + signatureErrorNotice: 'data-testid Unsigned plugins notice', }, PluginPage: { page: 'Plugin page', - signatureInfo: 'Plugin signature info', - disabledInfo: 'Plugin disabled info', + signatureInfo: 'data-testid Plugin signature info', + disabledInfo: 'data-testid Plugin disabled info', }, PlaylistForm: { name: 'Playlist name', diff --git a/packages/grafana-ui/src/components/Alert/Alert.tsx b/packages/grafana-ui/src/components/Alert/Alert.tsx index 4595aad88c3..fb0cf2c080c 100644 --- a/packages/grafana-ui/src/components/Alert/Alert.tsx +++ b/packages/grafana-ui/src/components/Alert/Alert.tsx @@ -54,15 +54,9 @@ export const Alert = React.forwardRef( const ariaLabel = restProps['aria-label'] || title; return ( -
+
', () => { it('should render component', () => { setup(); - expect(screen.getByRole('textbox', { name: selectors.pages.DataSource.name })).toBeInTheDocument(); + expect(screen.getByTestId(selectors.pages.DataSource.name)).toBeInTheDocument(); expect(screen.getByRole('checkbox', { name: /Default/ })).toBeInTheDocument(); }); }); diff --git a/public/app/features/datasources/components/BasicSettings.tsx b/public/app/features/datasources/components/BasicSettings.tsx index 0e630a7031b..9aa09208810 100644 --- a/public/app/features/datasources/components/BasicSettings.tsx +++ b/public/app/features/datasources/components/BasicSettings.tsx @@ -34,7 +34,7 @@ export function BasicSettings({ dataSourceName, isDefault, onDefaultChange, onNa placeholder="Name" onChange={(event) => onNameChange(event.currentTarget.value)} required - aria-label={selectors.pages.DataSource.name} + data-testid={selectors.pages.DataSource.name} />
diff --git a/public/app/features/datasources/components/DataSourceReadOnlyMessage.tsx b/public/app/features/datasources/components/DataSourceReadOnlyMessage.tsx index 6fff1faf496..fc47032432d 100644 --- a/public/app/features/datasources/components/DataSourceReadOnlyMessage.tsx +++ b/public/app/features/datasources/components/DataSourceReadOnlyMessage.tsx @@ -8,7 +8,7 @@ export const readOnlyMessage = export function DataSourceReadOnlyMessage() { return ( - + {readOnlyMessage} ); diff --git a/public/app/features/datasources/components/DataSourceTestingStatus.tsx b/public/app/features/datasources/components/DataSourceTestingStatus.tsx index 86cef325da3..f3268a61bc9 100644 --- a/public/app/features/datasources/components/DataSourceTestingStatus.tsx +++ b/public/app/features/datasources/components/DataSourceTestingStatus.tsx @@ -100,7 +100,7 @@ export function DataSourceTestingStatus({ testingStatus, exploreUrl, dataSource if (message) { return (
- + {testingStatus?.details && ( <> {detailsMessage} diff --git a/public/app/features/plugins/admin/components/PluginDetailsDisabledError.tsx b/public/app/features/plugins/admin/components/PluginDetailsDisabledError.tsx index 1d2c73711cb..344e287f283 100644 --- a/public/app/features/plugins/admin/components/PluginDetailsDisabledError.tsx +++ b/public/app/features/plugins/admin/components/PluginDetailsDisabledError.tsx @@ -21,7 +21,7 @@ export function PluginDetailsDisabledError({ className, plugin }: Props): ReactE severity="error" title="Plugin disabled" className={className} - aria-label={selectors.pages.PluginPage.disabledInfo} + data-testid={selectors.pages.PluginPage.disabledInfo} > {renderDescriptionFromError(plugin.error)}

Please contact your server administrator to get this resolved.

diff --git a/public/app/features/plugins/admin/components/PluginDetailsSignature.tsx b/public/app/features/plugins/admin/components/PluginDetailsSignature.tsx index bdb0a250e62..f88e544cdac 100644 --- a/public/app/features/plugins/admin/components/PluginDetailsSignature.tsx +++ b/public/app/features/plugins/admin/components/PluginDetailsSignature.tsx @@ -26,7 +26,7 @@ export function PluginDetailsSignature({ className, plugin }: Props): React.Reac

diff --git a/public/app/features/plugins/admin/pages/PluginDetails.test.tsx b/public/app/features/plugins/admin/pages/PluginDetails.test.tsx index 259d9a6433d..9ae2cac8c11 100644 --- a/public/app/features/plugins/admin/pages/PluginDetails.test.tsx +++ b/public/app/features/plugins/admin/pages/PluginDetails.test.tsx @@ -382,14 +382,14 @@ describe('Plugin details page', () => { }); it('should display alert with information about why the plugin is disabled', async () => { - const { queryByLabelText } = renderPluginDetails({ + const { queryByTestId } = renderPluginDetails({ id, isInstalled: true, isDisabled: true, error: PluginErrorCode.modifiedSignature, }); - expect(await queryByLabelText(selectors.pages.PluginPage.disabledInfo)).toBeInTheDocument(); + expect(queryByTestId(selectors.pages.PluginPage.disabledInfo)).toBeInTheDocument(); }); it('should display grafana dependencies for a plugin if they are available', async () => { diff --git a/public/app/features/plugins/components/PluginsErrorsInfo.tsx b/public/app/features/plugins/components/PluginsErrorsInfo.tsx index 655057b470d..d87a4f12db8 100644 --- a/public/app/features/plugins/components/PluginsErrorsInfo.tsx +++ b/public/app/features/plugins/components/PluginsErrorsInfo.tsx @@ -23,7 +23,7 @@ export function PluginsErrorsInfo({ filterByPluginType }: PluginsErrorInfoProps) return (

The following plugins are disabled and not shown in the list below: