itemengine-cypress-automation 1.0.343-IEI-5600-IEI-5708-9440b5e.0 → 1.0.343-IEI-5600-IEI-5708-25494c0.0

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 (124) hide show
  1. package/cypress/e2e/ILC/AudioResponseNew/editTabBasicSection.js +4 -16
  2. package/cypress/e2e/ILC/BrainingCampManipulative/editTabBasicSection.js +1 -1
  3. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/gradingViewAndCorrectAnswerView.smoke.js +1 -1
  4. package/cypress/e2e/ILC/ChartsBar/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +33 -0
  5. package/cypress/e2e/ILC/ChartsBar/editTabBasicSection.js +37 -0
  6. package/cypress/e2e/ILC/ChartsBar/headerSection.js +50 -2
  7. package/cypress/e2e/ILC/ChartsLine/editQuestion.smoke.js +3 -1
  8. package/cypress/e2e/ILC/ChartsLine/headerSection.js +18 -1
  9. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/backgroundImageAndCanvasProperties.js +1 -0
  10. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/supportedFileTypes.js +3 -1
  11. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +72 -0
  12. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +38 -0
  13. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +38 -0
  14. package/cypress/e2e/ILC/Graphing/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +86 -0
  15. package/cypress/e2e/ILC/Graphing/checkAddAlternativeButton.js +35 -0
  16. package/cypress/e2e/ILC/Graphing/editQuestion.smoke.js +28 -0
  17. package/cypress/e2e/ILC/Graphing/editTabBasicSection.js +38 -0
  18. package/cypress/e2e/ILC/Graphing/headerSection.js +37 -4
  19. package/cypress/e2e/ILC/GridFill/addAlternateButton.js +40 -0
  20. package/cypress/e2e/ILC/GridFill/headerSection.js +3 -3
  21. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +39 -0
  22. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  23. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +39 -0
  24. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountAllOrNothingCorrectPointsGreaterThanAlternativePoints.js +37 -0
  25. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountallOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  26. package/cypress/e2e/ILC/GridFill/scoring/cellshadeCountAllOrNothingAlternativePointsGreaterThanCorrectPoints.js +36 -0
  27. package/cypress/e2e/ILC/GridFill/scoring/checkLabelSaveAsYouGo.js +75 -0
  28. package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +2 -1
  29. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +24 -0
  30. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +24 -0
  31. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +24 -0
  32. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +86 -0
  33. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsBasic.js +1 -1
  34. package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +1 -1
  35. package/cypress/e2e/ILC/ListOrderingDropdown/checkAddAlternativeButton.js +35 -0
  36. package/cypress/e2e/ILC/ListOrderingDropdown/editTabBasicSection.js +24 -0
  37. package/cypress/e2e/ILC/ListOrderingDropdown/headerSection.js +108 -0
  38. package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +6 -10
  39. package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js +2 -1
  40. package/cypress/e2e/ILC/ListOrderingNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +52 -0
  41. package/cypress/e2e/ILC/ListOrderingNew/editTabBasicSection.js +23 -0
  42. package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +35 -9
  43. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +41 -0
  44. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +30 -0
  45. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +50 -0
  46. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +101 -0
  47. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/checkAddAlternativeButton.js +38 -0
  48. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabBasicSection.js +24 -0
  49. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabScoring.js +4 -1
  50. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/headerSection.js +35 -1
  51. package/cypress/e2e/ILC/Matching/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +98 -0
  52. package/cypress/e2e/ILC/Matching/checkAlternativeButton.js +38 -0
  53. package/cypress/e2e/ILC/Matching/clickAndDrop.js +3 -5
  54. package/cypress/e2e/ILC/Matching/draggableOptions.js +4 -0
  55. package/cypress/e2e/ILC/Matching/editTabBasicSection.js +41 -0
  56. package/cypress/e2e/ILC/Matching/headerSection.js +36 -11
  57. package/cypress/e2e/ILC/Matching/questionInstructionsAndPromptSection.js +2 -15
  58. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +79 -0
  59. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +42 -0
  60. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +42 -0
  61. package/cypress/e2e/ILC/NumberLine/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +73 -0
  62. package/cypress/e2e/ILC/NumberLine/checkAddAlternativeButton.js +32 -0
  63. package/cypress/e2e/ILC/NumberLine/editTabSection.js +38 -0
  64. package/cypress/e2e/ILC/NumberLine/headerSection.js +34 -4
  65. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +81 -0
  66. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +43 -0
  67. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +43 -0
  68. package/cypress/e2e/ILC/NumberLineLabel/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +76 -0
  69. package/cypress/e2e/ILC/NumberLineLabel/checkAddAlternativeButton.js +34 -0
  70. package/cypress/e2e/ILC/NumberLineLabel/editTabSection.js +38 -0
  71. package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +37 -4
  72. package/cypress/e2e/ILC/NumberLineLabel/manuallyAndNonScoredEditTab.js +2 -1
  73. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/editQuestion.smoke.js +1 -1
  74. package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +2 -4
  75. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +86 -0
  76. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +86 -0
  77. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  78. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +3 -1
  79. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  80. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  81. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsScoringBasic.js +10 -3
  82. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +4 -2
  83. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +5 -3
  84. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  85. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsScoringBasic.js +4 -0
  86. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +64 -0
  87. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAddEvaluation.js +2 -0
  88. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAlternateAnswer.js +2 -0
  89. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +64 -0
  90. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  91. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  92. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  93. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  94. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsScoringBasic.js +8 -0
  95. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  96. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  97. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  98. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasic.js +1 -0
  99. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasicForAlternateAnswer.js +2 -0
  100. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +2 -0
  101. package/cypress/e2e/ILC/TextEntryMath/editTabBasicSection.js +27 -3
  102. package/cypress/e2e/ILC/TextEntryMath/headerSection.js +43 -0
  103. package/cypress/e2e/ILC/ToolAudioPlayerNew/headerSection.js +1 -1
  104. package/cypress/e2e/ILC/UploadResponse/editTabBasicSection.js +34 -0
  105. package/cypress/e2e/ILC/UploadResponse/headerSection.js +38 -1
  106. package/cypress/e2e/ILC/VideoResponseNew/editTabBasicSection.js +14 -29
  107. package/cypress/e2e/ILC/chartsDotsPlot/headerSection.js +16 -1
  108. package/cypress/pages/brainingCampManipulativePage.js +1 -1
  109. package/cypress/pages/chartsBarPage.js +20 -0
  110. package/cypress/pages/components/createQuestionBasePage.js +7 -0
  111. package/cypress/pages/components/desmosToolComponent.js +1 -1
  112. package/cypress/pages/components/scoringSectionBaseEditTab.js +3 -0
  113. package/cypress/pages/desmos3DGraphingPage.js +149 -4
  114. package/cypress/pages/desmosGeometryPage.js +184 -4
  115. package/cypress/pages/graphingPage.js +26 -4
  116. package/cypress/pages/gridFillPage.js +16 -6
  117. package/cypress/pages/listOrderingPage.js +32 -1
  118. package/cypress/pages/matchingPage.js +26 -7
  119. package/cypress/pages/numberLineLabelPage.js +26 -0
  120. package/cypress/pages/numberLinePage.js +15 -0
  121. package/cypress/pages/textEntryMathPage.js +21 -0
  122. package/cypress/pages/uploadResponsePage.js +2 -1
  123. package/cypress/pages/videoResponsePage.js +3 -0
  124. package/package.json +1 -1
