itemengine-cypress-automation 1.0.283-applitools-caab082.0 → 1.0.283

Sign up to get free protection for your applications and to get access to all the features.
Files changed (203) hide show
  1. package/cypress/e2e/ILC/AudioResponseNew/barRecorderStyle.smoke.js +26 -36
  2. package/cypress/e2e/ILC/AudioResponseNew/compactRecorderStyle.smoke.js +4 -14
  3. package/cypress/e2e/ILC/AudioResponseNew/gradingViewAndCorrectAnswerViewContents.smoke.js +2 -12
  4. package/cypress/e2e/ILC/AudioResponseNew/previewContentsForAllViews.smoke.js +2 -11
  5. package/cypress/e2e/ILC/BrainingCampManipulative/gradingViewAndCorrectAnswerViewContents.smoke.js +0 -10
  6. package/cypress/e2e/ILC/BrainingCampManipulative/previewTabContent.smoke.js +1 -10
  7. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/allOrNothingScoringForAllViews.smoke.js +8 -18
  8. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/gradingViewAndCorrectAnswerView.smoke.js +2 -12
  9. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/previewContentsForAllViews.smoke.js +5 -16
  10. package/cypress/e2e/ILC/ChartsBar/allOrNothingScoringForAllViews.smoke.js +8 -18
  11. package/cypress/e2e/ILC/ChartsBar/gradingViewAndCorrectAnswerView.smoke.js +2 -12
  12. package/cypress/e2e/ILC/ChartsBar/previewContentsForAllViews.smoke.js +6 -17
  13. package/cypress/e2e/ILC/ChartsLine/allOrNothingScoringForAllViews.smoke.js +8 -18
  14. package/cypress/e2e/ILC/ChartsLine/gradingViewAndCorrectAnswerView.smoke.js +2 -12
  15. package/cypress/e2e/ILC/ChartsLine/previewContentsForAllViews.smoke.js +5 -16
  16. package/cypress/e2e/ILC/Compass/compassPreviewContent.smoke.js +1 -10
  17. package/cypress/e2e/ILC/ContentBlocks/previewContents.smoke.js +1 -10
  18. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +21 -21
  19. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneAlternativePointsGreaterThanCorrectPoints.js +9 -9
  20. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneBasic.js +7 -6
  21. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneCorrectPointsEqualToAlternativePoints.js +10 -9
  22. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneCorrectPointsGreaterThanAlternativePoints.js +11 -10
  23. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/additionalSettings.js +1 -1
  24. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/allOrNothingBasicForAllViews.smoke.js +6 -16
  25. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/previewContentsForAllViews.smoke.js +3 -12
  26. package/cypress/e2e/ILC/DrawingResponse/drawingResponseGradingViewAndCorrectAnswerViewContents.smoke.js +2 -12
  27. package/cypress/e2e/ILC/DrawingResponse/drawingResponsePreviewTabContents.smoke.js +21 -35
  28. package/cypress/e2e/ILC/EditItem/editItem.ts +133 -0
  29. package/cypress/e2e/ILC/EssayResponse/equationEditor.smoke.js +0 -8
  30. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/allOrNothingGroupedScoring.js +4 -4
  31. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +15 -15
  32. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/allOrNothingWithCorrectPointsEqualToAlternativePoints.js +14 -14
  33. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +14 -14
  34. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/blankResponseScoring.js +214 -0
  35. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/manuallyAndNonScored.js +4 -4
  36. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +14 -14
  37. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/partialDifferentWeightsBasic.js +8 -8
  38. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +14 -14
  39. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/partialDifferentWeightsWithCorrectPointsGreaterThanAlternativePoints.js +14 -14
  40. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/partialEqualWeightsBasic.js +8 -8
  41. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +14 -14
  42. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +14 -14
  43. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +14 -14
  44. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/responseLevelAlternateAnswerBasicScoring.js +1 -1
  45. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/allOrNothingForAllViews.smoke.js +6 -16
  46. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/previewContentsForAllViews.smoke.js +3 -12
  47. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/allOrNothingForAllView.smoke.js +4 -14
  48. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/previewContentsForAllViews.smoke.js +3 -12
  49. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/Scoring/blankResponseScoring.js +228 -0
  50. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/Scoring/manuallyAndNonScored.js +3 -3
  51. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/allOrNothingForAllViews.smoke.js +5 -15
  52. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/previewContentsForAllViews.smoke.js +4 -13
  53. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/Scoring/blankResponseScoring.js +242 -0
  54. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/allOrNothingForAllView.smoke.js +4 -14
  55. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/previewContentsForAllViews.smoke.js +3 -12
  56. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/blankResponseScoring.js +245 -0
  57. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/allOrNothingForAllViews.smoke.js +4 -14
  58. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/previewContentsForAllViews.smoke.js +4 -13
  59. package/cypress/e2e/ILC/FillInTheGapsTextNew/Scoring/blankResponseScoring.js +237 -0
  60. package/cypress/e2e/ILC/FillInTheGapsTextNew/allOrNothingForAllViews.smoke.js +4 -14
  61. package/cypress/e2e/ILC/FillInTheGapsTextNew/previewContentsForAllViews.smoke.js +4 -13
  62. package/cypress/e2e/ILC/Graphing/allOrNothingForAllViews.smoke.js +5 -15
  63. package/cypress/e2e/ILC/Graphing/gradingViewAndCorrectAnswerView.smoke.js +2 -12
  64. package/cypress/e2e/ILC/Graphing/previewContentsForAllViews.smoke.js +4 -13
  65. package/cypress/e2e/ILC/GridFill/allOrNothingBasicForAllViews.smoke.js +6 -17
  66. package/cypress/e2e/ILC/GridFill/previewContentsForAllViews.smoke.js +1 -9
  67. package/cypress/e2e/ILC/ImageHighlight/allOrNothingForAllViews.smoke.js +5 -16
  68. package/cypress/e2e/ILC/ImageHighlight/previewContentsForAllViews.smoke.js +4 -13
  69. package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +4 -14
  70. package/cypress/e2e/ILC/ListOrderingDropdown/previewContentsForAllViews.smoke.js +3 -12
  71. package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/previewContentsForAllViews.smoke.js +2 -13
  72. package/cypress/e2e/ILC/ListOrderingNew/allOrNothingForAllViews.smoke.js +4 -14
  73. package/cypress/e2e/ILC/ListOrderingNew/horizontalOrientationAllOrNothingForAllViews.smoke.js +5 -15
  74. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/HorizontalOrientation/horizontalOrientationAllOrNothingForAllViews.smoke.js +5 -16
  75. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/HorizontalOrientation/previewContentsForAllViews.smoke.js +3 -12
  76. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/allOrNothingForAllViews.smoke.js +4 -15
  77. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/previewContentsForAllViews.smoke.js +3 -12
  78. package/cypress/e2e/ILC/Matching/Scoring/allOrNothingGroupedScoring.js +4 -4
  79. package/cypress/e2e/ILC/Matching/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +14 -14
  80. package/cypress/e2e/ILC/Matching/Scoring/allOrNothingWithCorrectPointsEqualToAlternativePoints.js +14 -14
  81. package/cypress/e2e/ILC/Matching/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +14 -14
  82. package/cypress/e2e/ILC/Matching/Scoring/blankResponseScoring.js +239 -0
  83. package/cypress/e2e/ILC/Matching/Scoring/manuallyAndNonScored.js +2 -2
  84. package/cypress/e2e/ILC/Matching/Scoring/partialDifferentWeightsScoringBasic.js +2 -2
  85. package/cypress/e2e/ILC/Matching/Scoring/partialDifferentWeightsWithAlternativePointsGreaterThanCorrectPoints.js +7 -7
  86. package/cypress/e2e/ILC/Matching/Scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +7 -7
  87. package/cypress/e2e/ILC/Matching/Scoring/partialDifferentWeightsWithCorrectPointsGreaterThanAlternativePoints.js +7 -7
  88. package/cypress/e2e/ILC/Matching/Scoring/partialEqualWeightsBasic.js +4 -4
  89. package/cypress/e2e/ILC/Matching/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +14 -14
  90. package/cypress/e2e/ILC/Matching/Scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +14 -14
  91. package/cypress/e2e/ILC/Matching/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +14 -14
  92. package/cypress/e2e/ILC/Matching/allOrNothingScoringForAllViews.smoke.js +5 -15
  93. package/cypress/e2e/ILC/Matching/previewTabContentsForAllViews.smoke.js +4 -13
  94. package/cypress/e2e/ILC/Matching/questionInstructionsAndPromptSection.js +3 -2
  95. package/cypress/e2e/ILC/MatchingDropdown/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +7 -7
  96. package/cypress/e2e/ILC/MatchingDropdown/Scoring/allOrNothingWithCorrectPointsEqualToAlternativePoints.js +7 -7
  97. package/cypress/e2e/ILC/MatchingDropdown/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +7 -7
  98. package/cypress/e2e/ILC/MatchingDropdown/Scoring/blankResponseScoring.js +212 -0
  99. package/cypress/e2e/ILC/MatchingDropdown/Scoring/manuallyAndNonScored.js +2 -2
  100. package/cypress/e2e/ILC/MatchingDropdown/Scoring/partialDifferentWeightsScoringBasic.js +2 -2
  101. package/cypress/e2e/ILC/MatchingDropdown/Scoring/partialDifferentWeightsWithAlternativePointsGreaterThanCorrectPoints.js +7 -7
  102. package/cypress/e2e/ILC/MatchingDropdown/Scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternatePoints.js +7 -7
  103. package/cypress/e2e/ILC/MatchingDropdown/Scoring/partialDifferentWeightsWithCorrectPointsGreaterThanAlternatePoints.js +7 -7
  104. package/cypress/e2e/ILC/MatchingDropdown/Scoring/partialEqualWeightsBasic.js +4 -4
  105. package/cypress/e2e/ILC/MatchingDropdown/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +7 -7
  106. package/cypress/e2e/ILC/MatchingDropdown/Scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +7 -7
  107. package/cypress/e2e/ILC/MatchingDropdown/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +7 -7
  108. package/cypress/e2e/ILC/MatchingDropdown/allOrNothingScoringForAllViews.smoke.js +5 -15
  109. package/cypress/e2e/ILC/MatchingDropdown/previewContentsForAllViews.smoke.js +4 -13
  110. package/cypress/e2e/ILC/MultipleSelection/allOrNothingBasicForAllViews.smoke.js +10 -20
  111. package/cypress/e2e/ILC/MultipleSelection/previewContentsForAllViews.smoke.js +2 -11
  112. package/cypress/e2e/ILC/MultipleSelectionGridNew/Scoring/blankResponseScoring.js +366 -0
  113. package/cypress/e2e/ILC/MultipleSelectionGridNew/allOrNothingBasicForAllViews.smoke.js +5 -15
  114. package/cypress/e2e/ILC/MultipleSelectionGridNew/previewContentsForAllViews.smoke.js +4 -14
  115. package/cypress/e2e/ILC/NumberLine/allOrNothingScoringForAllViews.smoke.js +5 -15
  116. package/cypress/e2e/ILC/NumberLine/gradingViewAndCorrectAnswerView.smoke.js +2 -12
  117. package/cypress/e2e/ILC/NumberLine/previewTabContentsForAllViews.smoke.js +4 -13
  118. package/cypress/e2e/ILC/NumberLine/verticalNumberLine/allOrNothingScoringForAllViews.smoke.js +5 -15
  119. package/cypress/e2e/ILC/NumberLine/verticalNumberLine/gradingViewAndCorrectAnswerView.smoke.js +2 -12
  120. package/cypress/e2e/ILC/NumberLine/verticalNumberLine/previewTabContentsForAllViews.smoke.js +4 -13
  121. package/cypress/e2e/ILC/NumberLineLabel/allOrNothingForAllViews.smoke.js +5 -15
  122. package/cypress/e2e/ILC/NumberLineLabel/gradingViewAndCorrectAnswerView.smoke.js +0 -10
  123. package/cypress/e2e/ILC/NumberLineLabel/previewContentsForAllViews.smoke.js +1 -10
  124. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/allOrNothingForAllViews.smoke.js +5 -15
  125. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/gradingViewAndCorrectAnswerView.smoke.js +2 -12
  126. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/previewContentsForAllViews.smoke.js +1 -10
  127. package/cypress/e2e/ILC/Protractor/protractorPreviewContents.smoke.js +1 -10
  128. package/cypress/e2e/ILC/ReadingRuler/readingrulerPreviewContents.smoke.js +1 -10
  129. package/cypress/e2e/ILC/Ruler/rulerPreviewContents.smoke.js +1 -10
  130. package/cypress/e2e/ILC/ShortTextResponseNew/allOrNothingBasicForAllViews.smoke.js +3 -13
  131. package/cypress/e2e/ILC/ShortTextResponseNew/previewContentsForAllViews.smoke.js +6 -14
  132. package/cypress/e2e/ILC/SimpleCalculator/previewContents.smoke.js +1 -10
  133. package/cypress/e2e/ILC/SingleSelection/allOrNothingBasicForAllViews.smoke.js +3 -13
  134. package/cypress/e2e/ILC/SingleSelection/previewContents.smoke.js +1 -10
  135. package/cypress/e2e/ILC/SingleSelectionGridNew/Scoring/blankResponseScoring.js +306 -0
  136. package/cypress/e2e/ILC/SingleSelectionGridNew/allOrNothingBasicForAllViews.smoke.js +5 -15
  137. package/cypress/e2e/ILC/SingleSelectionGridNew/previewContentsForAllViews.smoke.js +1 -10
  138. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +243 -0
  139. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +242 -0
  140. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +289 -0
  141. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +284 -0
  142. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +238 -0
  143. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +279 -0
  144. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsScoringBasic.js +641 -0
  145. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +278 -0
  146. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +228 -0
  147. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +234 -0
  148. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsScoringBasic.js +237 -0
  149. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAddEvaluation.js +134 -0
  150. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAlternateAnswer.js +138 -0
  151. package/cypress/e2e/ILC/TextEntryMath/Scoring/blankResponseScoring.js +263 -0
  152. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +5 -5
  153. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasicForAlternateAnswer.js +166 -0
  154. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViews.smoke.js +14 -24
  155. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +6 -15
  156. package/cypress/e2e/ILC/TextEntryMath/customSettings.js +3 -3
  157. package/cypress/e2e/ILC/TextEntryMath/customSettingsSeparators.ts +193 -0
  158. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodEquivalentStructures.js +5 -5
  159. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchExact.js +1 -1
  160. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchValue.js +1 -1
  161. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodsWithoutSetResponse.js +4 -4
  162. package/cypress/e2e/ILC/TextEntryMath/previewContentsForAllViews.smoke.js +4 -13
  163. package/cypress/e2e/ILC/TextEntryMath/responseEvaluationMethodsAndCustomSettings.js +8 -8
  164. package/cypress/e2e/ILC/TextEntryMathWithImage/allOrNothingScoringForAllViews.smoke.js +12 -22
  165. package/cypress/e2e/ILC/TextEntryMathWithImage/previewTabContentsForAllViews.smoke.js +5 -13
  166. package/cypress/e2e/ILC/TextSelection/ScoringGeneric/basicScoringForAllTextSelectionTypes.smoke.js +4 -14
  167. package/cypress/e2e/ILC/TextSelection/allOrNothingScoringForAllViews.smoke.js +6 -17
  168. package/cypress/e2e/ILC/TextSelection/previewContentsForAllViews.smoke.js +8 -17
  169. package/cypress/e2e/ILC/ToolAudioPlayerNew/previewContents.smoke.js +3 -12
  170. package/cypress/e2e/ILC/ToolSettings/toolSettingsPreviewContents.smoke.js +3 -12
  171. package/cypress/e2e/ILC/UploadResponse/gradingViewAndCorrectAnswerViewContents.smoke.js +1 -11
  172. package/cypress/e2e/ILC/UploadResponse/previewContentsForAllViews.smoke.js +5 -14
  173. package/cypress/e2e/ILC/UploadResponse/thumbNail.smoke.js +6 -17
  174. package/cypress/e2e/ILC/VideoResponseNew/compactRecorderStyle.smoke.js +3 -12
  175. package/cypress/e2e/ILC/VideoResponseNew/gradingViewAndCorrectAnswerViewContents.smoke.js +4 -14
  176. package/cypress/e2e/ILC/VideoResponseNew/previewContentsForAllViews.smoke.js +3 -12
  177. package/cypress/e2e/ILC/chartsDotsPlot/allOrNothingForAllViews.smoke.js +9 -19
  178. package/cypress/e2e/ILC/chartsDotsPlot/gradingViewAndCorrectAnswerView.smoke.js +2 -12
  179. package/cypress/e2e/ILC/chartsDotsPlot/previewContentsForAllViews.smoke.js +4 -14
  180. package/cypress/pages/audioPlayerPage.js +4 -4
  181. package/cypress/pages/components/customSettingsSeparatorsComponent.ts +17 -0
  182. package/cypress/pages/components/equationEditorFlyout.js +1 -1
  183. package/cypress/pages/components/equationEditorSectionCommonComponent.js +1 -3
  184. package/cypress/pages/components/fillInTheGapsDragAndDropCommonComponents.js +1 -1
  185. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +5 -1
  186. package/cypress/pages/components/gridQuestionCommonComponent.js +41 -1
  187. package/cypress/pages/components/optionsWrapperComponent.js +1 -1
  188. package/cypress/pages/createItemPage.js +38 -1
  189. package/cypress/pages/dragAndDropIntoCategoriesPage.js +1 -1
  190. package/cypress/pages/fillInTheGapsDragAndDropPage.js +45 -3
  191. package/cypress/pages/fillInTheGapsOverImageDragAndDropPage.js +35 -2
  192. package/cypress/pages/listOrderingPage.js +1 -1
  193. package/cypress/pages/matchingPage.js +34 -7
  194. package/cypress/pages/multipleSelectionPage.js +17 -2
  195. package/cypress/pages/numberLineLabelPage.js +3 -3
  196. package/cypress/pages/readingRulerPage.js +5 -3
  197. package/cypress/pages/singleSelectionPage.js +5 -2
  198. package/cypress/pages/textEntryMathPage.js +19 -5
  199. package/cypress/pages/textSelectionPage.js +1 -1
  200. package/cypress/support/commands.js +0 -11
  201. package/cypress/support/e2e.js +0 -1
  202. package/package.json +1 -4
  203. package/cypress/e2e/applitools.config.js +0 -14
