itemengine-cypress-automation 1.0.252 → 1.0.253

Sign up to get free protection for your applications and to get access to all the features.
Files changed (85) hide show
  1. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddFeatureRadioButton.js +231 -0
  2. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddTranscriptRadioButton .js +213 -0
  3. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAudioPlayerStyle.js +148 -0
  4. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabStudentViewSettings.js +249 -0
  5. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerHeaderSectionAndButtons.js +164 -0
  6. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTab.js +444 -0
  7. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabSupportedFileTypes.js +102 -0
  8. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabTranscript.js +134 -0
  9. package/cypress/e2e/ILC/CkEditorEquationEditor/equationEditorBasicFile.js +46 -0
  10. package/cypress/e2e/ILC/CkEditorInsertTable/insertTableEditorBasicFile.js +98 -0
  11. package/cypress/e2e/ILC/CkEditorInsertTable/tableDimension&FooterProperties.js +147 -0
  12. package/cypress/e2e/ILC/CkEditorInsertTable/tableHeaders.js +127 -0
  13. package/cypress/e2e/ILC/CkEditorInsertTable/tableRowAndColumn.js +71 -0
  14. package/cypress/e2e/ILC/CkEditorInsertTable/tableStyle.js +154 -0
  15. package/cypress/e2e/ILC/Compass/compassPreviewContent.smoke.js +1 -0
  16. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +41 -17
  17. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/allOrNothingBasicForGroupedOptionsLayout.js +24 -12
  18. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +47 -20
  19. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +43 -16
  20. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/manuallyAndNonScoredScoring.js +5 -5
  21. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionAlternativePointsGreaterThanCorrectPoints.js +52 -21
  22. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionBasic.js +23 -11
  23. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionCorrectPointsEqualToAlternativePoints.js +55 -21
  24. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionCorrectPointsGreaterThanAlternativePoints.js +53 -21
  25. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneAlternativePointsGreaterThanCorrectPoints.js +48 -19
  26. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneBasic.js +23 -11
  27. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneCorrectPointsEqualToAlternativePoints.js +47 -17
  28. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneCorrectPointsGreaterThanAlternativePoints.js +50 -19
  29. package/cypress/e2e/ILC/DrawingResponse/drawingResponseCustomizeAdditionalOptions.js +0 -2
  30. package/cypress/e2e/ILC/DrawingResponse/drawingResponseGradingViewAndCorrectAnswerViewContents.smoke.js +3 -0
  31. package/cypress/e2e/ILC/DrawingResponse/drawingResponsePreviewTabContents.smoke.js +0 -3
  32. package/cypress/e2e/ILC/EssayResponse/createCustomCategory.smoke.js +2 -1
  33. package/cypress/e2e/ILC/EssayResponse/equationEditor.smoke.js +4 -4
  34. package/cypress/e2e/ILC/EssayResponse/essayResponseCustomizeFormattingOptions4.js +261 -0
  35. package/cypress/e2e/ILC/EssayResponse/gradingViewAndCorrectAnswerViewContents.smoke.js +4 -2
  36. package/cypress/e2e/ILC/EssayResponseBasic/gradingViewAndCorrectAnswerViewContents.smoke.js +4 -2
  37. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/responseLevelAlternateAnswerBasicScoring.js +1 -1
  38. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/dropzoneAlternateAnswerPopup.js +2 -2
  39. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +5 -3
  40. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/Scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +3 -2
  41. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/Scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +3 -2
  42. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/dropdownAlternateAnswerPopup.js +1 -0
  43. package/cypress/e2e/ILC/GridFill/customizeLayoutFillColor.js +3 -0
  44. package/cypress/e2e/ILC/GridFill/customizeLayoutFillImageBackgroundImage.js +15 -0
  45. package/cypress/e2e/ILC/GridFill/customizeLayoutSectionShadeCellsGridBorders.js +10 -0
  46. package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +2 -1
  47. package/cypress/e2e/ILC/GridFill/specifyCorrectAnswerSection.js +3 -2
  48. package/cypress/e2e/ILC/NumberLine/toolsAndControls.js +56 -8
  49. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +1 -1
  50. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -1
  51. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +1 -1
  52. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsScoringBasic.js +4 -4
  53. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -1
  54. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +1 -1
  55. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +3 -3
  56. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasic.js +2 -2
  57. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViews.smoke.js +16 -16
  58. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +4 -5
  59. package/cypress/e2e/ILC/TextEntryMath/customSettings.js +8 -22
  60. package/cypress/e2e/ILC/TextEntryMathWithImage/allOrNothingScoringForAllViews.smoke.js +19 -19
  61. package/cypress/e2e/ILC/TextEntryMathWithImage/backgroundImageAndCanvasProperties.js +2 -2
  62. package/cypress/e2e/ILC/TextEntryMathWithImage/previewTabContentsForAllViews.smoke.js +5 -5
  63. package/cypress/e2e/ILC/TextSelection/previewContentsForAllViews.smoke.js +1 -4
  64. package/cypress/e2e/ILC/ToolAudioPlayerNew/studentViewSettings.js +8 -2
  65. package/cypress/fixtures/theme/ilc.json +9 -5
  66. package/cypress/pages/components/ckEditorAudioPlayerComponent.js +615 -0
  67. package/cypress/pages/components/ckEditorEquationEditorComponent.js +41 -0
  68. package/cypress/pages/components/ckEditorInsertTableComponent.js +741 -0
  69. package/cypress/pages/components/essayResponseCommonComponents.js +145 -7
  70. package/cypress/pages/components/imageCanvasComponent.js +2 -2
  71. package/cypress/pages/components/index.js +2 -1
  72. package/cypress/pages/components/layoutSectionComponent.js +25 -4
  73. package/cypress/pages/components/numberLineCommonComponent.js +39 -0
  74. package/cypress/pages/components/optionsWrapperComponent.js +1 -1
  75. package/cypress/pages/components/scoringSectionBaseEditTab.js +1 -0
  76. package/cypress/pages/dragAndDropIntoCategoriesPage.js +28 -0
  77. package/cypress/pages/fillInTheGapsDragAndDropPage.js +1 -1
  78. package/cypress/pages/graphingPage.js +8 -8
  79. package/cypress/pages/gridFillPage.js +11 -11
  80. package/cypress/pages/multipleSelectionPage.js +12 -0
  81. package/cypress/pages/singleSelectionPage.js +1 -1
  82. package/cypress/pages/textEntryMathPage.js +18 -0
  83. package/cypress/pages/textEntryMathWithImagePage.js +15 -2
  84. package/cypress/pages/textSelectionPage.js +7 -1
  85. package/package.json +1 -1