@@ -1,7 +1,10 @@
1
1
  import abortEarlySetup from "../../../support/helpers/abortEarly";
2
- import { dialogBoxBase, graphingPage } from "../../../pages";
2
+ import { dialogBoxBase, graphingPage, itemPreviewPage } from "../../../pages";
3
+ import { browseItemsPage } from "../../../pages/components";
3
4
  import utilities from "../../../support/helpers/utilities";
4
5
 
6
+ var itemReferenceID = "";
7
+
5
8
  describe('Create item page - Graphing: Header section and saving question', () => {
6
9
  before(() => {
7
10
  cy.loginAs('admin');
@@ -45,11 +48,11 @@ describe('Create item page - Graphing: Header section and saving question', () =
45
48
  });
46
49
 
47
50
  describe('Validation error messages', () => {
48
- dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton();
51
+ dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please set points']);
49
52
 
50
- it('No validation error messages should be displayed below required input fields', () => {
53
+ it('Validation error messages should be displayed below required input fields', () => {
51
54
  graphingPage.steps.verifyQuestionInstructionsErrorMessageIsNotDisplayed();
52
- graphingPage.steps.verifyPointsFieldErrorMessageIsNotDisplayed();
55
+ graphingPage.steps.verifyWarningIconOnRequiredFields(['Please set points']);
53
56
  });
54
57
 
55
58
  it('Validation error messages should disappear when required input fields are filled', () => {
@@ -72,5 +75,35 @@ describe('Create item page - Graphing: Header section and saving question', () =
72
75
 
73
76
  graphingPage.tests.verifySavedSuccessfullySnackbarCSSAndA11y();
74
77
  });
78
+
79
+ describe('Saving a question with incomplete authoring', () => {
80
+ abortEarlySetup();
81
+ before(() => {
82
+ graphingPage.steps.navigateToCreateQuestion('Graphing');
83
+ cy.barsPreLoaderWait();
84
+ });
85
+
86
+ it('User should be able to save the question with incomplete authoring and display a snackbar with the text "Saved successfully!" when the Save Question button is clicked', () => {
87
+ dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please set points']);
88
+ graphingPage.steps.saveAQuestionWithIncompleteAuthoring();
89
+ });
90
+ graphingPage.tests.verifySavedSuccessfullySnackbarCSSAndA11y();
91
+ });
92
+ });
93
+
94
+ describe('Save as you go - Browse item page contents', () => {
95
+ abortEarlySetup();
96
+ before(() => {
97
+ graphingPage.steps.navigateToCreateQuestion('Graphing');
98
+ cy.barsPreLoaderWait();
99
+ graphingPage.steps.saveAQuestionWithIncompleteAuthoring();
100
+ utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
101
+ itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
102
+ browseItemsPage.steps.navigateToBrowseItemsPage();
103
+ });
104
+
105
+ it('When user saves an incompletely authored question then a warning icon should be visible in browse items page', () => {
106
+ browseItemsPage.steps.verifyWarningIconInBrowseItemPage(`${itemReferenceID}`);
107
+ });
75
108
  });
76
109
  });
@@ -0,0 +1,40 @@
1
+ import { gridFillPage } from "../../../pages";
2
+ import abortEarlySetup from "../../../support/helpers/abortEarly";
3
+
4
+ describe('Create question page - Drag and Drop into Categories', () => {
5
+ before(() => {
6
+ cy.loginAs('admin');
7
+ });
8
+
9
+ describe('Check Alternative Answer Button', () => {
10
+ abortEarlySetup();
11
+ before(() => {
12
+ gridFillPage.steps.navigateToCreateQuestion('grid fill');
13
+ cy.barsPreLoaderWait();
14
+ });
15
+
16
+ it('When correct answer is not set then alternative answer should be disabled', () => {
17
+ gridFillPage.steps.addTextInQuestionInstructionsInputField('Grid Fill');
18
+ gridFillPage.steps.checkAlternativeButtonDisabled();
19
+ });
20
+
21
+ it('When correct answer is set then alternative answer should be enabled', () => {
22
+ gridFillPage.steps.allotPoints(20);
23
+ gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 0);
24
+ gridFillPage.steps.checkAlternativeButtonEnabled();
25
+ });
26
+
27
+ it('User should be able to add \'Alternative\' answer using the \'Add alternative\' button, when user has not set any answer in the \'Alternative\' accordion and clicks on the \'Correct\' accordion then \'Correct\' accordion should be expanded', () => {
28
+ gridFillPage.steps.clickOnAddAlternativeAnswerButton();
29
+ });
30
+
31
+ it('Alternative answer should not be allowed to be added when user has not set cell count in the correct answer section', () => {
32
+ gridFillPage.steps.uncheckMatchExactPositionOfCellsCheckbox();
33
+ gridFillPage.steps.checkAlternativeButtonDisabled();
34
+ gridFillPage.steps.addInputToCellShadeCountInputField(2);
35
+ gridFillPage.steps.checkAlternativeButtonEnabled();
36
+ gridFillPage.steps.clickOnAddAlternativeAnswerButton();
37
+ gridFillPage.steps.expandCorrectAnswerAccordion();
38
+ });
39
+ });
40
+ });
@@ -44,12 +44,12 @@ describe('Create item page - Grid fill: Header section and Saving question', ()
44
44
  describe('Validation error messages', () => {
45
45
  dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please set points']);
46
46
 
47
- it('Validation error messages and error icons should not be displayed below required input fields', () => {
47
+ it('Validation error messages should be displayed below required input fields', () => {
48
48
  gridFillPage.steps.verifyQuestionInstructionsErrorMessageIsNotDisplayed();
49
- gridFillPage.steps.verifyPointsFieldErrorMessageIsNotDisplayed();
50
- gridFillPage.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
49
+ gridFillPage.steps.verifyWarningIconOnRequiredFields(['Please set points']);
51
50
  });
52
51
 
52
+ //failed due to https://redmine.zeuslearning.com/issues/564243
53
53
  it('Validation error messages should disappear when required input fields are filled', () => {
54
54
  gridFillPage.steps.addTextInQuestionInstructionsInputField('Grid fill');
55
55
  gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 0);
@@ -190,4 +190,43 @@ describe('Create item page - Grid fill: All or nothing with alternative answers'
190
190
  gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');*/
191
191
  });
192
192
  });
193
+
194
+ describe('Save as you go: Auto Scored - All or nothing with alternate answer - When Alternative answer has points that are more than Correct answer points and alternative answer is a blank response', () => {
195
+ abortEarlySetup();
196
+ before(() => {
197
+ gridFillPage.steps.navigateToCreateQuestion('grid fill');
198
+ cy.barsPreLoaderWait();
199
+ gridFillPage.steps.allotPoints(10);
200
+ gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 0);
201
+ gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 1);
202
+ gridFillPage.steps.addAlternativeAnswerAccordion(1);
203
+ gridFillPage.steps.allotPoints(20);
204
+ gridFillPage.steps.switchToPreviewTab();
205
+ gridFillPage.steps.switchToGradingView();
206
+ });
207
+ //Save as You go - Blank Response points Greater than Correct Response points
208
+ it('When user has not attempted the question then user should not be awarded any points not even for blank response', () => {
209
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
210
+ gridFillPage.steps.verifyPreviewScore(0, 20);
211
+
212
+ });
213
+
214
+ it('When user has attempted the correct response then user should be awarded the alloted points for correct response', () => {
215
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
216
+ gridFillPage.steps.selectCellPreviewTab(0, 1);
217
+ gridFillPage.steps.verifyCorrectResponseIconPreviewTab(0, 0);
218
+ gridFillPage.steps.verifyCorrectResponseIconPreviewTab(0, 1);
219
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
220
+ gridFillPage.steps.verifyCorrectAnswerSectionNotExists();
221
+ gridFillPage.steps.verifyPreviewScore(10, 20);
222
+ });
223
+
224
+ it('When user has attempted the blank response by selecting and unselecting then user should be awarded the alloted points for blank response', () => {
225
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
226
+ gridFillPage.steps.selectCellPreviewTab(0, 1);
227
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
228
+ gridFillPage.steps.verifyCorrectAnswerSectionNotExists();
229
+ gridFillPage.steps.verifyPreviewScore(20, 20);
230
+ });
231
+ });
193
232
  });
@@ -191,4 +191,43 @@ describe('Create item page - Grid fill: All or nothing with alternative answers'
191
191
  gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');*/
192
192
  });
193
193
  });