@@ -0,0 +1,242 @@
1
+ import { dialogBoxBase, fillInTheGapsOverImageDropdownPage, gradingViewPage, itemPreviewPage, studentViewPage } from "../../../../pages";
2
+ import abortEarlySetup from "../../../../support/helpers/abortEarly";
3
+ import utilities from "../../../../support/helpers/utilities";
4
+
5
+ const optionsForDropdown1 = ['Flower', 'Petal', 'Stem', 'Branch'];
6
+ const optionsForDropdown2 = ['Leaf', 'Leaves', 'Stem', 'Seed'];
7
+ const optionsForDropdown3 = ['Flower', 'Leaf', 'Stem', 'Roots']; //Common answer
8
+ const correctAnswerArray = ['Flower', '', 'Stem'];
9
+ const alternateAnswerArray = ['Petal', 'Leaves', 'Stem'];
10
+ const incorrectAnswerArray = ['Branch', 'Seed', 'Roots'];
11
+
12
+ describe('Create item page - Fill in the gaps ovr image with dropdown: All or nothing and Partial equal weights for blank responses', () => {
13
+ before(() => {
14
+ cy.loginAs('admin');
15
+ });
16
+
17
+ describe(`Auto scored - All or nothing scoring for blank response`, () => {
18
+ abortEarlySetup();
19
+ before(() => {
20
+ fillInTheGapsOverImageDropdownPage.steps.navigateToCreateQuestion('fill in the gaps over image with dropdown');
21
+ cy.barsPreLoaderWait();
22
+ fillInTheGapsOverImageDropdownPage.steps.addTextInQuestionInstructionsInputField('Fill in the gaps over image with dropdown');
23
+ fillInTheGapsOverImageDropdownPage.steps.uploadFile('highlightImage.jpg');
24
+ fillInTheGapsOverImageDropdownPage.steps.verifyImageIsUploaded();
25
+ fillInTheGapsOverImageDropdownPage.steps.insertResponseArea(30);
26
+ fillInTheGapsOverImageDropdownPage.steps.insertResponseArea(40);
27
+ fillInTheGapsOverImageDropdownPage.steps.insertResponseArea(80);
28
+ fillInTheGapsOverImageDropdownPage.steps.allotPoints(24);
29
+ fillInTheGapsOverImageDropdownPage.steps.switchToPreviewTab();
30
+ });
31
+
32
+ it('When the user has not set any answer in the \'Specify correct answer\' section and switches to the \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
33
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
34
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(0, 24);
35
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(0);
36
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(1);
37
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(2);
38
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
39
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
40
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['', '', '']);
41
+ });
42
+
43
+ it('When the user has not set any answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the responses, full points should be allocated and correct answer section should not be displayed', () => {
44
+ fillInTheGapsOverImageDropdownPage.steps.switchToEditTab();
45
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(0, optionsForDropdown1);
46
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(1, optionsForDropdown2);
47
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(2, optionsForDropdown3);
48
+ fillInTheGapsOverImageDropdownPage.steps.switchToPreviewTab();
49
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: correctAnswerArray[0] }]);
50
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
51
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(0, 24);
52
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(0);
53
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(1);
54
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(2);
55
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
56
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
57
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['', '', '']);
58
+ });
59
+
60
+ it('When the user sets an answer in the \'Specify correct answer\' section then on switching to \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
61
+ fillInTheGapsOverImageDropdownPage.steps.switchToEditTab();
62
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(0, optionsForDropdown1);
63
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(1, optionsForDropdown2);
64
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(2, optionsForDropdown3);
65
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownSpecifyCorrectAnswerSection(0, correctAnswerArray[0]);
66
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownSpecifyCorrectAnswerSection(2, correctAnswerArray[2]);
67
+ fillInTheGapsOverImageDropdownPage.steps.switchToPreviewTab();
68
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(0, 24);
69
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(0);
70
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(1);
71
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(2);
72
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
73
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewTabPointsBackgroundForIncorrectOrPartiallyCorrectAnswer();
74
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
75
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
76
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(correctAnswerArray);
77
+ });
78
+
79
+ it('When the user has set an answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, points should be allocated for the correct answers and correct answer section should be displayed', () => {
80
+ fillInTheGapsOverImageDropdownPage.steps.resetQuestionPreview();
81
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: correctAnswerArray[2] }]);
82
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
83
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(0, 24);
84
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(0);
85
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(1);
86
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(2);
87
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
88
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
89
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(correctAnswerArray);
90
+ });
91
+
92
+ it('When the user has set an answer in the \'Specify correct answer\' section and enters responses in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, points should be allocated for the correct answers and correct answer section should be displayed', () => {
93
+ fillInTheGapsOverImageDropdownPage.steps.resetQuestionPreview();
94
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: correctAnswerArray[0] }]);
95
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
96
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(0, 24);
97
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(0);
98
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(1);
99
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(2);
100
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
101
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
102
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(correctAnswerArray);
103
+ });
104
+
105
+ it('When the user attempts the question incorrectly, then the user should be awarded 0 points and on switching to \'Grading\' view, incorrect icons should be displayed besides all incorrect responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers along with numeration should be displayed', () => {
106
+ fillInTheGapsOverImageDropdownPage.steps.resetQuestionPreview();
107
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: correctAnswerArray[2] }, { dropdownIndex: 1, dropdownOption: optionsForDropdown2[0] }]);
108
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(0, 24);
109
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
110
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(0);
111
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(1);
112
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(2);
113
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
114
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
115
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(correctAnswerArray);
116
+ });
117
+
118
+ it('When user attempts the question correctly, the user should be awarded full points and on switching to \'Grading\' view, then correct icons should be displayed beside all the correct responses, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
119
+ fillInTheGapsOverImageDropdownPage.steps.resetQuestionPreview();
120
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: correctAnswerArray[0] }, { dropdownIndex: 2, dropdownOption: correctAnswerArray[2] }]);
121
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(24, 24);
122
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
123
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewTabPointsBackgroundForCorrectAnswer();
124
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(0);
125
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(1);
126
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(2);
127
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
128
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerSectionNotExists();
129
+ });
130
+ });
131
+
132
+ describe(`Auto scored - partial equal weights scoring for blank response`, () => {
133
+ abortEarlySetup();
134
+ before(() => {
135
+ fillInTheGapsOverImageDropdownPage.steps.navigateToCreateQuestion('fill in the gaps over image with dropdown');
136
+ cy.barsPreLoaderWait();
137
+ fillInTheGapsOverImageDropdownPage.steps.addTextInQuestionInstructionsInputField('Fill in the gaps over image with dropdown');
138
+ fillInTheGapsOverImageDropdownPage.steps.uploadFile('highlightImage.jpg');
139
+ fillInTheGapsOverImageDropdownPage.steps.verifyImageIsUploaded();
140
+ fillInTheGapsOverImageDropdownPage.steps.insertResponseArea(30);
141
+ fillInTheGapsOverImageDropdownPage.steps.insertResponseArea(40);
142
+ fillInTheGapsOverImageDropdownPage.steps.insertResponseArea(80);
143
+ fillInTheGapsOverImageDropdownPage.steps.selectAutoScoredScoringSubtype('Partial equal weights');
144
+ fillInTheGapsOverImageDropdownPage.steps.allotPoints(24);
145
+ fillInTheGapsOverImageDropdownPage.steps.switchToPreviewTab();
146
+ });
147
+
148
+ it('When the user has not set any answer in the \'Specify correct answer\' section and switches to the \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
149
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
150
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(0, 24);
151
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(0);
152
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(1);
153
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(2);
154
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
155
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
156
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['', '', '']);
157
+ });
158
+
159
+ it('When the user has not set any answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the responses, full points should be allocated and correct answer section should not be displayed', () => {
160
+ fillInTheGapsOverImageDropdownPage.steps.switchToEditTab();
161
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(0, optionsForDropdown1);
162
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(1, optionsForDropdown2);
163
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(2, optionsForDropdown3);
164
+ fillInTheGapsOverImageDropdownPage.steps.switchToPreviewTab();
165
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: correctAnswerArray[0] }]);
166
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
167
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(16, 24);
168
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(0);
169
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(1);
170
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(2);
171
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
172
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['', '', '']);
173
+ });
174
+
175
+ it('When the user sets an answer in the \'Specify correct answer\' section then on switching to \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
176
+ fillInTheGapsOverImageDropdownPage.steps.switchToEditTab();
177
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(0, optionsForDropdown1);
178
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(1, optionsForDropdown2);
179
+ fillInTheGapsOverImageDropdownPage.steps.addInputToDropdownOptionFields(2, optionsForDropdown3);
180
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownSpecifyCorrectAnswerSection(0, correctAnswerArray[0]);
181
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownSpecifyCorrectAnswerSection(2, correctAnswerArray[2]);
182
+ fillInTheGapsOverImageDropdownPage.steps.switchToPreviewTab();
183
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(0, 24);
184
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(0);
185
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(1);
186
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectIconNotExist(2);
187
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
188
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewTabPointsBackgroundForIncorrectOrPartiallyCorrectAnswer();
189
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
190
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
191
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(correctAnswerArray);
192
+ });
193
+
194
+ it('When the user has set an answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, points should be allocated for the correct answers and correct answer section should be displayed', () => {
195
+ fillInTheGapsOverImageDropdownPage.steps.resetQuestionPreview();
196
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: correctAnswerArray[2] }]);
197
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
198
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(8, 24);
199
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(0);
200
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(1);
201
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(2);
202
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
203
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(correctAnswerArray);
204
+ });
205
+
206
+ it('When the user has set an answer in the \'Specify correct answer\' section and enters responses in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, points should be allocated for the correct answers and correct answer section should be displayed', () => {
207
+ fillInTheGapsOverImageDropdownPage.steps.resetQuestionPreview();
208
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: correctAnswerArray[0] }]);
209
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
210
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(16, 24);
211
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(0);
212
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(1);
213
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(2);
214
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
215
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(correctAnswerArray);
216
+ });
217
+
218
+ it('When the user attempts the question incorrectly, then the user should be awarded 0 points and on switching to \'Grading\' view, incorrect icons should be displayed besides all incorrect responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers along with numeration should be displayed', () => {
219
+ fillInTheGapsOverImageDropdownPage.steps.resetQuestionPreview();
220
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: correctAnswerArray[2] }, { dropdownIndex: 1, dropdownOption: optionsForDropdown2[0] }]);
221
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(0, 24);
222
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
223
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(0);
224
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(1);
225
+ fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(2);
226
+ fillInTheGapsOverImageDropdownPage.steps.verifyVisibilityOfCorrectAnswerLabel();
227
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(correctAnswerArray);
228
+ });
229
+
230
+ it('When user attempts the question correctly, the user should be awarded full points and on switching to \'Grading\' view, then correct icons should be displayed beside all the correct responses, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
231
+ fillInTheGapsOverImageDropdownPage.steps.resetQuestionPreview();
232
+ fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: correctAnswerArray[0] }, { dropdownIndex: 2, dropdownOption: correctAnswerArray[2] }]);
233
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewScore(24, 24);
234
+ fillInTheGapsOverImageDropdownPage.steps.switchToGradingView();
235
+ fillInTheGapsOverImageDropdownPage.steps.verifyPreviewTabPointsBackgroundForCorrectAnswer();
236
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(0);
237
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(1);
238
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(2);
239
+ fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerSectionNotExists();
240
+ });
241
+ });
242
+ });
@@ -16,14 +16,6 @@ describe('Create item page - Fill in the gaps over image - dropdown: All or noth
16
16
  cy.loginAs('admin');
17
17
  });
