itemengine-cypress-automation 1.0.245-2AugustRepoUpdate-589ab5f.0 → 1.0.246-revertedSaveAsYouGo-5fef93d.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. package/cypress/e2e/ILC/BrainingCampManipulative/editTabBasicSection.js +1 -1
  2. package/cypress/e2e/ILC/ChartsBar/headerSection.js +1 -16
  3. package/cypress/e2e/ILC/ChartsLine/headerSection.js +1 -18
  4. package/cypress/e2e/ILC/ContentBlocks/editTabBasics.js +3 -2
  5. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/clickAndDrop.js +4 -2
  6. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/draggableOptions.js +4 -2
  7. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/headerSection.js +5 -2
  8. package/cypress/e2e/ILC/EssayResponse/equationEditor.smoke.js +2 -0
  9. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/clickAndDrop.js +4 -2
  10. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/draggableOptions.js +4 -2
  11. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/editTabBasicSection.js +2 -2
  12. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/headerSection.js +5 -3
  13. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/dropdownOptionsSection.js +2 -2
  14. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editTabBasicSection.js +2 -2
  15. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/headerSection.js +5 -2
  16. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/clickAndDrop.js +6 -4
  17. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/draggableOptions.js +1 -0
  18. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/headerSection.js +8 -2
  19. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/dropdownOptionsSection.js +1 -1
  20. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editTabBasicSection.js +2 -3
  21. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/headerSection.js +6 -2
  22. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/supportedFileTypes.js +3 -2
  23. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/HeaderSection.js +4 -2
  24. package/cypress/e2e/ILC/FillInTheGapsTextNew/editTabBasicSection.js +2 -3
  25. package/cypress/e2e/ILC/FillInTheGapsTextNew/headerSection.js +3 -2
  26. package/cypress/e2e/ILC/Graphing/headerSection.js +3 -2
  27. package/cypress/e2e/ILC/GridFill/headerSection.js +3 -1
  28. package/cypress/e2e/ILC/GridFill/specifyCorrectAnswerSection.js +3 -3
  29. package/cypress/e2e/ILC/ImageHighlight/additionalSettingsBasic.js +2 -0
  30. package/cypress/e2e/ILC/ImageHighlight/headerSection.js +4 -2
  31. package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +8 -6
  32. package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +8 -2
  33. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +225 -0
  34. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/partialDifferentWeightsBasic.js +89 -0
  35. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +225 -0
  36. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +225 -0
  37. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +405 -0
  38. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +201 -0
  39. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/partialEqualWeightsBasic.js +147 -0
  40. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +171 -0
  41. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +203 -0
  42. package/cypress/e2e/ILC/Matching/clickAndDrop.js +5 -3
  43. package/cypress/e2e/ILC/Matching/headerSection.js +10 -2
  44. package/cypress/e2e/ILC/Matching/questionInstructionsAndPromptSection.js +17 -4
  45. package/cypress/e2e/ILC/Matching/styleAndLayoutCustomizationDropzoneBorderStyleProperties.js +113 -0
  46. package/cypress/e2e/ILC/Matching/styleAndLayoutCustomizationDropzoneProperties.js +251 -0
  47. package/cypress/e2e/ILC/Matching/styleAndLayoutCustomizationLayoutProperties.js +227 -0
  48. package/cypress/e2e/ILC/MultipleSelection/headerSection.js +5 -2
  49. package/cypress/e2e/ILC/MultipleSelectionGridNew/headerSection.js +9 -2
  50. package/cypress/e2e/ILC/NumberLine/headerSection.js +3 -2
  51. package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +4 -3
  52. package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +4 -2
  53. package/cypress/e2e/ILC/SingleSelection/headerSection.js +5 -2
  54. package/cypress/e2e/ILC/SingleSelectionGridNew/headerSection.js +9 -2
  55. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +1 -1
  56. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +1 -1
  57. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +1 -1
  58. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -1
  59. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +1 -1
  60. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +1 -1
  61. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsScoringBasic.js +4 -4
  62. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -1
  63. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +1 -1
  64. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +1 -1
  65. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasic.js +2 -2
  66. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViews.smoke.js +3 -3
  67. package/cypress/e2e/ILC/TextEntryMath/editTabBasicSection.js +4 -4
  68. package/cypress/e2e/ILC/TextEntryMath/editTabScoringSection.js +6 -6
  69. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodEquivalentStructures.js +5 -5
  70. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchExact.js +1 -1
  71. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchValue.js +1 -1
  72. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodSymbolsAreEquivalent.js +1 -1
  73. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodValueIsEquivalent.js +1 -1
  74. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodsWithoutSetResponse.js +10 -10
  75. package/cypress/e2e/ILC/TextEntryMath/minimumScoringPenaltyPointsAndRoundingDropdown.js +3 -3
  76. package/cypress/e2e/ILC/TextEntryMath/previewContentsForAllViews.smoke.js +1 -1
  77. package/cypress/e2e/ILC/TextSelection/headerSection.js +5 -2
  78. package/cypress/e2e/ILC/TextSelection/questionInstructionsAndQuestion.js +2 -1
  79. package/cypress/e2e/ILC/ToolAudioPlayerNew/headerSection.js +2 -3
  80. package/cypress/e2e/ILC/UploadResponse/editTabBasicSection.js +2 -1
  81. package/cypress/fixtures/drawingToolbarOptionsAdditionalOptionsAndSpecialAndMathCharacters.js +2 -2
  82. package/cypress/pages/components/autoScoredSetCorrectAnswerSection.js +11 -0
  83. package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +27 -9
  84. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +3 -2
  85. package/cypress/pages/components/fillInTheGapsTextCommonComponent.js +2 -1
  86. package/cypress/pages/components/optionsWrapperComponent.js +2 -2
  87. package/cypress/pages/components/scoringSectionBaseEditTab.js +2 -2
  88. package/cypress/pages/createItemPage.js +1 -1
  89. package/cypress/pages/dialogBoxBase.js +7 -13
  90. package/cypress/pages/dragAndDropIntoCategoriesPage.js +5 -4
  91. package/cypress/pages/graphingPage.js +7 -4
  92. package/cypress/pages/gridFillPage.js +16 -15
  93. package/cypress/pages/matchingPage.js +613 -6
  94. package/cypress/pages/multipleSelectionGridPage.js +5 -4
  95. package/cypress/pages/multipleSelectionPage.js +5 -4
  96. package/cypress/pages/numberLinePage.js +13 -2
  97. package/cypress/pages/shortTextResponsePage.js +3 -2
  98. package/cypress/pages/textEntryMathPage.js +7 -0
  99. package/package.json +1 -1