194
+
195
+ describe('Save as you go: Auto Scored - All or nothing with alternate answer - When Correct answer points are equal to Alternative answer points and alternative answer is a blank response', () => {
196
+ abortEarlySetup();
197
+ before(() => {
198
+ gridFillPage.steps.navigateToCreateQuestion('grid fill');
199
+ cy.barsPreLoaderWait();
200
+ gridFillPage.steps.allotPoints(10);
201
+ gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 0);
202
+ gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 1);
203
+ gridFillPage.steps.addAlternativeAnswerAccordion(1);
204
+ gridFillPage.steps.allotPoints(10);
205
+ gridFillPage.steps.switchToPreviewTab();
206
+ gridFillPage.steps.switchToGradingView();
207
+ });
208
+
209
+ //Save as You go - Blank Response points equal to Correct Response points
210
+ it('When user has not attempted the question then user should not be awarded any points not even for blank response', () => {
211
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
212
+ gridFillPage.steps.verifyPreviewScore(0, 10);
213
+ });
214
+
215
+ it('When user has attempted the correct response then user should be awarded the alloted points for correct response', () => {
216
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
217
+ gridFillPage.steps.selectCellPreviewTab(0, 1);
218
+ gridFillPage.steps.verifyCorrectResponseIconPreviewTab(0, 0);
219
+ gridFillPage.steps.verifyCorrectResponseIconPreviewTab(0, 1);
220
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
221
+ gridFillPage.steps.verifyCorrectAnswerSectionNotExists();
222
+ gridFillPage.steps.verifyPreviewScore(10, 10);
223
+ });
224
+
225
+ it('When user has attempted the blank response by selecting and unselecting then user should be awarded the alloted points for blank response', () => {
226
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
227
+ gridFillPage.steps.selectCellPreviewTab(0, 1);
228
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
229
+ gridFillPage.steps.verifyCorrectAnswerSectionNotExists();
230
+ gridFillPage.steps.verifyPreviewScore(10,10);
231
+ });
232
+ });
194
233
  });
