itemengine-cypress-automation 1.0.365 → 1.0.366

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/studentViewSettingsForGroupedLayout.js +3 -0
  2. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/draggableOptions.js +2 -0
  3. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/manuallyAndNonScored.js +2 -4
  4. package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +1 -0
  5. package/cypress/e2e/ILC/ListOrderingDropdown/manuallyAndNonScoredEditTab.js +2 -1
  6. package/cypress/e2e/ILC/ListOrderingDropdown/previewContentsForAllViews.smoke.js +2 -4
  7. package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +1 -2
  8. package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js +10 -15
  9. package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +1 -0
  10. package/cypress/e2e/ILC/ListOrderingNew/manuallyAndNonScoredEditTab.js +2 -0
  11. package/cypress/e2e/ILC/ListOrderingNew/specifyCorrectAnswerSection.js +7 -23
  12. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/headerSection.js +1 -0
  13. package/cypress/e2e/ILC/Matching/Scoring/blankResponseScoring.js +38 -41
  14. package/cypress/e2e/ILC/Matching/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +1 -1
  15. package/cypress/e2e/ILC/Matching/clickAndDrop.js +2 -0
  16. package/cypress/e2e/ILC/Matching/draggableOptions.js +3 -0
  17. package/cypress/e2e/ILC/Matching/editQuestion.smoke.js +3 -2
  18. package/cypress/e2e/ILC/Matching/headerSection.js +2 -1
  19. package/cypress/e2e/ILC/Matching/studentViewSettings.js +2 -0
  20. package/cypress/e2e/ILC/Matching/studentViewSettingsForGroupedLayout.js +1 -1
  21. package/cypress/e2e/ILC/MatchingDropdown/Scoring/blankResponseScoring.js +6 -6
  22. package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +5 -1
  23. package/cypress/pages/components/draggableOptionsSectionComponent.js +2 -0
  24. package/cypress/pages/listOrderingPage.js +2 -1
  25. package/package.json +1 -1