@@ -0,0 +1,225 @@
1
+ import { listOrderingPage } from "../../../../pages/listOrderingPage";
2
+ import abortEarlySetup from "../../../../support/helpers/abortEarly";
3
+
4
+ let options = ['sprout', 'plant', 'flower', 'seed'];
5
+ let correctAnswerArray = ['seed', 'sprout', 'plant', 'flower'];
6
+ let alternateCorrectAnswerArray = ['seed', 'flower', 'sprout', 'plant'];
7
+
8
+ describe('Create Item page - List ordering: Partial different weights scoring with alternative answer - When correct answer points are more than alternative answer points', () => {
9
+ before(() => {
10
+ cy.loginAs('admin');
11
+ });
12
+
13
+ describe('Question Preview: AutoScored - Partial different weights with alternative answer: When correct answer points are more than alternative answer points', () => {
14
+ abortEarlySetup();
15
+ before(() => {
16
+ listOrderingPage.steps.navigateToCreateQuestion('list ordering');
17
+ cy.barsPreLoaderWait();
18
+ listOrderingPage.steps.selectOrderingLayoutOption('Reorder as a separate list');
19
+ listOrderingPage.steps.addTextInQuestionInstructionsInputField('Arrange options in correct order.');
20
+ listOrderingPage.steps.addInputToOptionsInputField(options);
21
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
22
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
23
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
24
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
25
+ listOrderingPage.steps.selectAutoScoredScoringSubtype('Partial different weights');
26
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(correctAnswerArray);
27
+ listOrderingPage.steps.allotPartialDifferentWeightsPoints({ 0: 7, 1: 5, 2: 4, 3: 8 });
28
+ listOrderingPage.steps.addAlternativeAnswerAccordion(1);
29
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
30
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
31
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
32
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
33
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(alternateCorrectAnswerArray);
34
+ listOrderingPage.steps.allotPartialDifferentWeightsPoints({ 0: 6, 1: 3, 2: 2, 3: 9 });
35
+ listOrderingPage.steps.switchToPreviewTab();
36
+ });
37
+
38
+ it('When the user switches to the \'Grading view\' without attempting the question, then correct/incorrect icons should not be displayed for the default list order, correct/incorrect status message should not be displayed and correct answers section should be displayed with correct answers from the correct accordion', () => {
39
+ listOrderingPage.steps.verifyPreviewScore(0, 24);
40
+ listOrderingPage.steps.switchToGradingView();
41
+ listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
42
+ listOrderingPage.steps.verifyOptionsInCorrectAnswerSection(correctAnswerArray);
43
+ });
44
+
45
+ it('When the user attempts the question with responses from the correct accordion, then the user should be awarded full points and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, correct/incorrect status message and correct answer section should not be displayed', () => {
46
+ listOrderingPage.steps.resetQuestionPreview();
47
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
48
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
49
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
50
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
51
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(correctAnswerArray);
52
+ listOrderingPage.steps.verifyPreviewScore(24, 24);
53
+ listOrderingPage.steps.switchToGradingView();
54
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('sprout');
55
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('seed');
56
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('plant');
57
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('flower');
58
+ listOrderingPage.steps.verifyCorrectAnswerSectionNotExists();
59
+ listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
60
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
61
+ });
62
+
63
+ it('When the user attempts the question with responses from the alternative accordion, then the user should be awarded with points specified for alternative accordion (less than full points) and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, correct/incorrect status message and correct answer section should not be displayed', () => {
64
+ listOrderingPage.steps.resetQuestionPreview();
65
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
66
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
67
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
68
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
69
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(alternateCorrectAnswerArray);
70
+ listOrderingPage.steps.verifyPreviewScore(20, 24);
71
+ listOrderingPage.steps.switchToGradingView();
72
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('sprout');
73
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('seed');
74
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('plant');
75
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('flower');
76
+ listOrderingPage.steps.verifyCorrectAnswerSectionNotExists();
77
+ listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
78
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
79
+ });
80
+
81
+ it('When the user attempts the question with partially correct options exclusively from the correct accordion, then the user should be awarded points of the correctly attempted response and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, correct/incorrect status message should not be displayed and correct answer section with all correct answers from the correct accordion should be displayed', () => {
82
+ listOrderingPage.steps.resetQuestionPreview();
83
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
84
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
85
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
86
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
87
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(['flower', 'sprout', 'plant', 'seed']);
88
+ listOrderingPage.steps.verifyPreviewScore(9, 24);
89
+ listOrderingPage.steps.switchToGradingView();
90
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('flower');
91
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('sprout');
92
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('plant');
93
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('seed');
94
+ listOrderingPage.steps.verifyOptionsInCorrectAnswerSection(correctAnswerArray);
95
+ listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
96
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
97
+ });
98
+
99
+ it('When the user attempts the question with partially correct options exclusively from the alternative accordion, then the user should be awarded points of the correctly attempted response and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, correct/incorrect status message should not be displayed and correct answer section with all correct answers from the correct accordion should be displayed', () => {
100
+ listOrderingPage.steps.resetQuestionPreview();
101
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
102
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
103
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
104
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
105
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(['plant', 'flower', 'sprout', 'seed']);
106
+ listOrderingPage.steps.verifyPreviewScore(5, 24);
107
+ listOrderingPage.steps.switchToGradingView();
108
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('plant');
109
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('flower');
110
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('sprout');
111
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('seed');
112
+ listOrderingPage.steps.verifyOptionsInCorrectAnswerSection(correctAnswerArray);
113
+ listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
114
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
115
+ });
116
+
117
+ it('When the user attempts the question partially correct with equal number of correct responses from correct and alternative accordion then user should be awarded with points of the accordion that awards more points i.e. in this case correct accordion and on switching to \'Grading\' view, correct icon should be displayed besides response field with correct answer responses, incorrect icon should be displayed beside responses from the alternative accordion, correct/incorrect status message should not be displayed and correct answer section with all correct answers from the correct accordion should be displayed', () => {
118
+ listOrderingPage.steps.resetQuestionPreview();
119
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
120
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
121
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
122
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
123
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(['seed', 'flower', 'plant', 'sprout']);
124
+ listOrderingPage.steps.verifyPreviewScore(11, 24);
125
+ listOrderingPage.steps.switchToGradingView();
126
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('seed');
127
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('flower');
128
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('plant');
129
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('sprout');
130
+ listOrderingPage.steps.verifyOptionsInCorrectAnswerSection(correctAnswerArray);
131
+ listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
132
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
133
+ });
134
+
135
+ it('When the user attempts the question partially correct with equal number of correct responses from correct and alternative accordion then user should be awarded with points of the accordion that awards more points i.e. in this case alternative accordion and on switching to \'Grading\' view, correct icon should be displayed besides response field with correct answer responses, incorrect icon should be displayed beside responses from the correct accordion, correct/incorrect status message should not be displayed and correct answer section with all correct answers from the correct accordion should be displayed', () => {
136
+ listOrderingPage.steps.resetQuestionPreview();
137
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
138
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
139
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
140
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
141
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(['seed', 'sprout', 'flower', 'plant']);
142
+ listOrderingPage.steps.verifyPreviewScore(15, 24);
143
+ listOrderingPage.steps.switchToGradingView();
144
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('seed');
145
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('sprout');
146
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('flower');
147
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('plant');
148
+ listOrderingPage.steps.verifyOptionsInCorrectAnswerSection(correctAnswerArray);
149
+ listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
150
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
151
+ });
152
+
153
+ it('Race condition: When the user attempts the question with the common option between correct accordion and alternative accordion then user should be awarded with points of the tab with more points i.e. in this case correct accordion and on switching to \'Grading\' view the correct icon should be displayed beside the common option and incorrect icon should be displayed beside the incorrect responses, correct/incorrect status message should not be displayed and correct answer section with all correct answers from the correct accordion should be displayed', () => {
154
+ listOrderingPage.steps.resetQuestionPreview();
155
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
156
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
157
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
158
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
159
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(['seed', 'plant', 'flower', 'sprout']);
160
+ listOrderingPage.steps.verifyPreviewScore(7, 24);
161
+ listOrderingPage.steps.switchToGradingView();
162
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('seed');
163
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('plant');
164
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('flower');
165
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('sprout');
166
+ listOrderingPage.steps.verifyOptionsInCorrectAnswerSection(correctAnswerArray);
167
+ listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
168
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
169
+ });
170
+
171
+ it('When user attempts the question incorrectly then user should be awarded 0 points and on switching to \'Grading\' view, incorrect icons should be displayed beside all the options, correct/incorrect status message should not be displayed and correct answer section with all correct answers from the correct accordion should be displayed', () => {
172
+ listOrderingPage.steps.resetQuestionPreview();
173
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
174
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
175
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
176
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
177
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(['flower', 'plant', 'seed', 'sprout']);
178
+ listOrderingPage.steps.verifyPreviewScore(0, 24);
179
+ listOrderingPage.steps.switchToGradingView();
180
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('flower');
181
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('plant');
182
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('seed');
183
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('sprout');
184
+ listOrderingPage.steps.verifyOptionsInCorrectAnswerSection(correctAnswerArray);
185
+ listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
186
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
187
+ });
188
+
189
+ it('Overachiever case: When the user attempts the question with more number of correct options from the correct accordion than the alternative accordion but the score of the responses selected from the alternative accordion overpowers the combined score of the correct accordion answers then correct icons should be displayed for the alternative accordion options, incorrect icon should be displayed for the correct accordion options and points awarded should be of the alternative accordion, correct/incorrect status message should not be displayed correct answer section with all correct answers from the correct accordion should be displayed', () => {
190
+ cy.log('Pre-step: Switching to Edit tab and allotting points to correct and alternative accordion such that the difference between the points is substantial and the points per response are in decimal')
191
+ listOrderingPage.steps.switchToEditTab();
192
+ listOrderingPage.steps.addOption();
193
+ listOrderingPage.steps.enterTextInOptionInputField(4, 'fruit');
194
+ listOrderingPage.steps.deleteAlternativeAnswerAccordion(0);
195
+ listOrderingPage.steps.clickAndDropOptionSeperateList('fruit');
196
+ listOrderingPage.steps.allotPartialDifferentWeightsPoints({ 0: 24, 1: 1, 2: 4, 3: 1, 4: 3 });
197
+ listOrderingPage.steps.addAlternativeAnswerAccordion(1);
198
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
199
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
200
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
201
+ listOrderingPage.steps.clickAndDropOptionSeperateList('fruit');
202
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
203
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(['sprout', 'plant', 'flower', 'fruit', 'seed']);
204
+ listOrderingPage.steps.allotPartialDifferentWeightsPoints({ 0: 14, 1: 2, 2: 1, 3: 2, 4: 3 });
205
+ listOrderingPage.steps.switchToPreviewTab();
206
+
207
+ listOrderingPage.steps.clickAndDropOptionSeperateList('sprout');
208
+ listOrderingPage.steps.clickAndDropOptionSeperateList('seed');
209
+ listOrderingPage.steps.clickAndDropOptionSeperateList('plant');
210
+ listOrderingPage.steps.clickAndDropOptionSeperateList('flower');
211
+ listOrderingPage.steps.clickAndDropOptionSeperateList('fruit');
212
+ listOrderingPage.steps.verifyOptionsInDropzoneOrderAsSeperateList(['sprout', 'seed', 'plant', 'flower', 'fruit']);
213
+ listOrderingPage.steps.verifyPreviewScore(14, 33);
214
+ listOrderingPage.steps.switchToGradingView();
215
+ listOrderingPage.steps.verifyCorrectOptionIconSeperateList('sprout');
216
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('seed');
217
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('plant');
218
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('flower');
219
+ listOrderingPage.steps.verifyIncorrectOptionIconSeperateList('fruit');
220
+ listOrderingPage.steps.verifyOptionsInCorrectAnswerSection(['seed', 'sprout', 'plant', 'flower', 'fruit']);
221
+ listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
222
+ listOrderingPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
223
+ });
224
+ });
225
+ });