@@ -30,10 +30,10 @@ describe('Create item page - Drag and drop into categories: All or nothing with
30
30
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
31
31
  dragAndDropIntoCategoriesPage.steps.verifyDropzoneCellNumeration(['1', '2', '3', '4', '5', '6']);
32
32
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
33
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
33
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
34
34
  });
35
35
 
36
- 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, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
36
+ 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 and proper icon should display beside empty container, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
37
37
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
38
38
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Bat': 0, 'Eagle': 1, 'Parrot': 1, 'Platypus': 2, 'Ostrich': 3, 'Whale': 4 });
39
39
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(20, 20);
@@ -44,6 +44,7 @@ describe('Create item page - Drag and drop into categories: All or nothing with
44
44
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
45
45
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(4);
46
46
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(5);
47
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
47
48
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
48
49
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();
49
50
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
@@ -59,16 +60,18 @@ describe('Create item page - Drag and drop into categories: All or nothing with
59
60
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
60
61
  });
61
62
 
62
- it('When the user attempts the question with responses from the alternative accordion, then the user should be awarded with 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\' and correct answer section should not be displayed', () => {
63
+ it('When the user attempts the question with responses from the alternative accordion, then the user should be awarded with full points and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses and proper icon should display beside empty container, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
63
64
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
64
65
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0, 'Eagle': 1, 'Peacock': 1, 'Ostrich': 3, 'Platypus': 4 });
65
66
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(20, 20);
66
67
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
67
68
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
68
69
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
70
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(2);
69
71
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(2);
70
72
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
71
73
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(4);
74
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
72
75
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
73
76
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();
74
77
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
@@ -83,15 +86,19 @@ describe('Create item page - Drag and drop into categories: All or nothing with
83
86
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
84
87
  });