@@ -110,6 +110,7 @@ describe('Create Item page - drag and drop into categories: Student view setting
110
110
  before(() => {
111
111
  dragAndDropIntoCategoriesPage.steps.navigateToCreateQuestion('drag and drop into categories');
112
112
  cy.barsPreLoaderWait();
113
+ dragAndDropIntoCategoriesPage.steps.addTextInQuestionInstructionsInputField('Navigating to drag and drop into categories');
113
114
  utilities.verifyElementCount(dragAndDropIntoCategoriesPage.optionsInputField(), 2);
114
115
  dragAndDropIntoCategoriesPage.steps.expandDraggableOptionsLayoutDropdown();
115
116
  dragAndDropIntoCategoriesPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
@@ -163,6 +164,7 @@ describe('Create Item page - drag and drop into categories: Student view setting
163
164
  dragAndDropIntoCategoriesPage.steps.navigateToCreateQuestion('drag and drop into categories');
164
165
  cy.barsPreLoaderWait();
165
166
  utilities.verifyElementCount(dragAndDropIntoCategoriesPage.optionsInputField(), 2);
167
+ dragAndDropIntoCategoriesPage.steps.addTextInQuestionInstructionsInputField('Navigating to drag and drop into categories');
166
168
  dragAndDropIntoCategoriesPage.steps.expandDraggableOptionsLayoutDropdown();
167
169
  dragAndDropIntoCategoriesPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
168
170
  dragAndDropIntoCategoriesPage.steps.addGroupTitle(groupTitles[0]);
@@ -217,6 +219,7 @@ describe('Create Item page - drag and drop into categories: Student view setting
217
219
  dragAndDropIntoCategoriesPage.steps.navigateToCreateQuestion('drag and drop into categories');
218
220
  cy.barsPreLoaderWait();
219
221
  utilities.verifyElementCount(dragAndDropIntoCategoriesPage.optionsInputField(), 2);
222
+ dragAndDropIntoCategoriesPage.steps.addTextInQuestionInstructionsInputField('Navigating to drag and drop into categories');
220
223
  dragAndDropIntoCategoriesPage.steps.expandDraggableOptionsLayoutDropdown();
221
224
  dragAndDropIntoCategoriesPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
222
225
  dragAndDropIntoCategoriesPage.steps.addGroupTitle(groupTitles[0]);
@@ -142,6 +142,7 @@ describe('Create Item page - Fill in the gaps with drag and drop: Draggable opti
142
142
  before(() => {
143
143
  fillInTheGapsDragAndDropPage.steps.navigateToCreateQuestion('fill in the gaps with drag and drop');
144
144
  cy.barsPreLoaderWait();
145
+ fillInTheGapsDragAndDropPage.steps.addTextInQuestionInstructionsInputField('Fill in the gaps drag and drop')
145
146
  fillInTheGapsDragAndDropPage.steps.expandDraggableOptionsLayoutDropdown();
146
147
  fillInTheGapsDragAndDropPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
147
148
  });
@@ -169,6 +170,7 @@ describe('Create Item page - Fill in the gaps with drag and drop: Draggable opti
169
170
  before(() => {
170
171
  fillInTheGapsDragAndDropPage.steps.navigateToCreateQuestion('fill in the gaps with drag and drop');
171
172
  cy.barsPreLoaderWait();
173
+ fillInTheGapsDragAndDropPage.steps.addTextInQuestionInstructionsInputField('Fill in the gaps drag and drop')
172
174
  fillInTheGapsDragAndDropPage.steps.expandDraggableOptionsLayoutDropdown();
173
175
  fillInTheGapsDragAndDropPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
174
176
  });
@@ -38,15 +38,13 @@ describe('Create Item page - List ordering: Manually and non scored', () => {
38
38
  listOrderingPage.steps.selectListOptionPositionDropdown('1');
39
39
  });
40
40
 
41
- it('The user should be able to select an option from the position dropdown. When the user has not set position in all dropdowns, an alert message "All options need to have a value assigned to them from the dropdown." should be displayed', () => {
41
+ it('The user should be able to select an option from the position dropdown', () => {
42
42
  listOrderingPage.steps.selectOptionPositionPreviewTab(0, '2');
43
43
  utilities.verifyElementVisibilityState(listOrderingPage.dropdownList(), 'notExist');
44
- listOrderingPage.steps.verifyAssignValueToAllDropdownAlertMessage();
45
44
  });
46
45
 
47
- it('User should be able to reorder options using position dropdowns. On setting position for all options, the alert message should get removed', () => {
46
+ it('User should be able to reorder options using position dropdowns', () => {
48
47
  listOrderingPage.steps.selectPositionForAllOptionsPreviewTab([{ optionIndex: 0, position: '2' }, { optionIndex: 1, position: '1' }, { optionIndex: 2, position: '3' }, { optionIndex: 3, position: '4' }])
49
- listOrderingPage.steps.verifyAlertMessageNotExists();
50
48
  });
51
49
 
52
50
  listOrderingPage.tests.verifyGradingStudentViewRadioButtonAndScoringTypeInPreviewTab('Manually scored');
@@ -43,6 +43,7 @@ describe('Create item page - List ordering: All or nothing ', () => {
43
43
  });
44
44
  };
45
45
 
46
+ //Failing due to https://weldnorthed.atlassian.net/browse/IEI-5582
46
47
  views.forEach((view) => {
47
48
  describe(`${view}: Auto scored - All or nothing scoring`, { tags: 'smoke' }, () => {
48
49
  abortEarlySetup();
@@ -13,9 +13,9 @@ describe('Create Item page - List ordering: Scoring cases', () => {
13
13
  before(() => {
14
14
  listOrderingPage.steps.navigateToCreateQuestion('list ordering');
15
15
  cy.barsPreLoaderWait();
16
+ listOrderingPage.steps.addTextInQuestionInstructionsInputField('Arrange options in correct order.');
16
17
  listOrderingPage.steps.selectOrderingLayoutOption('Dropdown menu');
17
18
  listOrderingPage.steps.addInputToOptionsInputField(options);
18
- listOrderingPage.steps.addTextInQuestionInstructionsInputField('Arrange options in correct order.');
19
19
  });
20
20
 
21
21
  it('When the user selects \'Manually scored\' option from the scoring Type dropdown then the \'Specify correct answer\' section should not be displayed; \'Points\' and \'Minimum scoring\' label and dropdown should be displayed', () => {
@@ -47,6 +47,7 @@ describe('Create Item page - List ordering: Scoring cases', () => {
47
47
  before(() => {
48
48
  listOrderingPage.steps.navigateToCreateQuestion('list ordering');
49
49
  cy.barsPreLoaderWait();
50
+ listOrderingPage.steps.addTextInQuestionInstructionsInputField('Arrange options in correct order.');
50
51
  listOrderingPage.steps.selectOrderingLayoutOption('Dropdown menu');
51
52
  });
52
53
 
@@ -103,10 +103,9 @@ describe('Create item page - List ordering - Preview contents in all views', ()
103
103
  }
104
104
  });
105
105
 
106
- it('The user should be able to select an option from the position dropdown. When the user has not set position in all dropdowns, an alert message "All options need to have a value assigned to them from the dropdown." should be displayed', () => {
106
+ it('The user should be able to select an option from the position dropdown', () => {
107
107
  listOrderingPage.steps.selectListOptionPositionDropdown('2');
108
108
  utilities.verifyElementVisibilityState(listOrderingPage.dropdownList(), 'notExist');
109
- listOrderingPage.steps.verifyAssignValueToAllDropdownAlertMessage();
110
109
  });
111
110
 
112
111
  it('When the user tries to set position of an option such that the same position has already been assigned to another option, then the selected position from the previous option dropdown should reset', () => {
@@ -114,9 +113,8 @@ describe('Create item page - List ordering - Preview contents in all views', ()
114
113
  listOrderingPage.steps.verifySelectedOptionPositionDropdown(0, '');
115
114
  });
116
115
 
117
- it(`User should be able to reorder options containing image, bold text and equation options in the list using position dropdowns. On setting position for all options, the alert message should get removed`, () => {
116
+ it(`User should be able to reorder options containing image, bold text and equation options in the list using position dropdowns`, () => {
118
117
  listOrderingPage.steps.selectPositionForAllOptionsPreviewTab([{ optionIndex: 0, position: '2' }, { optionIndex: 1, position: '1' }, { optionIndex: 2, position: '3' }, { optionIndex: 3, position: '4' }])
119
- listOrderingPage.steps.verifyAlertMessageNotExists();
120
118
  });
121
119
  } else if (view === 'Grading view') {
122
120
  it(`The order of the responses should be as per the submitted response`, () => {
@@ -54,8 +54,7 @@ describe('Create item page - List ordering: Specify correct answer, Alternative
54
54
  listOrderingPage.steps.addInputToOptionsInputField(options);
55
55
  });
56
56
 
57
- // Uncomment below code once https://redmine.zeuslearning.com/issues/577520 is Resolved
58
- // listOrderingPage.tests.verifyAutoScoredAddAlternativeAnswerButtonAndValidation('list ordering');
57
+ listOrderingPage.tests.verifyAutoScoredAddAlternativeAnswerButtonAndValidation();
59
58
 
60
59
  it('When user tries to \'+Add alternative answer\' after allotting points without re-ordering the options then the \'+Add alternative answer\' button is disable state', () => {
61
60
  utilities.verifyElementDisabled(autoScoredSpecifyCorrectAnswerSection.alternativeAnswerButton());
@@ -38,30 +38,24 @@ describe('Create item page - List ordering: Specify correct answer, Alternative
38
38
  listOrderingPage.steps.selectOptionOrientation('Horizontal');
39
39
  });
40
40
 
41
- //need to remove comment after https://redmine.zeuslearning.com/issues/577520 + https://redmine.zeuslearning.com/issues/569608 is resolved
42
- // listOrderingPage.tests.verifyAutoScoredAddAlternativeAnswerButtonAndValidation('list ordering');
41
+ listOrderingPage.tests.verifyAutoScoredAddAlternativeAnswerButtonAndValidation('list ordering');
43
42
 
44
- it('When user tries to \'+Add alternative answer\' after allotting points without re-ordering the options then the warning popup should appear and on closing the warning popup, an error message should be displayed in the \'Specify correct answer\' section', () => {
43
+ it('When user tries to \'+Add alternative answer\' after allotting points then the alternative answer should be added, an error message should not be displayed in the \'Specify correct answer\' section', () => {
45
44
  listOrderingPage.steps.clickOnAddAlternativeAnswerButton();
46
- utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'exist');
47
- listOrderingPage.steps.closeWarningPopup();
48
- utilities.verifyInnerText(listOrderingPage.errorMessage(), 'Error: The correct answer sequence matches the option sequence. Please either rearrange the options or select \'Randomize options\' to continue.');
49
- utilities.verifyElementVisibilityState(listOrderingPage.errorMessage(), 'visible');
50
- listOrderingPage.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
45
+ listOrderingPage.steps.verifyAlternativeAnswerAccordionLabel(0);
46
+ listOrderingPage.steps.verifyErrorMessageIsNotDisplayed();
51
47
  });
52
48
 
53
- listOrderingPage.tests.verifyErrorMessageCSSAndA11y();
54
-
55
- it('When the user checks \'Randomize options\' then the error message should disappear', () => {
49
+ it('When the user checks \'Randomize options\' then the error message should not be displayed', () => {
56
50
  listOrderingPage.steps.checkRandomizeOptionsCheckbox();
57
51
  listOrderingPage.steps.verifyErrorMessageIsNotDisplayed();
58
52
  listOrderingPage.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
59
53
  });
60
54
 
61
- it('When the user unchecks the \'Randomize options\' checkbox and clicks on \'+Add alternative answer\' the error message should be displayed and on re-ordering the options the error message should disappear', () => {
55
+ it('When the user unchecks the \'Randomize options\' checkbox and clicks on \'+Add alternative answer\' the error message should not be displayed and user should be able to reorder them', () => {
62
56
  listOrderingPage.steps.uncheckRandomizeOptionsCheckbox();
63
57
  listOrderingPage.steps.clickOnAddAlternativeAnswerButton();
64
- utilities.verifyElementVisibilityState(listOrderingPage.errorMessage(), 'visible');
58
+ listOrderingPage.steps.verifyErrorMessageIsNotDisplayed();
65
59
  listOrderingPage.steps.clickAndReorderHorizontalOptionInSpecifyCorrectAnswerSection('seed', 0);
66
60
  listOrderingPage.steps.clickAndReorderHorizontalOptionInSpecifyCorrectAnswerSection('sprout', 1);
67
61
  listOrderingPage.steps.verifyHorizontalOptionsOrderInSpecifyCorrectAnswerSection(['seed', 'sprout', 'plant', 'flower']);
@@ -76,7 +70,9 @@ describe('Create item page - List ordering: Specify correct answer, Alternative
76
70
 
77
71
  it('When user has added an alternative answer accordion, then the newly added alternative answer accordion should be in expanded state and the correct answer accordion should be in collapsed state', () => {
78
72
  listOrderingPage.steps.verifyCorrectAnswerAccordionIsCollapsed();
79
- listOrderingPage.steps.verifyAlternateAnswerAccordionIsExpanded(0);
73
+ listOrderingPage.steps.verifyAlternateAnswerAccordionIsCollapsed(0);
74
+ listOrderingPage.steps.verifyAlternateAnswerAccordionIsCollapsed(1);
75
+ listOrderingPage.steps.verifyAlternateAnswerAccordionIsExpanded(2);
80
76
  });
81
77
 
82
78
  it('By default, 4 options should be displayed with Drag handle in the correct accordion', () => {
@@ -91,7 +87,6 @@ describe('Create item page - List ordering: Specify correct answer, Alternative
91
87
  listOrderingPage.steps.clickAndReorderHorizontalOptionInSpecifyCorrectAnswerSection('seed', 2);
92
88
  listOrderingPage.steps.clickAndReorderHorizontalOptionInSpecifyCorrectAnswerSection('sprout', 3);
93
89
  listOrderingPage.steps.allotPoints(5);
94
- listOrderingPage.steps.addAlternativeAnswerAccordion(2);
95
90
  });
96
91
 
97
92
  listOrderingPage.tests.verifyWarningPopupAndAccordionNavigationWhenNoPointsAddedInAlternativeAccordion();
@@ -42,6 +42,7 @@ describe('Create item page - Matching : Header section and Saving question', ()
42
42
  before(() => {
43
43
  listOrderingPage.steps.navigateToCreateQuestion('list ordering');
44
44
  cy.barsPreLoaderWait();
45
+ utilities.verifyElementCount(listOrderingPage.optionsInputField(), 4);
45
46
  });
46
47
 
47
48
  describe('Validation error messages', () => {
@@ -47,6 +47,7 @@ describe('Create Item page - List ordering: Scoring cases', () => {
47
47
  listOrderingPage.steps.navigateToCreateQuestion('list ordering');
48
48
  cy.barsPreLoaderWait();
49
49
  listOrderingPage.steps.selectOrderingLayoutOption('Dropdown menu');
50
+ listOrderingPage.steps.addTextInQuestionInstructionsInputField('Arrange options in correct order.');
50
51
  });
51
52
 
52
53
  it('User should be able to select \'Non scored\' scoring type from scoring type dropdown', () => {
@@ -62,6 +63,7 @@ describe('Create Item page - List ordering: Scoring cases', () => {
62
63
  before(() => {
63
64
  listOrderingPage.steps.navigateToCreateQuestion('list ordering');
64
65
  cy.barsPreLoaderWait();
66
+ listOrderingPage.steps.addTextInQuestionInstructionsInputField('Arrange options in correct order.');
65
67
  listOrderingPage.steps.addInputToOptionsInputField(options);
66
68
  listOrderingPage.steps.expandScoringTypeDropdown();
67
69
  listOrderingPage.steps.selectOptionFromScoringTypeDropdown('Non scored');
@@ -36,37 +36,20 @@ describe('Create item page - List ordering: Specify correct answer, Alternative
36
36
  listOrderingPage.steps.addInputToOptionsInputField(options);
37
37
  });
38
38
 
39
- //need to remove comment after https://redmine.zeuslearning.com/issues/577520 + https://redmine.zeuslearning.com/issues/569608 is resolved
40
- // listOrderingPage.tests.verifyAutoScoredAddAlternativeAnswerButtonAndValidation('list ordering');
39
+ listOrderingPage.tests.verifyAutoScoredAddAlternativeAnswerButtonAndValidation('list ordering');
41
40
 
42
- it('When user tries to \'+Add alternative answer\' after allotting points without re-ordering the options then the warning popup should appear and on closing the warning popup, an error message should be displayed in the \'Specify correct answer\' section', () => {
41
+ it('When user tries to \'+Add alternative answer\' after allotting points then the alternative answer should be added, an error message should not be displayed in the \'Specify correct answer\' section', () => {
43
42
  listOrderingPage.steps.clickOnAddAlternativeAnswerButton();
44
- utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'exist');
45
- dialogBoxBase.steps.closeWarningPopup();
46
- utilities.verifyInnerText(listOrderingPage.errorMessage(), 'Error: The correct answer sequence matches the option sequence. Please either rearrange the options or select \'Randomize options\' to continue.');
47
- utilities.verifyElementVisibilityState(listOrderingPage.errorMessage(), 'visible');
43
+ listOrderingPage.steps.verifyAlternativeAnswerAccordionLabel(0);
44
+ utilities.verifyElementVisibilityState(listOrderingPage.errorMessage(), 'notExist');
48
45
  });
49
46
 
50
- listOrderingPage.tests.verifyErrorMessageCSSAndA11y();
51
-
52
- it('When the user checks \'Randomize options\' then the error message should disappear', () => {
47
+ it('When the user checks \'Randomize options\' then the error message should not be displayed', () => {
53
48
  listOrderingPage.steps.checkRandomizeOptionsCheckbox();
54
49
  utilities.verifyElementVisibilityState(listOrderingPage.errorMessage(), 'notExist');
55
- cy.log('Post step: Allotting points to remove the error message')
56
50
  listOrderingPage.steps.allotPoints(10);
57
51
  });
58
52
 
59
- it('When the user unchecks the \'Randomize options\' checkbox and clicks on \'+Add alternative answer\' the error message should be displayed and on re-ordering the options the error message should disappear', () => {
60
- listOrderingPage.steps.uncheckRandomizeOptionsCheckbox();
61
- listOrderingPage.steps.clickOnAddAlternativeAnswerButton();
62
- dialogBoxBase.steps.closeWarningPopup();
63
- utilities.verifyElementVisibilityState(listOrderingPage.errorMessage(), 'visible');
64
- listOrderingPage.steps.clickAndReorderOptionInSpecifyCorrectAnswerSection('seed', 0);
65
- listOrderingPage.steps.clickAndReorderOptionInSpecifyCorrectAnswerSection('sprout', 1);
66
- listOrderingPage.steps.verifyOptionsOrderInSpecifyCorrectAnswerSection(['seed', 'sprout', 'plant', 'flower']);
67
- utilities.verifyElementVisibilityState(listOrderingPage.errorMessage(), 'notExist');
68
- });
69
-
70
53
  it('When the user has allotted points to the \'Correct accordion\' and has set correct answer order, then the user should be able to add alternative answer for the question using \'Add alternative answer\' button', () => {
71
54
  listOrderingPage.steps.clickAndReorderOptionInSpecifyCorrectAnswerSection('seed', 0);
72
55
  listOrderingPage.steps.clickAndReorderOptionInSpecifyCorrectAnswerSection('sprout', 1);
@@ -75,7 +58,8 @@ describe('Create item page - List ordering: Specify correct answer, Alternative
75
58
 
76
59
  it('When user has added an alternative answer accordion, then the newly added alternative answer accordion should be in expanded state and the correct answer accordion should be in collapsed state', () => {
77
60
  listOrderingPage.steps.verifyCorrectAnswerAccordionIsCollapsed();
78
- listOrderingPage.steps.verifyAlternateAnswerAccordionIsExpanded(0);
61
+ listOrderingPage.steps.verifyAlternateAnswerAccordionIsCollapsed(0);
62
+ listOrderingPage.steps.verifyAlternateAnswerAccordionIsExpanded(1);
79
63
  });
80
64
 
81
65
  it('By default, 4 options should be displayed with Drag handle in the correct accordion', () => {
@@ -42,6 +42,7 @@ describe('Create item page - Matching : Header section and Saving question', ()
42
42
  before(() => {
43
43
  listOrderingPage.steps.navigateToCreateQuestion('list ordering');
44
44
  cy.barsPreLoaderWait();
45
+ utilities.verifyElementCount(listOrderingPage.optionsInputField(), 4);
45
46
  listOrderingPage.steps.selectOrderingLayoutOption('Reorder as a separate list');
46
47
  });
47
48
 
@@ -25,14 +25,13 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
25
25
 
26
26
  it('When the user has not set any answer in the \'Specify correct answer\' section and switches to the \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
27
27
  matchingPage.steps.switchToGradingView();
28
- matchingPage.steps.verifyPreviewScore(0, 10);
28
+ matchingPage.steps.checkManuallyScoredScoringLabel();
29
29
  matchingPage.steps.verifyCorrectIncorrectIconNotExist(0);
30
30
  matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
31
31
  matchingPage.steps.verifyCorrectIncorrectIconNotExist(2);
32
32
  matchingPage.steps.verifyDropzoneNumeration();
33
- matchingPage.steps.verifyCorrectAnswerSectionLabel();
34
33
  matchingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
35
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([[''],[''],['']]);
34
+ matchingPage.steps.verifyCorrectAnswerSectionNotExists();
36
35
  });
37
36
 
38
37
  it('When the user has not set any answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the responses, full points should be allocated and correct answer section should not be displayed', () => {
@@ -40,11 +39,10 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
40
39
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Bear', dropzoneIndex: 0 }]);
41
40
  matchingPage.steps.clickAndDropOptionOutsideDropzoneWithIndexPreviewTab(0);
42
41
  matchingPage.steps.switchToGradingView();
43
- matchingPage.steps.verifyPreviewScore(10, 10);
44
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(0);
45
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(1);
46
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(2);
47
- matchingPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
42
+ matchingPage.steps.checkManuallyScoredScoringLabel();
43
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(0);
44
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
45
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(2);
48
46
  matchingPage.steps.verifyCorrectAnswerSectionNotExists();
49
47
  });
50
48
 
@@ -52,12 +50,11 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
52
50
  matchingPage.steps.resetQuestionPreview();
53
51
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Bear', dropzoneIndex: 0 }]);
54
52
  matchingPage.steps.switchToGradingView();
55
- matchingPage.steps.verifyPreviewScore(0, 10);
56
- matchingPage.steps.verifyIncorrectOptionIcon(0);
57
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(1);
58
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(2);
59
- matchingPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
60
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([[''],[''],['']]);
53
+ matchingPage.steps.checkManuallyScoredScoringLabel();
54
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(0);
55
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
56
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(2);
57
+ matchingPage.steps.verifyCorrectAnswerSectionNotExists();
61
58
  });
62
59
 
63
60
  it('When the user sets an partial blank answer in the \'Specify correct answer\' section then on switching to \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
@@ -72,7 +69,7 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
72
69
  matchingPage.steps.verifyDropzoneNumeration();
73
70
  matchingPage.steps.verifyCorrectAnswerSectionLabel();
74
71
  matchingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
75
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'],[''],['Cat']]);
72
+ matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'], [''], ['Cat']]);
76
73
  });
77
74
 
78
75
  it('When the user has set an partial blank answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, no points should be allocated and correct answer section should be displayed', () => {
@@ -82,10 +79,10 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
82
79
  matchingPage.steps.switchToGradingView();
83
80
  matchingPage.steps.verifyPreviewScore(0, 10);
84
81
  matchingPage.steps.verifyIncorrectOptionIconForEmptyOption(0);
85
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(1);
82
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
86
83
  matchingPage.steps.verifyIncorrectOptionIconForEmptyOption(2);
87
84
  matchingPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
88
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'],[''],['Cat']]);
85
+ matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'], [''], ['Cat']]);
89
86
  });
90
87
 
91
88
  it('When the user has set an partial blank answer in the \'Specify correct answer\' section and enters responses in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, correct icon should be displayed for blank response, no points should be allocated and correct answer section should be displayed', () => {
@@ -94,10 +91,10 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
94
91
  matchingPage.steps.switchToGradingView();
95
92
  matchingPage.steps.verifyPreviewScore(0, 10);
96
93
  matchingPage.steps.verifyCorrectOptionIcon(0);
97
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(1);
94
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
98
95
  matchingPage.steps.verifyIncorrectOptionIconForEmptyOption(2);
99
96
  matchingPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
100
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'],[''],['Cat']]);
97
+ matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'], [''], ['Cat']]);
101
98
  });
102
99
 
103
100
  it('When the user attempts the question incorrectly, then the user should be awarded 0 points and on switching to \'Grading\' view, incorrect icons should be displayed besides all incorrect responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers along with numeration should be displayed', () => {
@@ -109,7 +106,7 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
109
106
  matchingPage.steps.verifyIncorrectOptionIcon(1);
110
107
  matchingPage.steps.verifyIncorrectOptionIcon(2);
111
108
  matchingPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
112
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'],[''],['Cat']]);
109
+ matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'], [''], ['Cat']]);
113
110
  });
114
111
 
115
112
  it('When user attempts the question correctly, the user should be awarded full points and on switching to \'Grading\' view, then correct icons should be displayed beside all the correct responses, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
@@ -119,7 +116,7 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
119
116
  matchingPage.steps.switchToGradingView();
120
117
  matchingPage.steps.verifyPreviewTabPointsBackgroundForCorrectAnswer();
121
118
  matchingPage.steps.verifyCorrectOptionIcon(0);
122
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(1);
119
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
123
120
  matchingPage.steps.verifyCorrectOptionIcon(2);
124
121
  matchingPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
125
122
  matchingPage.steps.verifyCorrectAnswerSectionNotExists();
@@ -142,14 +139,13 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
142
139
 
143
140
  it('When the user has not set any answer in the \'Specify correct answer\' section and switches to the \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
144
141
  matchingPage.steps.switchToGradingView();
145
- matchingPage.steps.verifyPreviewScore(0, 24);
142
+ matchingPage.steps.checkManuallyScoredScoringLabel();
146
143
  matchingPage.steps.verifyCorrectIncorrectIconNotExist(0);
147
144
  matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
148
145
  matchingPage.steps.verifyCorrectIncorrectIconNotExist(2);
149
146
  matchingPage.steps.verifyDropzoneNumeration();
150
- matchingPage.steps.verifyCorrectAnswerSectionLabel();
151
147
  matchingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
152
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([[''],[''],['']]);
148
+ matchingPage.steps.verifyCorrectAnswerSectionNotExists();
153
149
  });
154
150
 
155
151
  it('When the user has not set any answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the responses, full points should be allocated and correct answer section should not be displayed', () => {
@@ -157,10 +153,10 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
157
153
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Bear', dropzoneIndex: 0 }]);
158
154
  matchingPage.steps.clickAndDropOptionOutsideDropzoneWithIndexPreviewTab(0);
159
155
  matchingPage.steps.switchToGradingView();
160
- matchingPage.steps.verifyPreviewScore(24, 24);
161
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(0);
162
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(1);
163
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(2);
156
+ matchingPage.steps.checkManuallyScoredScoringLabel();
157
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(0);
158
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
159
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(2);
164
160
  matchingPage.steps.verifyCorrectAnswerSectionNotExists();
165
161
  });
166
162
 
@@ -168,11 +164,12 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
168
164
  matchingPage.steps.resetQuestionPreview();
169
165
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Bear', dropzoneIndex: 0 }]);
170
166
  matchingPage.steps.switchToGradingView();
171
- matchingPage.steps.verifyPreviewScore(16, 24);
172
- matchingPage.steps.verifyIncorrectOptionIcon(0);
173
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(1);
174
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(2);
175
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([[''],[''],['']]);
167
+ matchingPage.steps.checkManuallyScoredScoringLabel();
168
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(0);
169
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
170
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(2);
171
+ matchingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
172
+ matchingPage.steps.verifyCorrectAnswerSectionNotExists();
176
173
  });
177
174
 
178
175
  it('When the user sets an partial blank answer in the \'Specify correct answer\' section then on switching to \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
@@ -187,7 +184,7 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
187
184
  matchingPage.steps.verifyDropzoneNumeration();
188
185
  matchingPage.steps.verifyCorrectAnswerSectionLabel();
189
186
  matchingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
190
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'],[''],['Cat']]);
187
+ matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'], [''], ['Cat']]);
191
188
  });
192
189
 
193
190
  it('When the user has set an partial blank answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, points should be allocated for the correct answers and correct answer section should be displayed', () => {
@@ -197,9 +194,9 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
197
194
  matchingPage.steps.switchToGradingView();
198
195
  matchingPage.steps.verifyPreviewScore(8, 24);
199
196
  matchingPage.steps.verifyIncorrectOptionIconForEmptyOption(0);
200
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(1);
197
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
201
198
  matchingPage.steps.verifyIncorrectOptionIconForEmptyOption(2);
202
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'],[''],['Cat']]);
199
+ matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'], [''], ['Cat']]);
203
200
  });
204
201
 
205
202
  it('When the user has set an partial blank answer in the \'Specify correct answer\' section and enters responses in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, correct icon should be displayed for blank response, points should be allocated for the correct answers and correct answer section should be displayed', () => {
@@ -208,9 +205,9 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
208
205
  matchingPage.steps.switchToGradingView();
209
206
  matchingPage.steps.verifyPreviewScore(16, 24);
210
207
  matchingPage.steps.verifyCorrectOptionIcon(0);
211
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(1);
208
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
212
209
  matchingPage.steps.verifyIncorrectOptionIconForEmptyOption(2);
213
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'],[''],['Cat']]);
210
+ matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'], [''], ['Cat']]);
214
211
  });
215
212
 
216
213
  it('When the user attempts the question incorrectly, then the user should be awarded 0 points and on switching to \'Grading\' view, incorrect icons should be displayed besides all incorrect responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers along with numeration should be displayed', () => {
@@ -219,9 +216,9 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
219
216
  matchingPage.steps.verifyPreviewScore(0, 24);
220
217
  matchingPage.steps.switchToGradingView();
221
218
  matchingPage.steps.verifyIncorrectOptionIcon(0);
222
- matchingPage.steps.verifyIncorrectOptionIconForEmptyOption(1);
219
+ matchingPage.steps.verifyIncorrectOptionIcon(1);
223
220
  matchingPage.steps.verifyIncorrectOptionIcon(2);
224
- matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'],[''],['Cat']]);
221
+ matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Elephant'], [''], ['Cat']]);
225
222
  });
226
223
 
227
224
  it('When user attempts the question correctly, the user should be awarded full points and on switching to \'Grading\' view, then correct icons should be displayed beside all the correct responses, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
@@ -231,7 +228,7 @@ describe('Create item page - Matching: Scoring for blank responses', () => {
231
228
  matchingPage.steps.switchToGradingView();
232
229
  matchingPage.steps.verifyPreviewTabPointsBackgroundForCorrectAnswer();
233
230
  matchingPage.steps.verifyCorrectOptionIcon(0);
234
- matchingPage.steps.verifyCorrectOptionIconForEmptyOption(1);
231
+ matchingPage.steps.verifyCorrectIncorrectIconNotExist(1);
235
232
  matchingPage.steps.verifyCorrectOptionIcon(2);
236
233
  matchingPage.steps.verifyCorrectAnswerSectionNotExists();
237
234
  });
@@ -68,7 +68,7 @@ describe('Create Item page - Matching', () => {
68
68
  ]);
69
69
  matchingPage.steps.switchToGradingView();
70
70
  matchingPage.steps.verifyAnswerStatusBannerExist();
71
- matchingPage.steps.verifyCorrectAnswerSectionExist();
71
+ matchingPage.steps.verifyCorrectAnswerSectionNotExists();
72
72
  });
73
73
  });
74
74
 
@@ -308,6 +308,7 @@ describe('Create Item Page: Matching: Click and drop cases for \'Standard\' and
308
308
  before(() => {
309
309
  matchingPage.steps.navigateToCreateQuestion('matching');
310
310
  cy.barsPreLoaderWait();
311
+ matchingPage.steps.addQuestionInstructions('Arrange the options in correct order.');
311
312
  matchingPage.steps.expandDraggableOptionsLayoutDropdown();
312
313
  matchingPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
313
314
  matchingPage.steps.addGroupTitle('Group A');
@@ -468,6 +469,7 @@ describe('Create Item Page: Matching: Click and drop cases for \'Standard\' and
468
469
  before(() => {
469
470
  matchingPage.steps.navigateToCreateQuestion('matching');
470
471
  cy.barsPreLoaderWait();
472
+ matchingPage.steps.addQuestionInstructions('Arrange the options in correct order.');
471
473
  matchingPage.steps.expandDraggableOptionsLayoutDropdown();
472
474
  matchingPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
473
475
  matchingPage.steps.addGroupTitle('Group A');
@@ -194,6 +194,7 @@ describe('Create Item page - Matching: Draggable options section', () => {
194
194
  before(() => {
195
195
  matchingPage.steps.navigateToCreateQuestion('matching');
196
196
  cy.barsPreLoaderWait();
197
+ matchingPage.steps.addQuestionInstructions('Please match the options with the correct groups');
197
198
  matchingPage.steps.expandDraggableOptionsLayoutDropdown();
198
199
  matchingPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
199
200
  });
@@ -222,6 +223,7 @@ describe('Create Item page - Matching: Draggable options section', () => {
222
223
  before(() => {
223
224
  matchingPage.steps.navigateToCreateQuestion('matching');
224
225
  cy.barsPreLoaderWait();
226
+ matchingPage.steps.addQuestionInstructions('Please match the options with the correct groups');
225
227
  matchingPage.steps.expandDraggableOptionsLayoutDropdown();
226
228
  matchingPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
227
229
  });
@@ -234,6 +236,7 @@ describe('Create Item page - Matching: Draggable options section', () => {
234
236
  before(() => {
235
237
  matchingPage.steps.navigateToCreateQuestion('matching');
236
238
  cy.barsPreLoaderWait();
239
+ matchingPage.steps.addQuestionInstructions('Please match the options with the correct groups');
237
240
  matchingPage.steps.expandDraggableOptionsLayoutDropdown();
238
241
  matchingPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
239
242
  matchingPage.steps.enterTextInOptionInputField(['Petals', 'Leaves', 'Roots']);
@@ -31,7 +31,7 @@ describe('Edit item - Matching', () => {
31
31
  matchingPage.steps.clearQuestionInstructionsInputField();
32
32
  matchingPage.steps.addTextInQuestionInstructionsInputField('Matching question instruction Updated');
33
33
  matchingPage.steps.saveAQuestionAndVerifySnackbar();
34
- matchingPage.steps.verifyQuestionInstructionsTextPreviewTab( 'Matching question instruction Updated');
34
+ matchingPage.steps.verifyQuestionInstructionsTextPreviewTab('Matching question instruction Updated');
35
35
  });
36
36
 
37
37
  it('User should be able to edit options and save the question', () => {
@@ -65,7 +65,8 @@ describe('Edit item - Matching', () => {
65
65
  matchingPage.steps.editItem();
66
66
  matchingPage.steps.expandScoringTypeDropdown();
67
67
  matchingPage.steps.selectOptionFromScoringTypeDropdown('Non scored');
68
- matchingPage.steps.clickAndDropOptionInDropzoneSpecifyCorrectAnswerSection([{ optionText: 'Penguin', dropzoneIndex: 0 }, { optionText: 'Eagle', dropzoneIndex: 1 },, { optionText: 'Dog', dropzoneIndex: 2 }]);
68
+ //Failing due to https://weldnorthed.atlassian.net/browse/IEI-5502
69
+ // matchingPage.steps.clickAndDropOptionInDropzoneSpecifyCorrectAnswerSection([{ optionText: 'Penguin', dropzoneIndex: 0 }, { optionText: 'Eagle', dropzoneIndex: 1 },, { optionText: 'Dog', dropzoneIndex: 2 }]);
69
70
  matchingPage.steps.saveAQuestionAndVerifySnackbar();
70
71
  });
71
72
  });
@@ -44,6 +44,8 @@ describe('Create item page - Matching : Header section and Saving question', ()
44
44
  before(() => {
45
45
  matchingPage.steps.navigateToCreateQuestion('matching');
46
46
  cy.barsPreLoaderWait();
47
+ matchingPage.steps.addTextInQuestionInstructionsInputField('Matching');
48
+ utilities.verifyElementCount(matchingPage.optionInputField(), 3);
47
49
  });
48
50
 
49
51
  describe('Validation error messages', () => {
@@ -55,7 +57,6 @@ describe('Create item page - Matching : Header section and Saving question', ()
55
57
  });
56
58
 
57
59
  it('Validation error messages should disappear when required input fields are filled', () => {
58
- matchingPage.steps.addTextInQuestionInstructionsInputField('Matching');
59
60
  matchingPage.steps.enterTextInPromptInputField(promptTextArray);
60
61
  matchingPage.steps.enterTextInOptionInputField(options);
61
62
  matchingPage.steps.clickAndDropOptionInDropzoneSpecifyCorrectAnswerSection([{ optionText: 'Flower', dropzoneIndex: 0 }, { optionText: 'Leaves', dropzoneIndex: 1 }, { optionText: 'Flowers', dropzoneIndex: 2 }]);
@@ -61,6 +61,7 @@ describe('Create Item page - Matching : Student view settings', () => {
61
61
  before(() => {
62
62
  matchingPage.steps.navigateToCreateQuestion('matching');
63
63
  cy.barsPreLoaderWait();
64
+ utilities.verifyElementCount(matchingPage.optionInputField(), 3);
64
65
  matchingPage.steps.addMultipleOptionFields(3);
65
66
  matchingPage.steps.enterTextInPromptInputField(promptArray);
66
67
  matchingPage.steps.enterTextInOptionInputField(options);
@@ -422,6 +423,7 @@ describe('Create Item page - Matching : Student view settings', () => {
422
423
  before(() => {
423
424
  matchingPage.steps.navigateToCreateQuestion('matching');
424
425
  cy.barsPreLoaderWait();
426
+ utilities.verifyElementCount(matchingPage.optionInputField(), 3);
425
427
  matchingPage.steps.allotPoints(5);
426
428
  });
427
429
 
@@ -19,7 +19,7 @@ describe('Create Item page - Matching : Student view settings for grouped option
19
19
  before(() => {
20
20
  matchingPage.steps.navigateToCreateQuestion('matching');
21
21
  cy.barsPreLoaderWait();
22
- matchingPage.steps.addTextInQuestionInstructionsInputField('Matching');
22
+ matchingPage.steps.addTextInQuestionInstructionsInputField('Matching question - Randomize options');
23
23
  matchingPage.steps.setGroupedOptions();
24
24
  });
25
25
 
@@ -26,7 +26,7 @@ describe('Create item page - Matching-Dropdown: Scoring for blank responses', ()
26
26
 
27
27
  it('When the user has not set any answer in the \'Specify correct answer\' section and switches to the \'Grading\' view without attempting the question, dropdown numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
28
28
  matchingPage.steps.switchToGradingView();
29
- matchingPage.steps.verifyPreviewScore(0, 10);
29
+ matchingPage.steps.checkManuallyScoredScoringLabel();
30
30
  matchingPage.steps.verifyCorrectIncorrectIconNotExistDropdown(0);
31
31
  matchingPage.steps.verifyCorrectIncorrectIconNotExistDropdown(1);
32
32
  matchingPage.steps.verifyCorrectIncorrectIconNotExistDropdown(2);
@@ -42,12 +42,12 @@ describe('Create item page - Matching-Dropdown: Scoring for blank responses', ()
42
42
  matchingPage.steps.resetQuestionPreview();
43
43
  matchingPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: optionsArray[3] }]);
44
44
  matchingPage.steps.switchToGradingView();
45
- matchingPage.steps.verifyPreviewScore(0, 10);
46
- matchingPage.steps.verifyIncorrectOptionIconDropdown(0);
47
- matchingPage.steps.verifyCorrectOptionIconDropdown(1);
48
- matchingPage.steps.verifyCorrectOptionIconDropdown(2);
45
+ matchingPage.steps.checkManuallyScoredScoringLabel();
46
+ matchingPage.steps.verifyCorrectIncorrectIconNotExistDropdown(0);
47
+ matchingPage.steps.verifyCorrectIncorrectIconNotExistDropdown(1);
48
+ matchingPage.steps.verifyCorrectIncorrectIconNotExistDropdown(2);
49
49
  matchingPage.steps.verifyCorrectAnswerSectionLabel();
50
- matchingPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
50
+ matchingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
51
51
  matchingPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([[''], [''], ['']]);
52
52
  });
53
53
 
@@ -327,7 +327,11 @@ const tests = {
327
327
  });
328
328
 
329
329
  it('If user has not selected correct answer in the correct accordion, then the Add alternative answer button should be in disabled state', () => {
330
- utilities.verifyElementDisabled(autoScoredSpecifyCorrectAnswerSection.alternativeAnswerButton());
330
+ if (questionType === 'list ordering') {
331
+ utilities.verifyElementNotDisabled(autoScoredSpecifyCorrectAnswerSection.alternativeAnswerButton());
332
+ } else {
333
+ utilities.verifyElementDisabled(autoScoredSpecifyCorrectAnswerSection.alternativeAnswerButton());
334
+ }
331
335
  });
332
336
  },
333
337
 
@@ -26,6 +26,7 @@ const selectors = {
26
26
  const steps = {
27
27
  expandDraggableOptionsLayoutDropdown: () => {
28
28
  draggableOptionsSectionComponent.draggableOptionsLayoutDropdown()
29
+ .trigger('mouseover')
29
30
  .click();
30
31
  },
31
32
 
@@ -35,6 +36,7 @@ const steps = {
35
36
  */
36
37
  selectOptionFromDraggableOptionsLayoutDropdown: (listOption) => {
37
38
  draggableOptionsSectionComponent.draggableOptionsLayoutDropdownListOptions(listOption)
39
+ .trigger('mouseover')
38
40
  .click();
39
41
  },
40
42
 
@@ -255,7 +255,7 @@ const steps = {
255
255
  break;
256
256
  case 'none':
257
257
  dragIcon
258
- .should('not.be.visible');
258
+ .should('not.exist');
259
259
  break;
260
260
  default:
261
261
  throw new Error('Invalid drag handle option');
@@ -773,6 +773,7 @@ const steps = {
773
773
  */
774
774
  expandPositionDropdownSpecifyCorrectAnswerSection: (dropdownIndex) => {
775
775
  utilities.getNthElement(listOrderingPage.positionDropdownSpecifyCorrectAnswerSection(), dropdownIndex)
776
+ .trigger('mouseover')
776
777
  .click();
777
778
  },
778
779
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "itemengine-cypress-automation",
3
- "version": "1.0.365",
3
+ "version": "1.0.366",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {