From b2124dffb5856f886965e5a686a5c3d1f6d86421 Mon Sep 17 00:00:00 2001 From: Marliana Lara Date: Fri, 7 Jan 2022 14:39:18 -0500 Subject: [PATCH] Add test locators to OUIA-compliant components --- .../components/AdHocCommands/AdHocCommands.js | 1 + .../AdHocCommands/AdHocDetailsStep.js | 2 + .../AddDropDownButton/AddDropDownButton.js | 1 + awx/ui/src/components/AddRole/CheckboxCard.js | 1 + .../src/components/AlertModal/AlertModal.js | 1 + .../components/AnsibleSelect/AnsibleSelect.js | 1 + .../components/AppContainer/AppContainer.js | 6 +- .../AppContainer/NavExpandableGroup.js | 15 +- .../AppContainer/PageHeaderToolbar.js | 17 ++- .../CheckboxListItem/CheckboxListItem.js | 13 +- .../components/CodeEditor/VariablesDetail.js | 1 + .../components/CodeEditor/VariablesField.js | 5 +- .../DataListToolbar/DataListToolbar.js | 3 + .../FieldWithPrompt/FieldWithPrompt.js | 3 +- .../src/components/FormField/CheckboxField.js | 1 + awx/ui/src/components/FormField/FormField.js | 2 + .../components/FormField/FormSubmitError.js | 1 + .../src/components/HostToggle/HostToggle.js | 1 + .../InstanceToggle/InstanceToggle.js | 1 + .../components/JobList/JobListCancelButton.js | 1 + awx/ui/src/components/JobList/JobListItem.js | 34 ++++- .../LaunchButton/ReLaunchDropDown.js | 2 + .../LaunchPrompt/steps/CredentialsStep.js | 1 + .../LaunchPrompt/steps/OtherPromptsStep.js | 1 + .../src/components/ListHeader/ListHeader.js | 1 + .../src/components/Lookup/HostFilterLookup.js | 2 + awx/ui/src/components/Lookup/Lookup.js | 9 +- .../Lookup/MultiCredentialsLookup.js | 1 + .../components/MultiSelect/TagMultiSelect.js | 1 + .../NotificationList/NotificationListItem.js | 9 +- .../components/PaginatedTable/HeaderRow.js | 2 +- .../PaginatedTable/PaginatedTable.js | 2 + .../components/PromptDetail/PromptDetail.js | 39 ++++- .../PromptInventorySourceDetail.js | 9 +- .../PromptDetail/PromptJobTemplateDetail.js | 21 ++- .../PromptDetail/PromptProjectDetail.js | 43 +++++- .../PromptDetail/PromptWFJobTemplateDetail.js | 2 + .../ResourceAccessListItem.js | 17 ++- .../src/components/RoutedTabs/RoutedTabs.js | 7 +- .../Schedule/ScheduleDetail/ScheduleDetail.js | 28 +++- .../Schedule/ScheduleList/ScheduleListItem.js | 5 +- .../Schedule/ScheduleToggle/ScheduleToggle.js | 1 + .../Schedule/shared/FrequencyDetailSubform.js | 10 ++ .../components/ScreenHeader/ScreenHeader.js | 10 +- awx/ui/src/components/Search/Search.js | 7 +- .../components/SelectedList/SelectedList.js | 6 +- awx/ui/src/components/Sort/Sort.js | 14 +- .../TemplateList/TemplateListItem.js | 25 +++- .../Workflow/WorkflowActionTooltipItem.js | 1 + .../screens/ActivityStream/ActivityStream.js | 1 + .../ActivityStreamDetailButton.js | 1 + .../ActivityStream/ActivityStreamListItem.js | 2 +- .../ApplicationTokenListItem.js | 2 +- .../ApplicationsList/ApplicationListItem.js | 5 +- .../CredentialDetail/CredentialDetail.js | 7 +- .../CredentialList/CredentialListItem.js | 2 +- .../CredentialPluginTestAlert.js | 1 + .../CredentialTypeDetails.js | 2 + .../CredentialTypeListItem.js | 5 +- awx/ui/src/screens/Dashboard/Dashboard.js | 4 + .../src/screens/Dashboard/DashboardGraph.js | 2 + .../ExecutionEnvironmentListItem.js | 5 +- .../ExecutionEnvironmentTemplateListItem.js | 5 +- .../src/screens/Host/HostDetail/HostDetail.js | 1 + .../src/screens/Host/HostFacts/HostFacts.js | 1 + .../screens/Host/HostGroups/HostGroupItem.js | 2 +- .../src/screens/Host/HostList/HostListItem.js | 4 +- .../Host/HostList/SmartInventoryButton.js | 1 + .../ContainerGroupDetails.js | 1 + .../InstanceGroupListItem.js | 2 +- .../Instances/InstanceListItem.js | 10 +- .../InventoryDetail/InventoryDetail.js | 13 +- .../InventoryGroupDetail.js | 1 + .../InventoryGroupHostList.js | 2 + .../InventoryGroupHostListItem.js | 6 +- .../InventoryGroups/InventoryGroupItem.js | 2 +- .../InventoryHostDetail.js | 1 + .../InventoryHostFacts/InventoryHostFacts.js | 1 + .../InventoryHostGroupItem.js | 5 +- .../InventoryHosts/InventoryHostItem.js | 2 +- .../InventoryList/InventoryListItem.js | 7 +- .../InventoryRelatedGroupList.js | 1 + .../InventoryRelatedGroupListItem.js | 6 +- .../InventorySourceDetail.js | 1 + .../InventorySourceListItem.js | 2 +- .../SmartInventoryDetail.js | 13 +- .../SmartInventoryHostDetail.js | 1 + .../SmartInventoryHostListItem.js | 2 +- .../shared/InventoryGroupsDeleteModal.js | 6 + awx/ui/src/screens/Job/JobDetail/JobDetail.js | 44 +++++- .../screens/Job/JobOutput/HostEventModal.js | 6 + .../screens/Job/JobOutput/JobOutputSearch.js | 1 + .../WorkflowOutput/WorkflowOutputToolbar.js | 2 +- awx/ui/src/screens/Login/Login.js | 1 + .../ManagementJobListItem.js | 3 +- awx/ui/src/screens/Metrics/Metrics.js | 2 +- .../NotificationTemplateListItem.js | 5 +- .../OrganizationDetail/OrganizationDetail.js | 19 ++- .../OrganizationExecEnvListItem.js | 5 +- .../OrganizationList/OrganizationListItem.js | 2 +- .../OrganizationTeamListItem.js | 2 +- .../ProjectJobTemplatesListItem.js | 5 +- .../Project/ProjectList/ProjectListItem.js | 2 +- .../shared/ProjectSubForms/ManualSubForm.js | 1 + .../RADIUS/RADIUSDetail/RADIUSDetail.js | 1 + .../SubscriptionEdit/SubscriptionModal.js | 8 +- .../TACACS/TACACSDetail/TACACSDetail.js | 1 + .../src/screens/Team/TeamList/TeamListItem.js | 2 +- .../Team/TeamRoles/TeamRoleListItem.js | 2 +- .../JobTemplateDetail/JobTemplateDetail.js | 137 +++++++++++++++--- .../src/screens/Template/Survey/SurveyList.js | 2 +- .../screens/Template/Survey/SurveyListItem.js | 9 +- .../Template/Survey/SurveyReorderModal.js | 7 +- .../screens/Template/Survey/SurveyToolbar.js | 3 +- .../WorkflowJobTemplateDetail.js | 4 +- .../Template/shared/JobTemplateForm.js | 2 + .../screens/Template/shared/LabelSelect.js | 1 + .../shared/WorkflowJobTemplateForm.js | 1 + .../src/screens/User/UserList/UserListItem.js | 2 +- .../UserOrganizationListItem.js | 5 +- .../User/UserRoles/UserRolesListItem.js | 2 +- .../User/UserTeams/UserTeamListItem.js | 2 +- .../User/UserTokenList/UserTokenListItem.js | 2 +- .../WorkflowApprovalListApproveButton.js | 1 + .../WorkflowApprovalListDenyButton.js | 1 + 125 files changed, 682 insertions(+), 138 deletions(-) diff --git a/awx/ui/src/components/AdHocCommands/AdHocCommands.js b/awx/ui/src/components/AdHocCommands/AdHocCommands.js index 2049962cd5..d37106285f 100644 --- a/awx/ui/src/components/AdHocCommands/AdHocCommands.js +++ b/awx/ui/src/components/AdHocCommands/AdHocCommands.js @@ -128,6 +128,7 @@ function AdHocCommands({ component="button" aria-label={t`Run Command`} onClick={() => setIsWizardOpen(true)} + ouiaId="run-command-dropdown-item" > {t`Run Command`} diff --git a/awx/ui/src/components/AdHocCommands/AdHocDetailsStep.js b/awx/ui/src/components/AdHocCommands/AdHocDetailsStep.js index 6760b58a83..d226b240ca 100644 --- a/awx/ui/src/components/AdHocCommands/AdHocDetailsStep.js +++ b/awx/ui/src/components/AdHocCommands/AdHocDetailsStep.js @@ -207,6 +207,7 @@ function AdHocDetailsStep({ verbosityOptions, moduleOptions }) { onChange={() => { diffModeHelpers.setValue(!diffModeField.value); }} + ouiaId="diff-mode-switch" aria-label={t`toggle changes`} /> @@ -236,6 +237,7 @@ function AdHocDetailsStep({ verbosityOptions, moduleOptions }) { } id="become_enabled" + ouiaId="become_enabled" isChecked={becomeEnabledField.value} onChange={(checked) => { becomeEnabledHelpers.setValue(checked); diff --git a/awx/ui/src/components/AddDropDownButton/AddDropDownButton.js b/awx/ui/src/components/AddDropDownButton/AddDropDownButton.js index 3342324f51..b240450bb7 100644 --- a/awx/ui/src/components/AddDropDownButton/AddDropDownButton.js +++ b/awx/ui/src/components/AddDropDownButton/AddDropDownButton.js @@ -42,6 +42,7 @@ function AddDropDownButton({ dropdownItems, ouiaId }) { /> } dropdownItems={dropdownItems} + ouiaId="add-dropdown" /> ); diff --git a/awx/ui/src/components/AddRole/CheckboxCard.js b/awx/ui/src/components/AddRole/CheckboxCard.js index 828df6a213..b055ee9309 100644 --- a/awx/ui/src/components/AddRole/CheckboxCard.js +++ b/awx/ui/src/components/AddRole/CheckboxCard.js @@ -26,6 +26,7 @@ function CheckboxCard(props) { onChange={onSelect} aria-label={name} id={`checkbox-card-${itemId}`} + ouiaId={`checkbox-card-${itemId}`} label={ <>
{name}
diff --git a/awx/ui/src/components/AlertModal/AlertModal.js b/awx/ui/src/components/AlertModal/AlertModal.js index 3d3c7394d3..df0afb87aa 100644 --- a/awx/ui/src/components/AlertModal/AlertModal.js +++ b/awx/ui/src/components/AlertModal/AlertModal.js @@ -77,6 +77,7 @@ function AlertModal({ isOpen={Boolean(isOpen)} variant="small" title={title} + ouiaId="alert-modal" {...props} > {children} diff --git a/awx/ui/src/components/AnsibleSelect/AnsibleSelect.js b/awx/ui/src/components/AnsibleSelect/AnsibleSelect.js index 8a1cb9ea2c..14e886c16b 100644 --- a/awx/ui/src/components/AnsibleSelect/AnsibleSelect.js +++ b/awx/ui/src/components/AnsibleSelect/AnsibleSelect.js @@ -31,6 +31,7 @@ function AnsibleSelect({ return ( +