18
18
 
19
- beforeEach(() => {
20
- cy.startApplitools();
21
- });
22
-
23
- afterEach(() => {
24
- cy.eyesClose();
25
- });
26
-
27
19
  if (!grepTags || !grepTags.includes('smoke')) {
28
20
  describe('Question preview modes: Student view and Grading view', () => {
29
21
  abortEarlySetup();
@@ -111,7 +103,7 @@ describe('Create item page - Fill in the gaps over image - dropdown: All or noth
111
103
  });
112
104
  };
113
105
 
114
- it(`${view}: FIG over image Dropdown - When the user selects \'Grading\' view without attempting the question, dropdown numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration`, () => {
106
+ it('When the user selects \'Grading\' view without attempting the question, dropdown numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
115
107
  if (view === 'Grading view') {
116
108
  studentViewPage.steps.submitResponse();
117
109
  utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
@@ -129,7 +121,7 @@ describe('Create item page - Fill in the gaps over image - dropdown: All or noth
129
121
  fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(correctAnswerArray);
130
122
  });
131
123
 
132
- it(`${view}: FIG over image Dropdown - When the user attempts the question incorrectly, then the user should be awarded 0 points and on switching to \'Grading\' view, incorrect icons should be displayed besides all incorrect responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers along with numeration should be displayed`, () => {
124
+ it('When the user attempts the question incorrectly, then the user should be awarded 0 points and on switching to \'Grading\' view, incorrect icons should be displayed besides all incorrect responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers along with numeration should be displayed', () => {
133
125
  fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: incorrectAnswerArray[0] }, { dropdownIndex: 1, dropdownOption: incorrectAnswerArray[1] }]);
134
126
  if (view === 'Grading view') {
135
127
  studentViewPage.steps.submitResponse();
@@ -145,10 +137,9 @@ describe('Create item page - Fill in the gaps over image - dropdown: All or noth
145
137
  fillInTheGapsOverImageDropdownPage.steps.verifyIncorrectOptionIcon(1);
146
138
  fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
147
139
  fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(correctAnswerArray);
148
- cy.eyesCheckWindow(`${view} - Attempting the question incorrectly`);
149
140
  });
150
141
 
151
- it(`${view}: FIG over image Dropdown - When the user attempts the question partially correct, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, incorrect icon should be displayed besides incorrect answer response, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers along with numeration should be displayed`, () => {
142
+ it('When the user attempts the question partially correct, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, incorrect icon should be displayed besides incorrect answer response, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers along with numeration should be displayed', () => {
152
143
  if (view === 'Grading view') {
153
144
  studentViewPage.steps.clearResponses();
154
145
  };
@@ -169,7 +160,7 @@ describe('Create item page - Fill in the gaps over image - dropdown: All or noth
169
160
  fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(correctAnswerArray);
170
161
  });
171
162
 
172
- it(`${view}: FIG over image Dropdown - When user attempts the question correctly, the user should be awarded full points and on switching to \'Grading\' view, then correct icons should be displayed beside all the correct responses, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is correct\' and correct answer section should not be displayed`, () => {
163
+ it('When user attempts the question correctly, the user should be awarded full points and on switching to \'Grading\' view, then correct icons should be displayed beside all the correct responses, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
173
164
  if (view === 'Grading view') {
174
165
  studentViewPage.steps.clearResponses();
175
166
  };
@@ -189,7 +180,6 @@ describe('Create item page - Fill in the gaps over image - dropdown: All or noth
189
180
  fillInTheGapsOverImageDropdownPage.steps.verifyCorrectOptionIcon(1);
190
181
  fillInTheGapsOverImageDropdownPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
191
182
  fillInTheGapsOverImageDropdownPage.steps.verifyCorrectAnswerSectionNotExists();
192
- cy.eyesCheckWindow(`${view} - Attempting the question correctly`);
193
183
  });
194
184
  });
195
185
  });
@@ -14,14 +14,6 @@ describe('Create item page - Fill in the gaps over image - dropdown - Preview co
14
14
  cy.loginAs('admin');
15
15
  });
16
16
 
17
- beforeEach(() => {
18
- cy.startApplitools();
19
- });
20
-
21
- afterEach(() => {
22
- cy.eyesClose();
23
- });
24
-
25
17
  views.forEach((view) => {
26
18
  describe(`Preview tab contents - ${view}`, { tags: 'smoke' }, () => {
27
19
  abortEarlySetup();
@@ -75,10 +67,9 @@ describe('Create item page - Fill in the gaps over image - dropdown - Preview co
75
67
  }
76
68
  });
77
69
 
78
- it(`${view} - Fill in the gaps over image dropdown Question instructions should be visible`, () => {
70
+ it('Question instructions should be visible', () => {
79
71
  utilities.verifyInnerText(fillInTheGapsOverImageDropdownPage.questionInstructionsText(), 'Fill in the gaps');
80
72
  utilities.verifyElementVisibilityState(fillInTheGapsOverImageDropdownPage.questionInstructionsText(), 'visible');
81
- cy.eyesCheckWindow(`${view} - Fill in the gaps over image dropdown - defualt state`);
82
73
  });
83
74
 
84
75
  it('The image uploaded in the \'Background image\' section should be displayed', () => {
@@ -91,7 +82,7 @@ describe('Create item page - Fill in the gaps over image - dropdown - Preview co
91
82
  fillInTheGapsOverImageDropdownPage.steps.verifyTextInDropdownsInPreviewTab([{ dropdownIndex: 0, dropdownText: '​' }, { dropdownIndex: 1, dropdownText: '​' }]);
92
83
  });
93
84
 
94
- it(`User should be able to select an option from the dropdown`, () => {
85
+ it('User should be select an option from the dropdown', () => {
95
86
  fillInTheGapsOverImageDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: correctAnswerArray[0] }, { dropdownIndex: 1, dropdownOption: correctAnswerArray[1] }]);
96
87
  });
97
88
  } else if (view === 'Grading view') {
@@ -105,7 +96,7 @@ describe('Create item page - Fill in the gaps over image - dropdown - Preview co
105
96
  fillInTheGapsOverImageDropdownPage.steps.verifyDropdownIsDisabled(1);
106
97
  });
107
98
  } else {
108
- it(`The dropdowns should be displayed filled with correct answers`, () => {
99
+ it('The dropdowns should be displayed filled with correct answers', () => {
109
100
  utilities.verifyElementCount(fillInTheGapsOverImageDropdownPage.dropdownPreviewTab(), 2);
110
101
  fillInTheGapsOverImageDropdownPage.steps.verifyTextInDropdownsInPreviewTab([{ dropdownIndex: 0, dropdownText: correctAnswerArray[0] }, { dropdownIndex: 1, dropdownText: correctAnswerArray[1] }]);
111
102
  });
@@ -0,0 +1,245 @@
1
+ import { dialogBoxBase, fillInTheGapsOverImageTextPage, gradingViewPage, itemPreviewPage, studentViewPage } from "../../../../pages";
2
+ import abortEarlySetup from "../../../../support/helpers/abortEarly";
3
+ import utilities from "../../../../support/helpers/utilities";
4
+ var itemReferenceID = "";
5
+
6
+ describe('Create item page - Fill in the gaps with text: Partial equal weights for blank responses', () => {
7
+ before(() => {
8
+ cy.loginAs('admin');
9
+ });
10
+
11
+ describe(`Auto scored - All or nothing scoring`, () => {
12
+ abortEarlySetup();
13
+ before(() => {
14
+ fillInTheGapsOverImageTextPage.steps.navigateToCreateQuestion('fill in the gaps over image with text');
15
+ cy.barsPreLoaderWait();
16
+ fillInTheGapsOverImageTextPage.steps.addTextInQuestionInstructionsInputField('Fill in the gaps');
17
+ fillInTheGapsOverImageTextPage.steps.uploadFile('highlightImage.jpg');
18
+ fillInTheGapsOverImageTextPage.steps.verifyImageIsUploaded();
19
+ fillInTheGapsOverImageTextPage.steps.insertResponseArea(30);
20
+ fillInTheGapsOverImageTextPage.steps.insertResponseArea(40);
21
+ fillInTheGapsOverImageTextPage.steps.insertResponseArea(80);
22
+ fillInTheGapsOverImageTextPage.steps.allotPoints(24);
23
+ fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
24
+ });
25
+
26
+ it('When the user has not set any answer in the \'Specify correct answer\' section and switches to the \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
27
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
28
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(0, 24);
29
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(0);
30
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(1);
31
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(2);
32
+ fillInTheGapsOverImageTextPage.steps.verifyResponseAreaNumeration();
33
+ utilities.verifyInnerText(fillInTheGapsOverImageTextPage.correctAnswersLabel(), 'Correct answers');
34
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
35
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['', '', '']);
36
+ });
37
+
38
+ it('When the user has not set any answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the responses, full points should be allocated and correct answer section should not be displayed', () => {
39
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
40
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: '1' }]);
41
+ fillInTheGapsOverImageTextPage.steps.clearAnswerInputFieldPreviewTab(0);
42
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
43
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(24, 24);
44
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(0);
45
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(1);
46
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(2);
47
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
48
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerSectionNotExists();
49
+ });
50
+
51
+ it('When the user has not set any answer in the \'Specify correct answer\' section and enters incorrect response in any response in the preview tab then correct icons should be displayed beside the empty responses, incorrect icons should be displayed beside incorrect responses, points for the correct answers should be allocated and correct answer section should be displayed', () => {
52
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
53
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Marigold' }]);
54
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
55
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(0, 24);
56
+ //Failing due to https://redmine.zeuslearning.com/issues/588679
57
+ // fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(0);
58
+ // fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(1);
59
+ // fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(2);
60
+ // fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
61
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['', '', '']);
62
+ });
63
+
64
+ it('When the user sets an answer in the \'Specify correct answer\' section then on switching to \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
65
+ fillInTheGapsOverImageTextPage.steps.switchToEditTab();
66
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsSpecifyCorrectAnswerSection([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 2, responseText: 'Stem' }]);
67
+ fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
68
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(0, 24);
69
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(0);
70
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(1);
71
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(2);
72
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
73
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewTabPointsBackgroundForIncorrectOrPartiallyCorrectAnswer();
74
+ fillInTheGapsOverImageTextPage.steps.verifyResponseAreaNumeration();
75
+ utilities.verifyInnerText(fillInTheGapsOverImageTextPage.correctAnswersLabel(), 'Correct answers');
76
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
77
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['Flower', '', 'Stem']);
78
+ });
79
+
80
+ it('When the user has set an answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, points should be allocated for the correct answers and correct answer section should be displayed', () => {
81
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
82
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: '1' }]);
83
+ fillInTheGapsOverImageTextPage.steps.clearAnswerInputFieldPreviewTab(0);
84
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
85
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(0, 24);
86
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(0);
87
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(1);
88
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(2);
89
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
90
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['Flower', '', 'Stem']);
91
+ });
92
+
93
+ it('When the user has set an answer in the \'Specify correct answer\' section and enters responses in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, points should be allocated for the correct answers and correct answer section should be displayed', () => {
94
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
95
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Flower' }]);
96
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
97
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(0, 24);
98
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(0);
99
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(1);
100
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(2);
101
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
102
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['Flower', '', 'Stem']);
103
+ });
104
+
105
+ it('When the user attempts the question incorrectly, then the user should be awarded 0 points and on switching to \'Grading\' view, incorrect icons should be displayed besides all incorrect responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers along with numeration should be displayed', () => {
106
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
107
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Marigold' }, { responseIndex: 1, responseText: 'Rose' }, { responseIndex: 2, responseText: 'Sunflower' }]);
108
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(0, 24);
109
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
110
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(0);
111
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(1);
112
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(2);
113
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
114
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['Flower', '', 'Stem']);
115
+ });
116
+
117
+ it('When user attempts the question correctly, the user should be awarded full points and on switching to \'Grading\' view, then correct icons should be displayed beside all the correct responses, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
118
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
119
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 2, responseText: 'Stem' }]);
120
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(24, 24);
121
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
122
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewTabPointsBackgroundForCorrectAnswer();
123
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(0);
124
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(1);
125
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(2);
126
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
127
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerSectionNotExists();
128
+ });
129
+ });
130
+
131
+ describe(`Auto scored - Partial equal weights`, () => {
132
+ abortEarlySetup();
133
+ before(() => {
134
+ fillInTheGapsOverImageTextPage.steps.navigateToCreateQuestion('fill in the gaps over image with text');
135
+ cy.barsPreLoaderWait();
136
+ fillInTheGapsOverImageTextPage.steps.addTextInQuestionInstructionsInputField('Fill in the gaps');
137
+ fillInTheGapsOverImageTextPage.steps.uploadFile('highlightImage.jpg');
138
+ fillInTheGapsOverImageTextPage.steps.verifyImageIsUploaded();
139
+ fillInTheGapsOverImageTextPage.steps.insertResponseArea(30);
140
+ fillInTheGapsOverImageTextPage.steps.insertResponseArea(40);
141
+ fillInTheGapsOverImageTextPage.steps.insertResponseArea(80);
142
+ fillInTheGapsOverImageTextPage.steps.selectAutoScoredScoringSubtype('Partial equal weights');
143
+ fillInTheGapsOverImageTextPage.steps.allotPoints(24);
144
+ fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
145
+ });
146
+
147
+ it('When the user has not set any answer in the \'Specify correct answer\' section and switches to the \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
148
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
149
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(0, 24);
150
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(0);
151
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(1);
152
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(2);
153
+ fillInTheGapsOverImageTextPage.steps.verifyResponseAreaNumeration();
154
+ utilities.verifyInnerText(fillInTheGapsOverImageTextPage.correctAnswersLabel(), 'Correct answers');
155
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
156
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['', '', '']);
157
+ });
158
+
159
+ it('When the user has not set any answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the responses, full points should be allocated and correct answer section should not be displayed', () => {
160
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
161
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: '1' }]);
162
+ fillInTheGapsOverImageTextPage.steps.clearAnswerInputFieldPreviewTab(0);
163
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
164
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(24, 24);
165
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(0);
166
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(1);
167
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(2);
168
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerSectionNotExists();
169
+ });
170
+
171
+ it('When the user has not set any answer in the \'Specify correct answer\' section and enters incorrect response in any response in the preview tab then correct icons should be displayed beside the empty responses, incorrect icons should be displayed beside incorrect responses, points for the correct answers should be allocated and correct answer section should be displayed', () => {
172
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
173
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Marigold' }]);
174
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
175
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(16, 24);
176
+ //Failing due to https://redmine.zeuslearning.com/issues/588679
177
+ // fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(0);
178
+ // fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(1);
179
+ // fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(2);
180
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['', '', '']);
181
+ });
182
+
183
+ it('When the user sets an answer in the \'Specify correct answer\' section then on switching to \'Grading\' view without attempting the question, dropzone numeration should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label \'Correct answers\' should be displayed with correct answers and respective option numeration', () => {
184
+ fillInTheGapsOverImageTextPage.steps.switchToEditTab();
185
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsSpecifyCorrectAnswerSection([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 2, responseText: 'Stem' }]);
186
+ fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
187
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(0, 24);
188
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(0);
189
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(1);
190
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectIconNotExist(2);
191
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
192
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewTabPointsBackgroundForIncorrectOrPartiallyCorrectAnswer();
193
+ fillInTheGapsOverImageTextPage.steps.verifyResponseAreaNumeration();
194
+ utilities.verifyInnerText(fillInTheGapsOverImageTextPage.correctAnswersLabel(), 'Correct answers');
195
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
196
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['Flower', '', 'Stem']);
197
+ });
198
+
199
+ it('When the user has set an answer in the \'Specify correct answer\' section and interacts with the question in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, points should be allocated for the correct answers and correct answer section should be displayed', () => {
200
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
201
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: '1' }]);
202
+ fillInTheGapsOverImageTextPage.steps.clearAnswerInputFieldPreviewTab(0);
203
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
204
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(8, 24);
205
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(0);
206
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(1);
207
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(2);
208
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['Flower', '', 'Stem']);
209
+ });
210
+
211
+ it('When the user has set an answer in the \'Specify correct answer\' section and enters responses in the preview tab then correct icons should be displayed beside all the correct responses and incorrect icon beside the incorrect responses, points should be allocated for the correct answers and correct answer section should be displayed', () => {
212
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
213
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Flower' }]);
214
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
215
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(16, 24);
216
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(0);
217
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(1);
218
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(2);
219
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['Flower', '', 'Stem']);
220
+ });
221
+
222
+ it('When the user attempts the question incorrectly, then the user should be awarded 0 points and on switching to \'Grading\' view, incorrect icons should be displayed besides all incorrect responses, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers along with numeration should be displayed', () => {
223
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
224
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Marigold' }, { responseIndex: 1, responseText: 'Rose' }, { responseIndex: 2, responseText: 'Sunflower' }]);
225
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(0, 24);
226
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
227
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(0);
228
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(1);
229
+ fillInTheGapsOverImageTextPage.steps.verifyIncorrectOptionIcon(2);
230
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount(['Flower', '', 'Stem']);
231
+ });
232
+
233
+ it('When user attempts the question correctly, the user should be awarded full points and on switching to \'Grading\' view, then correct icons should be displayed beside all the correct responses, correct icon should be displayed besides the correct answer responses, a status message with text \'Your answer is correct\' and correct answer section should not be displayed', () => {
234
+ fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
235
+ fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 2, responseText: 'Stem' }]);
236
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(24, 24);
237
+ fillInTheGapsOverImageTextPage.steps.switchToGradingView();
238
+ fillInTheGapsOverImageTextPage.steps.verifyPreviewTabPointsBackgroundForCorrectAnswer();
239
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(0);
240
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(1);
241
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectOptionIcon(2);
242
+ fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerSectionNotExists();
243
+ });
244
+ });
245
+ });