@@ -260,4 +260,43 @@ describe('Create item page - grid fill: All or nothing with alternative answers'
260
260
  gridFillPage.steps.verifyPreviewScore(13, 20);
261
261
  });
262
262
  });
263
+
264
+ describe('Save as you go: Auto Scored - All or nothing with alternate answer - When Correct answer points are more than Alternative answer points and alternative answer is a blank response', () => {
265
+ abortEarlySetup();
266
+ before(() => {
267
+ gridFillPage.steps.navigateToCreateQuestion('grid fill');
268
+ cy.barsPreLoaderWait();
269
+ gridFillPage.steps.allotPoints(20);
270
+ gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 0);
271
+ gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 1);
272
+ gridFillPage.steps.addAlternativeAnswerAccordion(1);
273
+ gridFillPage.steps.allotPoints(10);
274
+ gridFillPage.steps.switchToPreviewTab();
275
+ gridFillPage.steps.switchToGradingView();
276
+ });
277
+
278
+ // Save as You go - Blank Response points less than Correct Response points
279
+ it('When user has not attempted the question then user should not be awarded any points not even for blank response', () => {
280
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
281
+ gridFillPage.steps.verifyPreviewScore(0, 20);
282
+ });
283
+
284
+ it('When user has attempted the correct response then user should be awarded the alloted points for correct response', () => {
285
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
286
+ gridFillPage.steps.selectCellPreviewTab(0, 1);
287
+ gridFillPage.steps.verifyCorrectResponseIconPreviewTab(0, 0);
288
+ gridFillPage.steps.verifyCorrectResponseIconPreviewTab(0, 1);
289
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
290
+ gridFillPage.steps.verifyCorrectAnswerSectionNotExists();
291
+ gridFillPage.steps.verifyPreviewScore(20, 20);
292
+ });
293
+
294
+ it('When user has attempted the blank response by selecting and unselecting then user should be awarded the alloted points for blank response', () => {
295
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
296
+ gridFillPage.steps.selectCellPreviewTab(0, 1);
297
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
298
+ gridFillPage.steps.verifyCorrectAnswerSectionNotExists();
299
+ gridFillPage.steps.verifyPreviewScore(10, 20);
300
+ });
301
+ });
263
302
  });