85
88
 
86
- it('When the user attempts the question with partially correct options exclusively from the correct accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
89
+ it('When the user attempts the question with partially correct options exclusively from the correct accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
87
90
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
88
91
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Bat': 0, 'Parrot': 1 });
89
92
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
90
93
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
91
94
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
92
95
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
96
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(2);
97
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(3);
98
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(4);
99
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
93
100
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
94
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
101
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
95
102
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
96
103
  /*cy.log('When the user has attempted the question with partially correct options exclusively from the correct accordion and clicks on \'Check answer\' button, then correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
97
104
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -102,14 +109,19 @@ describe('Create item page - Drag and drop into categories: All or nothing with
102
109
  });
103
110
 
104
111
  //Failing due to https://redmine.zeuslearning.com/issues/556430
105
- it('When the user attempts the question with partially correct options exclusively from the alternative accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the alternative accordion along with dropzone cell numeration should be displayed', () => {
112
+ it('When the user attempts the question with partially correct options exclusively from the alternative accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the alternative accordion along with dropzone cell numeration should be displayed', () => {
106
113
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
107
114
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0 });
108
115
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
109
116
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
110
117
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
118
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(1);
119
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(2);
120
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(3);
121
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(4);
122
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
111
123
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
112
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Flying squirrel'], ['Eagle', 'Peacock'], ['Ostrich'], ['Platypus']], ['1', '2', '4', '5']);
124
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Flying squirrel'], ['Eagle', 'Peacock'], ['Ostrich'], ['Platypus'], [], []], ['1', '2', '4', '5', '3', '6']);
113
125
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
114
126
  /*cy.log('When the user has attempted the question with partially correct options exclusively from the alternative accordion and clicks on \'Check answer\' button, then correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
115
127
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -118,17 +130,20 @@ describe('Create item page - Drag and drop into categories: All or nothing with
118
130
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
119
131
  });
120
132
 
121
- it('When the user attempts the question partially correct with all the cells correct as per the alternative accordion but one cell incomplete, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the response from the correct accordion, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the alternative accordion along with dropzone cell numeration should be displayed', () => {
133
+ it('When the user attempts the question partially correct with all the cells correct as per the alternative accordion but one cell incomplete, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the response from the correct accordion and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the alternative accordion along with dropzone cell numeration should be displayed', () => {
122
134
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
123
135
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0, 'Eagle': 1, 'Peacock': 1, 'Platypus': 4 });
124
136
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
125
137
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
126
- dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(0);
138
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
127
139
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
128
- dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(2);
129
- dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(3);
140
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(2);
141
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(2);
142
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(3);
143
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
144
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
130
145
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
131
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
146
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Flying squirrel'], ['Eagle', 'Peacock'], ['Ostrich'], ['Platypus'], [], []], ['1', '2', '4', '5', '3', '6']);
132
147
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
133
148
  /*cy.log('When the user has attempted the question with partially correct with all the cells correct as per the alternative accordion but one cell incomplete and clicks on \'Check answer\' button, then correct icon should be displayed besides the response from the correct accordion, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
134
149
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -140,16 +155,19 @@ describe('Create item page - Drag and drop into categories: All or nothing with
140
155
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
141
156
  });
142
157
 
143
- it('When the user attempts the question partially correct with more number of options exclusively from the alternative accordion but with one option common across both accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the responses from the alternative accordion response as well as common response, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the alternative accordion along with dropzone cell numeration should be displayed', () => {
158
+ it('When the user attempts the question partially correct with more number of options exclusively from the alternative accordion but with one option common across both accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the responses from the alternative accordion response as well as common response and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the alternative accordion along with dropzone cell numeration should be displayed', () => {
144
159
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
145
160
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0, 'Ostrich': 3, 'Platypus': 4 });
146
161
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
147
162
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
148
163
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
149
164
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
165
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(1);
166
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(2);
150
167
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(2);
168
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
151
169
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
152
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
170
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Flying squirrel'], ['Eagle', 'Peacock'], ['Ostrich'], ['Platypus'], [], []], ['1', '2', '4', '5', '3', '6']);
153
171
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
154
172
  /*cy.log('When the user has attempted the question with partially correct with more number of options exclusively from the alternative accordion but with one option common across both accordion and clicks on \'Check answer\' button, then correct icon should be displayed besides the responses from the alternative accordion response as well as common response, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
155
173
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -160,7 +178,7 @@ describe('Create item page - Drag and drop into categories: All or nothing with
160
178
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
161
179
  });
162
180
 
163
- it('When the user attempts the question partially correct with all the cells correctly attempted as per the alternative accordion but with an extra incorrect option, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the responses from the alternative accordion response as well as common response, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed', () => {
181
+ it('When the user attempts the question partially correct with all the cells correctly attempted as per the alternative accordion but with an extra incorrect option, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the responses from the alternative accordion response as well as common response and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed', () => {
164
182
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
165
183
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0, 'Eagle': 1, 'Peacock': 1, 'Ostrich': 3, 'Platypus': 4, 'Whale': 5 });
166
184
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
@@ -168,11 +186,12 @@ describe('Create item page - Drag and drop into categories: All or nothing with
168
186
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
169
187
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
170
188
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(2);
189
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(2);
171
190
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
172
191
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(4);
173
192
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(5);
174
193
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
175
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Flying squirrel'], ['Eagle', 'Peacock'], ['Ostrich'], ['Platypus']], ['1', '2', '4', '5']);
194
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Flying squirrel'], ['Eagle', 'Peacock'], ['Ostrich'], ['Platypus'], [], []], ['1', '2', '4', '5', '3', '6']);
176
195
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
177
196
  /*cy.log('When the user has attempted the question with partially correct with all the cells correctly attempted as per the alternative accordion but with an extra incorrect option and clicks on \'Check answer\' button, then correct icon should be displayed besides the responses from the alternative accordion response as well as common response, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
178
197
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -186,7 +205,7 @@ describe('Create item page - Drag and drop into categories: All or nothing with
186
205
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
187
206
  });
188
207
 
189
- it('When the user attempts the question partially correct such that more number of correct options are exclusively from the alternative accordion but with one option exclusively from the correct accordion in the same cell, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the responses from the alternative accordions, incorrect icon should be displayed besides the responses from the correct accordion, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the alternative accordion along with dropzone cell numeration should be displayed', () => {
208
+ it('When the user attempts the question partially correct such that more number of correct options are exclusively from the alternative accordion but with one option exclusively from the correct accordion in the same cell, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the responses from the alternative accordions, incorrect icon should be displayed besides the responses from the correct accordion and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the alternative accordion along with dropzone cell numeration should be displayed', () => {
190
209
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
191
210
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0, 'Bat': 0, 'Peacock': 1, 'Platypus': 4 });
192
211
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
@@ -194,9 +213,12 @@ describe('Create item page - Drag and drop into categories: All or nothing with
194
213
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
195
214
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(1);
196
215
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(2);
216
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(2);
217
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(3);
197
218
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
219
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
198
220
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
199
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Flying squirrel'], ['Eagle', 'Peacock'], ['Ostrich'], ['Platypus']], ['1', '2', '4', '5']);
221
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Flying squirrel'], ['Eagle', 'Peacock'], ['Ostrich'], ['Platypus'], [], []], ['1', '2', '4', '5', '3', '6']);
200
222
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
201
223
  /*cy.log('When the user has attempted the question with partially correct such that more number of correct options are exclusively from the alternative accordion but with one option exclusively from the correct accordion in the same cell and clicks on \'Check answer\' button, then correct icon should be displayed besides the responses from the alternative accordions, incorrect icon should be displayed besides the responses from the correct accordion, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
202
224
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -208,14 +230,19 @@ describe('Create item page - Drag and drop into categories: All or nothing with
208
230
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
209
231
  });
210
232
 
211
- 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 from the correct accordion along with dropzone cell numeration should be displayed', () => {
233
+ 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 and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
212
234
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
213
235
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Platypus': 0 });
214
236
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
215
237
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
216
238
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(0);
239
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(1);
240
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(2);
241
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(3);
242
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(4);
243
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
217
244
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
218
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
245
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
219
246
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
220
247
  /*cy.log('When the user has attempted the question incorrectly and clicks on \'Check answer\' button, then incorrect icons should be displayed besides all incorrect responses, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
221
248
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -33,7 +33,7 @@ describe('Create item page - Drag and drop into categories: All or nothing with
33
33
  dragAndDropIntoCategoriesPage.steps.verifyDropzoneCellNumeration(['1', '2', '3', '4', '5', '6']);
34
34
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
35
35
  utilities.verifyInnerText(dragAndDropIntoCategoriesPage.correctAnswersLabel(), 'Correct answers');
36
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
36
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
37
37
  });
38
38
 
39
39
  it('CSS of correct answer section and dropzone cell numeration', { tags: 'css' }, () => {
@@ -64,7 +64,7 @@ describe('Create item page - Drag and drop into categories: All or nothing with
64
64
  cy.checkAccessibility(dragAndDropIntoCategoriesPage.previewTabQuestionWrapper());
65
65
  });
66
66
 
67
- 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, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
67
+ 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 and proper icon should display beside empty container, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
68
68
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
69
69
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Bat': 0, 'Eagle': 1, 'Parrot': 1, 'Platypus': 2, 'Ostrich': 3, 'Whale': 4 });
70
70
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(20, 20);
@@ -75,9 +75,11 @@ describe('Create item page - Drag and drop into categories: All or nothing with
75
75
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
76
76
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(4);
77
77
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(5);
78
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
78
79
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
79
80
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();
80
81
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
82
+ dragAndDropIntoCategoriesPage.steps.switchToGradingView();
81
83
  /*cy.log('When the user has attempted the question with responses from the correct accordion and clicks on \'Check answer\' button, then 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')
82
84
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
83
85
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
@@ -122,7 +124,7 @@ describe('Create item page - Drag and drop into categories: All or nothing with
122
124
  cy.checkAccessibility(dragAndDropIntoCategoriesPage.previewTabQuestionWrapper());
123
125
  });
124
126
 
125
- 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, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
127
+ 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 and proper icon should display beside empty container, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
126
128
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
127
129
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0, 'Eagle': 1, 'Peacock': 1, 'Ostrich': 3, 'Platypus': 4 });
128
130
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(10, 20);
@@ -130,8 +132,10 @@ describe('Create item page - Drag and drop into categories: All or nothing with
130
132
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
131
133
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
132
134
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(2);
135
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(2);
133
136
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
134
137
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(4);
138
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
135
139
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
136
140
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();
137
141
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
@@ -146,15 +150,19 @@ describe('Create item page - Drag and drop into categories: All or nothing with
146
150
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
147
151
  });
148
152
 
149
- it('When the user attempts the question with partially correct options exclusively from the correct accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
153
+ it('When the user attempts the question with partially correct options exclusively from the correct accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
150
154
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
151
155
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Bat': 0, 'Parrot': 1 });
152
156
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
153
157
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
154
158
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
155
159
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
160
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(2);
161
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(3);
162
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(4);
163
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
156
164
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
157
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
165
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
158
166
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
159
167
  /*cy.log('When the user has attempted the question with partially correct options exclusively from the correct accordion and clicks on \'Check answer\' button, then correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
160
168
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -164,14 +172,19 @@ describe('Create item page - Drag and drop into categories: All or nothing with
164
172
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
165
173
  });
166
174
 
167
- it('When the user attempts the question with partially correct options exclusively from the alternative accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
175
+ it('When the user attempts the question with partially correct options exclusively from the alternative accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
168
176
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
169
177
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0 });
170
178
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
171
179
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
172
180
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
181
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(1);
182
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(2);
183
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(3);
184
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(4);
185
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
173
186
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
174
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
187
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
175
188
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
176
189
  /*cy.log('When the user has attempted the question with partially correct options exclusively from the alternative accordion and clicks on \'Check answer\' button, then correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
177
190
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -180,7 +193,7 @@ describe('Create item page - Drag and drop into categories: All or nothing with
180
193
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
181
194
  });
182
195
 
183
- it('When the user attempts the question partially correct with all the cells correct as per the alternative accordion but one cell incomplete, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the response from the correct accordion, incorrect icon should be displayed besides the responses from the alternative accordion, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
196
+ it('When the user attempts the question partially correct with all the cells correct as per the alternative accordion but one cell incomplete, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the response from the correct accordion, incorrect icon should be displayed besides the responses from the alternative accordion and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
184
197
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
185
198
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0, 'Eagle': 1, 'Peacock': 1, 'Platypus': 4 });
186
199
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
@@ -188,9 +201,12 @@ describe('Create item page - Drag and drop into categories: All or nothing with
188
201
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(0);
189
202
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
190
203
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(2);
204
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(2);
205
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(3);
191
206
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(3);
207
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
192
208
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
193
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
209
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
194
210
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
195
211
  /*cy.log('When the user has attempted the question with partially correct with all the cells correct as per the alternative accordion but one cell incomplete and clicks on \'Check answer\' button, then correct icon should be displayed besides the response from the correct accordion, incorrect icon should be displayed besides the responses from the alternative accordion, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
196
212
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -202,16 +218,19 @@ describe('Create item page - Drag and drop into categories: All or nothing with
202
218
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
203
219
  });
204
220
 
205
- it('When the user attempts the question partially correct with more number of options exclusively from the alternative accordion but with one option common across both accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the response common across both accordions, incorrect icon should be displayed besides the responses from the alternative accordion, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
221
+ it('When the user attempts the question partially correct with more number of options exclusively from the alternative accordion but with one option common across both accordion, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the response common across both accordions, incorrect icon should be displayed besides the responses from the alternative accordion and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
206
222
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
207
223
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0, 'Ostrich': 3, 'Platypus': 4 });
208
224
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
209
225
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
210
226
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(0);
211
227
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
228
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(1);
229
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(2);
212
230
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(2);
231
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
213
232
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
214
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
233
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
215
234
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
216
235
  /*cy.log('When the user has attempted the question with partially correct with more number of options exclusively from the alternative accordion but with one option common across both accordion and clicks on \'Check answer\' button, then correct icon should be displayed besides the response from the correct accordion, incorrect icon should be displayed besides the responses from the alternative accordion, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
217
236
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -230,11 +249,12 @@ describe('Create item page - Drag and drop into categories: All or nothing with
230
249
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(0);
231
250
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
232
251
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(2);
252
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(2);
233
253
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
234
254
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(4);
235
255
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(5);
236
256
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
237
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
257
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
238
258
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
239
259
  /*cy.log('When the user has attempted the question with partially correct with all the cells correctly attempted as per the alternative accordion but with an extra incorrect option and clicks on \'Check answer\' button, then correct icon should be displayed besides the response from the correct accordion, incorrect icon should be displayed besides the responses from the alternative accordion, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
240
260
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -248,7 +268,7 @@ describe('Create item page - Drag and drop into categories: All or nothing with
248
268
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
249
269
  });
250
270
 
251
- it('When the user attempts the question partially correct such that more number of correct options are exclusively from the alternative accordion but with one option exclusively from the correct accordion in the same cell, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the response common across both accordions, incorrect icon should be displayed besides the responses from the alternative accordion, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
271
+ it('When the user attempts the question partially correct such that more number of correct options are exclusively from the alternative accordion but with one option exclusively from the correct accordion in the same cell, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the response common across both accordions, incorrect icon should be displayed besides the responses from the alternative accordion and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
252
272
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
253
273
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0, 'Bat': 0, 'Peacock': 1, 'Platypus': 4 });
254
274
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
@@ -256,9 +276,11 @@ describe('Create item page - Drag and drop into categories: All or nothing with
256
276
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(0);
257
277
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
258
278
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(2);
279
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(2);dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(3);
259
280
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(3);
281
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
260
282
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
261
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
283
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
262
284
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
263
285
  /*cy.log('When the user has attempted the question with partially correct such that more number of correct options are exclusively from the alternative accordion but with one option exclusively from the correct accordion in the same cell and clicks on \'Check answer\' button, then correct icon should be displayed besides the response from the correct accordion, incorrect icon should be displayed besides the responses from the alternative accordion, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
264
286
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -270,14 +292,19 @@ describe('Create item page - Drag and drop into categories: All or nothing with
270
292
  dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerSectionNotExists();*/
271
293
  });
