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.
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/studentViewSettingsForGroupedLayout.js +3 -0
- package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/draggableOptions.js +2 -0
- package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/manuallyAndNonScored.js +2 -4
- package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +1 -0
- package/cypress/e2e/ILC/ListOrderingDropdown/manuallyAndNonScoredEditTab.js +2 -1
- package/cypress/e2e/ILC/ListOrderingDropdown/previewContentsForAllViews.smoke.js +2 -4
- package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +1 -2
- package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js +10 -15
- package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +1 -0
- package/cypress/e2e/ILC/ListOrderingNew/manuallyAndNonScoredEditTab.js +2 -0
- package/cypress/e2e/ILC/ListOrderingNew/specifyCorrectAnswerSection.js +7 -23
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/headerSection.js +1 -0
- package/cypress/e2e/ILC/Matching/Scoring/blankResponseScoring.js +38 -41
- package/cypress/e2e/ILC/Matching/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +1 -1
- package/cypress/e2e/ILC/Matching/clickAndDrop.js +2 -0
- package/cypress/e2e/ILC/Matching/draggableOptions.js +3 -0
- package/cypress/e2e/ILC/Matching/editQuestion.smoke.js +3 -2
- package/cypress/e2e/ILC/Matching/headerSection.js +2 -1
- package/cypress/e2e/ILC/Matching/studentViewSettings.js +2 -0
- package/cypress/e2e/ILC/Matching/studentViewSettingsForGroupedLayout.js +1 -1
- package/cypress/e2e/ILC/MatchingDropdown/Scoring/blankResponseScoring.js +6 -6
- package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +5 -1
- package/cypress/pages/components/draggableOptionsSectionComponent.js +2 -0
- package/cypress/pages/listOrderingPage.js +2 -1
- 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
|
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
|
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
|
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
|
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
|
-
|
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());
|
package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js
CHANGED
@@ -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
|
-
|
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
|
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
|
-
|
47
|
-
listOrderingPage.steps.
|
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
|
-
|
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
|
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
|
-
|
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.
|
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
|
-
|
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
|
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
|
-
|
45
|
-
|
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
|
-
|
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.
|
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.
|
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.
|
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.
|
44
|
-
matchingPage.steps.
|
45
|
-
matchingPage.steps.
|
46
|
-
matchingPage.steps.
|
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.
|
56
|
-
matchingPage.steps.
|
57
|
-
matchingPage.steps.
|
58
|
-
matchingPage.steps.
|
59
|
-
matchingPage.steps.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
161
|
-
matchingPage.steps.
|
162
|
-
matchingPage.steps.
|
163
|
-
matchingPage.steps.
|
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.
|
172
|
-
matchingPage.steps.
|
173
|
-
matchingPage.steps.
|
174
|
-
matchingPage.steps.
|
175
|
-
matchingPage.steps.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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(
|
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
|
-
|
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.
|
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.
|
46
|
-
matchingPage.steps.
|
47
|
-
matchingPage.steps.
|
48
|
-
matchingPage.steps.
|
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.
|
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
|
-
|
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.
|
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
|
|