@@ -142,4 +142,41 @@ describe('Create item page - Grid fill : All or nothing with alternate accordion
142
142
  gridFillPage.steps.verifyCorrectAnswerSectionNotExists();*/
143
143
  });
144
144
  });
145
+
146
+ describe('Save as you go - Handling blank responses for Cell shade count with alternate answers', () => {
147
+ abortEarlySetup();
148
+ before(() => {
149
+ gridFillPage.steps.navigateToCreateQuestion('grid fill');
150
+ cy.barsPreLoaderWait();
151
+ gridFillPage.steps.uncheckMatchExactPositionOfCellsCheckbox();
152
+ gridFillPage.steps.addInputToCellShadeCountInputField(2);
153
+ gridFillPage.steps.allotPoints(10);
154
+ gridFillPage.steps.clickOnAddAlternativeAnswerButton();
155
+ gridFillPage.steps.allotPoints(5);
156
+ gridFillPage.steps.uncheckMatchExactPositionOfCellsCheckbox();
157
+ gridFillPage.steps.switchToPreviewTab();
158
+ gridFillPage.steps.switchToGradingView();
159
+ });
160
+
161
+ it('When user has not attempted the question, no correct/incorrect status message should exist and score should be 0/10', () => {
162
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
163
+ gridFillPage.steps.verifyPreviewScore(0, 10);
164
+ });
165
+
166
+ it('When user selects the exact number of cells corresponding to the correct answer, full points should be awarded', () => {
167
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
168
+ gridFillPage.steps.selectCellPreviewTab(0, 1);
169
+ gridFillPage.steps.verifyPreviewScore(10, 10);
170
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageExists();
171
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
172
+ });
173
+
174
+ it('When user toggles the same cells (providing a blank response), alternative answer points should be awarded', () => {
175
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
176
+ gridFillPage.steps.selectCellPreviewTab(0, 1);
177
+ gridFillPage.steps.verifyPreviewScore(5, 10);
178
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageExists();
179
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
180
+ });
181
+ });
145
182
  });
@@ -141,5 +141,44 @@ describe('Create item page - Grid fill : All or nothing with alternative answer
141
141
  gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
142
142
  gridFillPage.steps.verifyCorrectAnswerSectionNotExists();*/
143
143
  });
144
+
145
+ });
146
+
147
+ describe('Save as you go: Cell shade count - Auto Scored - All or nothing with alternate answer - When Correct answer points are equal to Alternative answer points and alternative answer is a blank response', () => {
148
+ abortEarlySetup();
149
+ before(() => {
150
+ gridFillPage.steps.navigateToCreateQuestion('grid fill');
151
+ cy.barsPreLoaderWait();
152
+ gridFillPage.steps.uncheckMatchExactPositionOfCellsCheckbox();
153
+ gridFillPage.steps.addInputToCellShadeCountInputField(2);
154
+ gridFillPage.steps.allotPoints(10);
155
+ gridFillPage.steps.clickOnAddAlternativeAnswerButton();
156
+ gridFillPage.steps.allotPoints(10);
157
+ gridFillPage.steps.uncheckMatchExactPositionOfCellsCheckbox();
158
+ gridFillPage.steps.switchToPreviewTab();
159
+ gridFillPage.steps.switchToGradingView();
160
+ });
161
+
162
+ // Save as You go - Blank Response points equal to Correct Response points for Cell shade count
163
+ it('When user has not attempted the question then user should not be awarded any points not even for blank response', () => {
164
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
165
+ gridFillPage.steps.verifyPreviewScore(0, 10);
166
+ });
167
+
168
+ it('When user has attempted the correct response then user should be awarded the alloted points for correct response', () => {
169
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
170
+ gridFillPage.steps.selectCellPreviewTab(0, 1);
171
+ gridFillPage.steps.verifyPreviewScore(10, 10);
172
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageExists();
173
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
174
+ });
175
+
176
+ it('When user has attempted the blank response by selecting and unselecting then user should be awarded the alloted points for blank response', () => {
177
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
178
+ gridFillPage.steps.selectCellPreviewTab(0, 1);
179
+ gridFillPage.steps.verifyPreviewScore(10, 10);
180
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageExists();
181
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
182
+ });
144
183
  });