272
294
 
273
- 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 dropzone cell numeration should be displayed', () => {
295
+ 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 and proper icon should display beside empty container, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers along with dropzone cell numeration should be displayed', () => {
274
296
  dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
275
297
  dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Platypus': 0 });
276
298
  dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(0, 20);
277
299
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
278
300
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(0);
301
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(1);
302
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(2);
303
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(3);
304
+ dragAndDropIntoCategoriesPage.steps.verifyIncorrectIconForEmptyContainer(4);
305
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectIconForEmptyContainer(5);
279
306
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
280
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
307
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
281
308
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
282
309
  /*cy.log('When the user has attempted the question incorrectly and clicks on \'Check answer\' button, then incorrect icons should be displayed besides all incorrect responses, a status message with text \'Your answer is incorrect\' and correct answer section should not be displayed')
283
310
  dragAndDropIntoCategoriesPage.steps.checkAnswer();
@@ -76,7 +76,7 @@ describe('Create Item Page: drag and drop into categories: Preview tab', () => {
76
76
  dragAndDropIntoCategoriesPage.steps.verifyDropzoneCellNumeration(['1', '2', '3', '4', '5', '6']);
77
77
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
78
78
  utilities.verifyInnerText(dragAndDropIntoCategoriesPage.correctAnswersLabel(), 'Correct answers');
79
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
79
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
80
80
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
81
81
  });
82
82
 
@@ -85,7 +85,7 @@ describe('Create Item Page: drag and drop into categories: Preview tab', () => {
85
85
  dragAndDropIntoCategoriesPage.steps.switchToGradingView();
86
86
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(0);
87
87
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
88
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
88
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
89
89
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
90
90
  });
91
91
 
@@ -98,7 +98,7 @@ describe('Create Item Page: drag and drop into categories: Preview tab', () => {
98
98
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(2);
99
99
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
100
100
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
101
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
101
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
102
102
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
103
103
  });
104
104
 
@@ -112,7 +112,7 @@ describe('Create Item Page: drag and drop into categories: Preview tab', () => {
112
112
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
113
113
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(4);
114
114
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
115
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
115
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
116
116
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
117
117
  });
118
118
 
@@ -128,7 +128,7 @@ describe('Create Item Page: drag and drop into categories: Preview tab', () => {
128
128
  dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(5);
129
129
  dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(6);
130
130
  dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
131
- dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
131
+ dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale'], []], ['1', '2', '3', '4', '5', '6']);
132
132
  dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
133
133
  });
134
134