Skip to content

Commit da36890

Browse files
Replaced repeated form selectors with custom getter commands
1 parent f5812e8 commit da36890

File tree

1 file changed

+29
-25
lines changed

1 file changed

+29
-25
lines changed

cypress/e2e/ui/Settings/Application-Settings/schedule.cy.js

Lines changed: 29 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -94,22 +94,22 @@ function addSchedule() {
9494
// Open add schedule form
9595
selectConfigMenu(ADD_SCHEDULE_CONFIG_OPTION);
9696
// Checks if Save button is disabled initially
97-
cy.contains(
98-
'#main-content .bx--btn-set button[type="submit"]',
99-
saveButton
100-
).should('be.disabled');
97+
cy.getFormFooterButtonByType(SAVE_BUTTON_TEXT, 'submit').should(
98+
'be.disabled'
99+
);
101100
// Adding data
102-
cy.get('input#name').type(initialScheduleName);
103-
cy.get('input#description').type(initialDescription);
104-
cy.get('input[type="checkbox"]#enabled').check({ force: true });
101+
cy.getFormInputFieldById('name').type(INITIAL_SCHEDULE_NAME);
102+
cy.getFormInputFieldById('description').type(INITIAL_DESCRIPTION);
103+
// Check "Active" checkbox using its associated label
104+
cy.getFormLabelByInputId('enabled').click();
105105
// Select Action type option: 'VM Analysis'
106-
cy.get('select#action_typ').select(actionTypeVmAnalysis);
106+
cy.getFormSelectFieldById('action_typ').select(ACTION_TYPE_VM_ANALYSIS);
107107
// Select Filter type option: 'A Single VM'
108-
cy.get('select#filter_typ').select(actionTypeVmAnalysis);
108+
cy.getFormSelectFieldById('filter_typ').select(ACTION_TYPE_VM_ANALYSIS);
109109
// Select Run option: 'Hours'
110-
cy.get('select#timer_typ').select(timerTypeHourly);
110+
cy.getFormSelectFieldById('timer_typ').select(TIMER_TYPE_HOURLY);
111111
// Select Every option: '1 Hour'
112-
cy.get('select#timer_value').select(frequencyTypeHour);
112+
cy.getFormSelectFieldById('timer_value').select(FREQUENCY_TYPE_HOUR);
113113
// Select Time zone option: '(GMT-10:00) Hawaii'
114114
cy.getFormInputFieldById('time_zone').click();
115115
cy.contains('[role="option"]', TIME_ZONE_TYPE_HAWAII).click();
@@ -120,7 +120,8 @@ function addSchedule() {
120120
alias: 'addScheduleApi',
121121
urlPattern: '/ops/schedule_edit/new?button=save',
122122
triggerFn: () =>
123-
cy.contains('#main-content .bx--btn-set button[type="submit"]', saveButton)
123+
cy
124+
.getFormFooterButtonByType(SAVE_BUTTON_TEXT, 'submit')
124125
.should('be.enabled') // Checks if Save button is enabled once all required fields are filled
125126
.click(),
126127
});
@@ -192,11 +193,7 @@ describe('Automate Schedule form operations: Settings > Application Settings > S
192193
cy.interceptApi({
193194
alias: 'treeSelectApi',
194195
urlPattern: /\/ops\/tree_select\?id=.*&text=.*/,
195-
triggerFn: () =>
196-
cy.selectAccordionItem([
197-
MANAGEIQ_REGION_ACCORDION_ITEM,
198-
SCHEDULES_ACCORDION_ITEM,
199-
]),
196+
triggerFn: () => cy.accordionItem(SCHEDULES_ACCORDION_ITEM),
200197
});
201198
});
202199

@@ -493,10 +490,10 @@ describe('Automate Schedule form operations: Settings > Application Settings > S
493490
// Open edit schedule form
494491
selectConfigMenu(EDIT_SCHEDULE_CONFIG_OPTION);
495492
// Editing name and description
496-
cy.get('input#name').clear().type(editedScheduleName);
497-
cy.get('input#description').clear().type(editedDescription);
493+
cy.getFormInputFieldById('name').clear().type(EDITED_SCHEDULE_NAME);
494+
cy.getFormInputFieldById('description').clear().type(EDITED_DESCRIPTION);
498495
// Confirms Save button is enabled after making edits
499-
cy.contains('#main-content .bx--btn-set button[type="submit"]', saveButton)
496+
cy.getFormFooterButtonByType(SAVE_BUTTON_TEXT, 'submit')
500497
.should('be.enabled')
501498
.click();
502499
cy.expect_flash(flashClassMap.success, FLASH_MESSAGE_SCHEDULE_SAVED);
@@ -514,15 +511,22 @@ describe('Automate Schedule form operations: Settings > Application Settings > S
514511
// Open edit schedule form
515512
selectConfigMenu(EDIT_SCHEDULE_CONFIG_OPTION);
516513
// Editing description and start date
517-
cy.get('input#description').clear().type(editedDescription);
518-
cy.get('input#start_date').clear().type(editedStartDate);
519-
cy.contains('#main-content .bx--btn-set button[type="button"]', resetButton)
514+
cy.getFormInputFieldById('description').clear().type(EDITED_DESCRIPTION);
515+
cy.getFormInputFieldById('start_date').clear().type(EDITED_START_DATE);
516+
// Resetting
517+
cy.getFormFooterButtonByType(RESET_BUTTON_TEXT)
520518
.should('be.enabled')
521519
.click();
522520
cy.expect_flash(flashClassMap.warning, FLASH_MESSAGE_RESET_SCHEDULE);
523521
// Confirming the edited fields contain the old values after resetting
524-
cy.get('input#description').should('have.value', initialDescription);
525-
cy.get('input#start_date').should('have.value', initialStartDate);
522+
cy.getFormInputFieldById('description').should(
523+
'have.value',
524+
INITIAL_DESCRIPTION
525+
);
526+
cy.getFormInputFieldById('start_date').should(
527+
'have.value',
528+
INITIAL_START_DATE
529+
);
526530

527531
/* ===== Checking whether Cancel button works ===== */
528532
cy.getFormFooterButtonByType(CANCEL_BUTTON_TEXT).click();

0 commit comments

Comments
 (0)