145
184
  });
@@ -128,4 +128,40 @@ describe('Create item page - Grid fill : Auto scored - All or nothing with alter
128
128
  gridFillPage.steps.verifyCorrectAnswerSectionNotExists();*/
129
129
  });
130
130
  });
131
+
132
+ describe('Save as you go: Cell shade count - Auto Scored - All or nothing with alternate answer - When Alternative answer points are more than Correct answer points and alternative answer is a blank response', () => {
133
+ abortEarlySetup();
134
+ before(() => {
135
+ gridFillPage.steps.navigateToCreateQuestion('grid fill');
136
+ cy.barsPreLoaderWait();
137
+ gridFillPage.steps.uncheckMatchExactPositionOfCellsCheckbox();
138
+ gridFillPage.steps.addInputToCellShadeCountInputField(1);
139
+ gridFillPage.steps.allotPoints(10);
140
+ gridFillPage.steps.addAlternativeAnswerAccordion(1);
141
+ gridFillPage.steps.allotPoints(20);
142
+ gridFillPage.steps.uncheckMatchExactPositionOfCellsCheckbox();
143
+ gridFillPage.steps.switchToPreviewTab();
144
+ gridFillPage.steps.switchToGradingView();
145
+ });
146
+
147
+ // Save as You go - Blank Response points greater than Correct Response points for Cell shade count
148
+ it('When user has not attempted the question then user should not be awarded any points not even for blank response', () => {
149
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
150
+ gridFillPage.steps.verifyPreviewScore(0, 20);
151
+ });
152
+
153
+ it('When user has attempted the correct response then user should be awarded the alloted points for correct response', () => {
154
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
155
+ gridFillPage.steps.verifyPreviewScore(10, 20);
156
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageExists();
157
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
158
+ });
159
+
160
+ it('When user has attempted the blank response by selecting and unselecting then user should be awarded the alloted points for blank response', () => {
161
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
162
+ gridFillPage.steps.verifyPreviewScore(20, 20);
163
+ gridFillPage.steps.verifyCorrectIncorrectStatusMessageExists();
164
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
165
+ });
166
+ });
131
167
  });
@@ -0,0 +1,75 @@
1
+ import { gridFillPage } from "../../../../pages";
2
+ import abortEarlySetup from "../../../../support/helpers/abortEarly";
3
+
4
+ describe('Create item page - Grid fill: Scoring section', () => {
5
+ before(() => {
6
+ cy.loginAs('admin');
7
+ });
8
+
9
+ describe('Label and Banner check for Save as you go', () => {
10
+ abortEarlySetup();
11
+ beforeEach(() => {
12
+ gridFillPage.steps.navigateToCreateQuestion('grid fill');
13
+ cy.barsPreLoaderWait();
14
+ });
15
+ it('When user has not specified the score but user has specified an answer', () => {
16
+ gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 0);
17
+ gridFillPage.steps.switchToPreviewTab();
18
+ gridFillPage.steps.switchToGradingView();
19
+ gridFillPage.steps.checkManuallyScoredScoringLabel();
20
+ gridFillPage.steps.verifyCorrectAnswerSectionExists();
21
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
22
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
23
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
24
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
25
+ gridFillPage.steps.verifyCorrectAnswerSectionExists();
26
+ })
27
+ it('When user has specified and answer and the score is set to 0 points', () => {
28
+ gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 0);
29
+ gridFillPage.steps.allotPoints(0);
30
+ gridFillPage.steps.switchToPreviewTab();
31
+ gridFillPage.steps.switchToGradingView();
32
+ gridFillPage.steps.checkNonScoredScoringLabel();
33
+ gridFillPage.steps.verifyCorrectAnswerSectionExists();
34
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
35
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
36
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
37
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
38
+ gridFillPage.steps.verifyCorrectAnswerSectionExists();
39
+ })
40
+ it('When user has not specified an answer but the score is set to 4 points', () => {
41
+ gridFillPage.steps.allotPoints(4);
42
+ gridFillPage.steps.switchToPreviewTab();
43
+ gridFillPage.steps.switchToGradingView();
44
+ gridFillPage.steps.checkManuallyScoredScoringLabel();
45
+ gridFillPage.steps.verifyCorrectAnswerSectionNotExists();
46
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
47
+ gridFillPage.steps.verifyCorrectAnswerSectionNotExists();
48
+ })
49
+ it('When user has not specified the score correct answer and has not specified the score even for alternate answer', () => {
50
+ gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 0);
51
+ gridFillPage.steps.addAlternativeAnswerAccordion(1);
52
+ gridFillPage.steps.expandCorrectAnswerAccordion();
53
+ cy.wait(1000);
54
+ gridFillPage.steps.deselectCellSpecifyCorrectAnswerSection(0, 0);
55
+ gridFillPage.steps.switchToPreviewTab();
56
+ gridFillPage.steps.switchToGradingView();
57
+ gridFillPage.steps.checkManuallyScoredScoringLabel();
58
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
59
+ gridFillPage.steps.selectCellPreviewTab(0, 1);
60
+ gridFillPage.steps.verifyCorrectAnswerSectionNotExists();
61
+ })
62
+ it('When user has specified the answer and the score is specified by user as well', () => {
63
+ gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 0);
64
+ gridFillPage.steps.allotPoints(4);
65
+ gridFillPage.steps.switchToPreviewTab();
66
+ gridFillPage.steps.switchToGradingView();
67
+ gridFillPage.steps.verifyCorrectAnswerSectionExists();
68
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
69
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
70
+ gridFillPage.steps.selectCellPreviewTab(0, 0);
71
+ gridFillPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
72
+ gridFillPage.steps.verifyCorrectAnswerSectionExists();
73
+ });
74
+ });
75
+ })
@@ -112,7 +112,8 @@ describe('Create item page - Grid fill : Partial equal with alternative answers'
112
112
  gridFillPage.steps.verifyCorrectIncorrectStatusMessageNotExists();*/
113
113
  });
114
114
 
115
- it('When the user has attempts the question with equal number of correct responses from correct and alternative accordion, then the user should be awarded with points of the correctly selected response and on switching to \'Grading\' view, correct icon should be displayed in responses from correct accordion, incorrect icon should be displayed in responses from the alternative accordion, correct icon should be displayed in responses from correct accordion in correct answer section and correct/incorrect status message should not be displayed', () => {
115
+ //Remove skip once https://weldnorthed.atlassian.net/browse/IEI-4541 is resolved
116
+ it.skip('When the user has attempts the question with equal number of correct responses from correct and alternative accordion, then the user should be awarded with points of the correctly selected response and on switching to \'Grading\' view, correct icon should be displayed in responses from correct accordion, incorrect icon should be displayed in responses from the alternative accordion, correct icon should be displayed in responses from correct accordion in correct answer section and correct/incorrect status message should not be displayed', () => {
116
117
  gridFillPage.steps.resetQuestionPreview();
117
118
  gridFillPage.steps.selectCellPreviewTab(0, 0);
118
119
  gridFillPage.steps.selectCellPreviewTab(0, 4);
@@ -189,4 +189,28 @@ describe('Create item page - List ordering: All or nothing scoring with alternat
189
189
  listOrderingPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');*/
190
190
  });
191
191
  });
192
+
193
+ describe('Question Preview: AutoScored - All or Nothing with blank scoring: When alternative answer points are more than correct answer points and alternative has no points plotted', () => {
194
+ abortEarlySetup();
195
+ before(() => {
196
+ listOrderingPage.steps.navigateToCreateQuestion('list ordering');
197
+ cy.barsPreLoaderWait();
198
+ listOrderingPage.steps.selectOrderingLayoutOption('Dropdown menu');
199
+ listOrderingPage.steps.addInputToOptionsInputField(options);
200
+ listOrderingPage.steps.selectPositionForAllOptionsSpecifyCorrectAnswerSection([{ optionIndex: 0, position: '2' }, { optionIndex: 1, position: '3' }, { optionIndex: 2, position: '4' }, { optionIndex: 3, position: '1' }]);
201
+ listOrderingPage.steps.allotPoints(12);
202
+ listOrderingPage.steps.addAlternativeAnswerAccordion(1);
203
+ listOrderingPage.steps.allotPoints(21);
204
+ listOrderingPage.steps.switchToPreviewTab();
205
+ });
206
+
207
+ it('When user attempts the question with responses from the correct accordion, then the user should be awarded points specified for correct points accordion (less than full points) and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, a status message with text \'Your answer is correct\' should be displayed and correct answer section should not be displayed', () => {
208
+ listOrderingPage.steps.selectPositionForAllOptionsSpecifyCorrectAnswerSection([{ optionIndex: 0, position: '2' }, { optionIndex: 1, position: '3' }, { optionIndex: 2, position: '4' }, { optionIndex: 3, position: '1' }]);
209
+ listOrderingPage.steps.verifyPreviewScore(12, 21);
210
+ listOrderingPage.steps.switchToGradingView();
211
+ listOrderingPage.steps.verifyCorrectAnswerSectionNotExist();
212
+ listOrderingPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
213
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
214
+ });
215
+ });
192
216
  });
@@ -191,4 +191,28 @@ describe('Create Item page - List ordering: All or nothing scoring with alternat
191
191
  listOrderingPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');*/
192
192
  });
193
193
  });
194
+
195
+ describe('Question Preview: AutoScored - All or Nothing with blank scoring: When alternative answer points are equal than correct answer points', () => {
196
+ abortEarlySetup();
197
+ before(() => {
198
+ listOrderingPage.steps.navigateToCreateQuestion('list ordering');
199
+ cy.barsPreLoaderWait();
200
+ listOrderingPage.steps.addInputToOptionsInputField(options);
201
+ listOrderingPage.steps.selectOrderingLayoutOption('Dropdown menu');
202
+ listOrderingPage.steps.selectPositionForAllOptionsSpecifyCorrectAnswerSection([{ optionIndex: 0, position: '2' }, { optionIndex: 1, position: '3' }, { optionIndex: 2, position: '4' }, { optionIndex: 3, position: '1' }]);
203
+ listOrderingPage.steps.allotPoints(20);
204
+ listOrderingPage.steps.addAlternativeAnswerAccordion(1);
205
+ listOrderingPage.steps.allotPoints(20);
206
+ listOrderingPage.steps.switchToPreviewTab();
207
+ });
208
+
209
+ it('When user attempts the question with responses from the alternative accordion then full score should be awarded', () => {
210
+ listOrderingPage.steps.selectPositionForAllOptionsSpecifyCorrectAnswerSection([{ optionIndex: 0, position: '2' }, { optionIndex: 1, position: '3' }, { optionIndex: 2, position: '4' }, { optionIndex: 3, position: '1' }]);
211
+ listOrderingPage.steps.verifyPreviewScore(20, 20);
212
+ listOrderingPage.steps.switchToGradingView();
213
+ listOrderingPage.steps.verifyCorrectAnswerSectionNotExist();
214
+ listOrderingPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
215
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
216
+ });
217
+ });
194
218
  });
@@ -271,4 +271,28 @@ describe('Create Item page - List ordering: All or nothing scoring with alternat
271
271
  cy.checkAccessibility(listOrderingPage.previewTabQuestionWrapper());
272
272
  });
273
273
  });
274
+
275
+ describe('Question Preview: AutoScored - All or Nothing with blank scoring: When correct answer points are greater than alternative answer points', () => {
276
+ abortEarlySetup();
277
+ before(() => {
278
+ listOrderingPage.steps.navigateToCreateQuestion('list ordering');
279
+ cy.barsPreLoaderWait();
280
+ listOrderingPage.steps.addInputToOptionsInputField(options);
281
+ listOrderingPage.steps.selectOrderingLayoutOption('Dropdown menu');
282
+ listOrderingPage.steps.selectPositionForAllOptionsSpecifyCorrectAnswerSection([{ optionIndex: 0, position: '2' }, { optionIndex: 1, position: '3' }, { optionIndex: 2, position: '4' }, { optionIndex: 3, position: '1' }]);
283
+ listOrderingPage.steps.allotPoints(21);
284
+ listOrderingPage.steps.addAlternativeAnswerAccordion(1);
285
+ listOrderingPage.steps.allotPoints(12);
286
+ listOrderingPage.steps.switchToPreviewTab();
287
+ });
288
+
289
+ it('When user attempts the question with responses from the correct accordion i.e select an option, then the user should be awarded points specified for correct points accordion and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, a status message with text \'Your answer is correct\' should be displayed and correct answer section should not be displayed', () => {
290
+ listOrderingPage.steps.selectPositionForAllOptionsSpecifyCorrectAnswerSection([{ optionIndex: 0, position: '2' }, { optionIndex: 1, position: '3' }, { optionIndex: 2, position: '4' }, { optionIndex: 3, position: '1' }]);
291
+ listOrderingPage.steps.verifyPreviewScore(21, 21);
292
+ listOrderingPage.steps.switchToGradingView();
293
+ listOrderingPage.steps.verifyCorrectAnswerSectionNotExist();
294
+ listOrderingPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
295
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
296
+ });
297
+ });
274
298
  });