itemengine-cypress-automation 1.0.381-PR-fixes-1c28a3d.0 → 1.0.381-regressionFixes10June-8dc1710.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (295) hide show
  1. package/Dockerfile +1 -0
  2. package/cypress/e2e/GradingGridView/gradingGridView.js +156 -0
  3. package/cypress/e2e/ILC/AudioResponseNew/barRecorderStyle.smoke.js +2 -0
  4. package/cypress/e2e/ILC/AudioResponseNew/compactRecorderStyle.smoke.js +4 -0
  5. package/cypress/e2e/ILC/AudioResponseNew/editTabBasicSection.js +4 -16
  6. package/cypress/e2e/ILC/BrainingCampManipulative/editTabBasicSection.js +1 -1
  7. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/gradingViewAndCorrectAnswerView.smoke.js +1 -1
  8. package/cypress/e2e/ILC/ChartsBar/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +33 -0
  9. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightBasic.js +25 -25
  10. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +37 -36
  11. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +37 -36
  12. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +37 -36
  13. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +1 -0
  14. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightBasic.js +26 -25
  15. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +39 -38
  16. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +31 -30
  17. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +35 -34
  18. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePointsLocked.js +247 -0
  19. package/cypress/e2e/ILC/ChartsBar/editQuestion.smoke.js +1 -1
  20. package/cypress/e2e/ILC/ChartsBar/editTabBasicSection.js +37 -0
  21. package/cypress/e2e/ILC/ChartsBar/headerSection.js +50 -2
  22. package/cypress/e2e/ILC/ChartsBar/specifyCorrectAnswerSection.js +92 -0
  23. package/cypress/e2e/ILC/ChartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePointsLocked.js +220 -0
  24. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightBasic.js +25 -25
  25. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +47 -46
  26. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +25 -24
  27. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +25 -24
  28. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +1 -0
  29. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightBasic.js +25 -25
  30. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +24 -23
  31. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +21 -20
  32. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +48 -46
  33. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePointsLocked.js +249 -0
  34. package/cypress/e2e/ILC/ChartsLine/editQuestion.smoke.js +3 -1
  35. package/cypress/e2e/ILC/ChartsLine/headerSection.js +18 -1
  36. package/cypress/e2e/ILC/ChartsLine/specifyCorrectAnswerSection.js +94 -0
  37. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddFeatureRadioButton.js +2 -3
  38. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddTranscriptRadioButton .js +2 -4
  39. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabStudentViewSettings.js +3 -3
  40. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerHeaderSectionAndButtons.js +2 -2
  41. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTab.js +1 -1
  42. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabSupportedFileTypes.js +6 -0
  43. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabTranscript.js +2 -3
  44. package/cypress/e2e/ILC/CkEditorInsertImage/imageInfo.js +3 -3
  45. package/cypress/e2e/ILC/CkEditorInsertTable/tableDimension&FooterProperties.js +3 -3
  46. package/cypress/e2e/ILC/CkEditorInsertTable/tableStyle.js +11 -11
  47. package/cypress/e2e/ILC/CkEditorLink/uploadSection.js +1 -1
  48. package/cypress/e2e/ILC/ContentBlocks/editTabBasics.js +63 -4
  49. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/allOrNothingBasicForAllViews.smoke.js +116 -7
  50. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/editTabBasicSection.js +1 -1
  51. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/editTabScoring.js +1 -0
  52. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/headerSection.js +3 -3
  53. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/pagination.js +1 -1
  54. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/studentViewSettingsForGroupedLayout.js +3 -0
  55. package/cypress/e2e/ILC/DrawingResponse/drawingResponseAdditionalSettings.js +1 -0
  56. package/cypress/e2e/ILC/DrawingResponse/drawingResponseBackground.js +2 -8
  57. package/cypress/e2e/ILC/DrawingResponse/drawingResponseCustomizeAdditionalOptions.js +1 -0
  58. package/cypress/e2e/ILC/DrawingResponse/drawingResponseEditTabBasicSection.js +3 -3
  59. package/cypress/e2e/ILC/DrawingResponse/drawingResponsePreviewTabContents.smoke.js +1 -3
  60. package/cypress/e2e/ILC/EssayResponse/createCustomCategory.smoke.js +2 -2
  61. package/cypress/e2e/ILC/EssayResponse/editTabBasicSections.js +23 -37
  62. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/allOrNothingForAllViews.smoke.js +210 -0
  63. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/draggableOptions.js +2 -0
  64. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/editTabBasicSection.js +1 -1
  65. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/headerSection.js +3 -3
  66. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/previewContentsForAllViewInIncompleteAuthoring.smoke.js +7 -7
  67. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/previewContentsForAllViews.smoke.js +11 -11
  68. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editQuestion.smoke.js +40 -0
  69. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editTabBasicSection.js +1 -1
  70. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/headerSection.js +3 -3
  71. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/allOrNothingForAllViews.smoke.js +216 -0
  72. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/headerSection.js +3 -3
  73. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editQuestion.smoke.js +45 -0
  74. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editTabBasicSection.js +1 -1
  75. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/headerSection.js +4 -4
  76. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/HeaderSection.js +4 -4
  77. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/editQuestion.smoke.js +1 -1
  78. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/responseAnswersAndAcceptedStudentInput.js +4 -0
  79. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/supportedFileTypes.js +3 -1
  80. package/cypress/e2e/ILC/FillInTheGapsTextNew/editTabBasicSection.js +1 -1
  81. package/cypress/e2e/ILC/FillInTheGapsTextNew/headerSection.js +3 -3
  82. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +73 -0
  83. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +38 -0
  84. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +38 -0
  85. package/cypress/e2e/ILC/Graphing/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +87 -0
  86. package/cypress/e2e/ILC/Graphing/allOrNothingForAllViews.smoke.js +2 -2
  87. package/cypress/e2e/ILC/Graphing/checkAddAlternativeButton.js +35 -0
  88. package/cypress/e2e/ILC/Graphing/editQuestion.smoke.js +28 -0
  89. package/cypress/e2e/ILC/Graphing/editTabBasicSection.js +38 -0
  90. package/cypress/e2e/ILC/Graphing/editTabScoringSection.js +1 -0
  91. package/cypress/e2e/ILC/Graphing/headerSection.js +36 -4
  92. package/cypress/e2e/ILC/Graphing/layoutAndGridOptions.js +6 -3
  93. package/cypress/e2e/ILC/GridFill/addAlternateButton.js +40 -0
  94. package/cypress/e2e/ILC/GridFill/allOrNothingBasicForAllViews.smoke.js +210 -0
  95. package/cypress/e2e/ILC/GridFill/customizeLayoutFillImageBackgroundImage.js +2 -2
  96. package/cypress/e2e/ILC/GridFill/headerSection.js +4 -4
  97. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +39 -0
  98. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  99. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +39 -0
  100. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountAllOrNothingCorrectPointsGreaterThanAlternativePoints.js +37 -0
  101. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountallOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  102. package/cypress/e2e/ILC/GridFill/scoring/cellshadeCountAllOrNothingAlternativePointsGreaterThanCorrectPoints.js +36 -0
  103. package/cypress/e2e/ILC/GridFill/scoring/checkLabelSaveAsYouGo.js +75 -0
  104. package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +2 -1
  105. package/cypress/e2e/ILC/ImageHighlight/additionalSettingsBasic.js +1 -0
  106. package/cypress/e2e/ILC/ImageHighlight/allOrNothingForAllViews.smoke.js +212 -0
  107. package/cypress/e2e/ILC/ImageHighlight/customiseHighlightStyle.js +29 -0
  108. package/cypress/e2e/ILC/ImageHighlight/editTabBasicSection.js +1 -1
  109. package/cypress/e2e/ILC/ImageHighlight/headerSection.js +3 -3
  110. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +24 -0
  111. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +24 -0
  112. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +24 -0
  113. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +86 -0
  114. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/manuallyAndNonScored.js +2 -4
  115. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsBasic.js +1 -1
  116. package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +237 -1
  117. package/cypress/e2e/ILC/ListOrderingDropdown/checkAddAlternativeButton.js +35 -0
  118. package/cypress/e2e/ILC/ListOrderingDropdown/editTabBasicSection.js +24 -0
  119. package/cypress/e2e/ILC/ListOrderingDropdown/headerSection.js +108 -0
  120. package/cypress/e2e/ILC/ListOrderingDropdown/manuallyAndNonScoredEditTab.js +2 -1
  121. package/cypress/e2e/ILC/ListOrderingDropdown/previewContentsForAllViews.smoke.js +2 -4
  122. package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +7 -12
  123. package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js +10 -14
  124. package/cypress/e2e/ILC/ListOrderingNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +52 -0
  125. package/cypress/e2e/ILC/ListOrderingNew/allOrNothingForAllViews.smoke.js +215 -0
  126. package/cypress/e2e/ILC/ListOrderingNew/editTabBasicSection.js +23 -0
  127. package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +36 -9
  128. package/cypress/e2e/ILC/ListOrderingNew/manuallyAndNonScoredEditTab.js +2 -0
  129. package/cypress/e2e/ILC/ListOrderingNew/specifyCorrectAnswerSection.js +7 -23
  130. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +41 -0
  131. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +30 -0
  132. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +50 -0
  133. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +101 -0
  134. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/allOrNothingForAllViews.smoke.js +309 -0
  135. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/checkAddAlternativeButton.js +38 -0
  136. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabBasicSection.js +24 -0
  137. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabScoring.js +4 -1
  138. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/headerSection.js +38 -3
  139. package/cypress/e2e/ILC/Matching/Scoring/blankResponseScoring.js +38 -41
  140. package/cypress/e2e/ILC/Matching/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +98 -0
  141. package/cypress/e2e/ILC/Matching/allOrNothingScoringForAllViews.smoke.js +210 -0
  142. package/cypress/e2e/ILC/Matching/checkAlternativeButton.js +38 -0
  143. package/cypress/e2e/ILC/Matching/clickAndDrop.js +5 -5
  144. package/cypress/e2e/ILC/Matching/draggableOptions.js +7 -0
  145. package/cypress/e2e/ILC/Matching/editQuestion.smoke.js +3 -2
  146. package/cypress/e2e/ILC/Matching/editTabBasicSection.js +41 -0
  147. package/cypress/e2e/ILC/Matching/headerSection.js +38 -12
  148. package/cypress/e2e/ILC/Matching/questionInstructionsAndPromptSection.js +2 -15
  149. package/cypress/e2e/ILC/Matching/studentViewSettings.js +2 -0
  150. package/cypress/e2e/ILC/Matching/studentViewSettingsForGroupedLayout.js +1 -1
  151. package/cypress/e2e/ILC/MatchingDropdown/Scoring/blankResponseScoring.js +6 -6
  152. package/cypress/e2e/ILC/MatchingDropdown/allOrNothingScoringForAllViews.smoke.js +208 -0
  153. package/cypress/e2e/ILC/MultipleSelection/allOrNothingBasicForAllViews.smoke.js +2 -1
  154. package/cypress/e2e/ILC/MultipleSelection/editTabBasicSection.js +1 -1
  155. package/cypress/e2e/ILC/MultipleSelection/headerSection.js +3 -3
  156. package/cypress/e2e/ILC/MultipleSelectionGridNew/Scoring/checkScoringLabelBannerAndCorrectAnswer.js +1 -0
  157. package/cypress/e2e/ILC/MultipleSelectionGridNew/editTabBasicSection.js +2 -2
  158. package/cypress/e2e/ILC/MultipleSelectionGridNew/headerSection.js +3 -3
  159. package/cypress/e2e/ILC/MultipleSelectionGridNew/previewContentsForAllViews.smoke.js +100 -69
  160. package/cypress/e2e/ILC/MultipleSelectionGridNew/styleAndLayoutCustomizationLayoutProperties.js +1 -0
  161. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +79 -0
  162. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +42 -0
  163. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +42 -0
  164. package/cypress/e2e/ILC/NumberLine/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +75 -0
  165. package/cypress/e2e/ILC/NumberLine/checkAddAlternativeButton.js +32 -0
  166. package/cypress/e2e/ILC/NumberLine/editTabSection.js +38 -0
  167. package/cypress/e2e/ILC/NumberLine/headerSection.js +33 -4
  168. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +81 -0
  169. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +43 -0
  170. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +43 -0
  171. package/cypress/e2e/ILC/NumberLineLabel/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +76 -0
  172. package/cypress/e2e/ILC/NumberLineLabel/additionalSettingsBasic.js +1 -1
  173. package/cypress/e2e/ILC/NumberLineLabel/checkAddAlternativeButton.js +34 -0
  174. package/cypress/e2e/ILC/NumberLineLabel/editTabSection.js +38 -0
  175. package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +37 -5
  176. package/cypress/e2e/ILC/NumberLineLabel/manuallyAndNonScoredEditTab.js +2 -1
  177. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/editQuestion.smoke.js +1 -1
  178. package/cypress/e2e/ILC/ShortTextResponseNew/allOrNothingBasicForAllViews.smoke.js +186 -0
  179. package/cypress/e2e/ILC/ShortTextResponseNew/editTabBasicSections.js +35 -51
  180. package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +2 -4
  181. package/cypress/e2e/ILC/SingleSelection/editTabBasicSection.js +1 -1
  182. package/cypress/e2e/ILC/SingleSelection/headerSection.js +2 -2
  183. package/cypress/e2e/ILC/SingleSelectionGridNew/editTabBasicSection.js +2 -2
  184. package/cypress/e2e/ILC/SingleSelectionGridNew/headerSection.js +3 -3
  185. package/cypress/e2e/ILC/SingleSelectionGridNew/previewContentsForAllViews.smoke.js +101 -70
  186. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +86 -0
  187. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +86 -0
  188. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  189. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +3 -1
  190. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  191. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  192. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsScoringBasic.js +10 -3
  193. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +4 -2
  194. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +5 -3
  195. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  196. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsScoringBasic.js +4 -0
  197. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +64 -0
  198. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAddEvaluation.js +2 -0
  199. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAlternateAnswer.js +2 -0
  200. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +64 -0
  201. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  202. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  203. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  204. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  205. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsScoringBasic.js +8 -0
  206. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  207. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  208. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  209. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasic.js +1 -0
  210. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasicForAlternateAnswer.js +2 -0
  211. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +2 -0
  212. package/cypress/e2e/ILC/TextEntryMath/editTabBasicSection.js +27 -3
  213. package/cypress/e2e/ILC/TextEntryMath/headerSection.js +43 -0
  214. package/cypress/e2e/ILC/TextSelection/additionalSettings.js +1 -0
  215. package/cypress/e2e/ILC/TextSelection/allOrNothingScoringForAllViews.smoke.js +231 -0
  216. package/cypress/e2e/ILC/TextSelection/editTabBasicSection.js +2 -2
  217. package/cypress/e2e/ILC/TextSelection/headerSection.js +3 -3
  218. package/cypress/e2e/ILC/TextSelection/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -0
  219. package/cypress/e2e/ILC/ThinkSphere/createReviewItem.js +1 -1
  220. package/cypress/e2e/ILC/ThinkSphere/editTabBasicSection.js +1 -1
  221. package/cypress/e2e/ILC/ThinkSphere/editThinkSphereQuestion.smoke.js +145 -54
  222. package/cypress/e2e/ILC/ThinkSphere/equationEditorEditCategoryFlyOut.js +2 -0
  223. package/cypress/e2e/ILC/ThinkSphere/planPhase.js +45 -5
  224. package/cypress/e2e/ILC/ThinkSphere/previewTabPlanSection.js +8 -8
  225. package/cypress/e2e/ILC/ThinkSphere/previewTabReviewSection.js +97 -0
  226. package/cypress/e2e/ILC/ThinkSphere/previewTabSolveSection.js +36 -0
  227. package/cypress/e2e/ILC/ThinkSphere/solvePhase.js +3 -3
  228. package/cypress/e2e/ILC/ThinkSphere/studentViewPlanTabSection.js +393 -0
  229. package/cypress/e2e/ILC/ThinkSphere/studentViewReviewTabSection.js +141 -0
  230. package/cypress/e2e/ILC/ToolAudioPlayerNew/headerSection.js +90 -2
  231. package/cypress/e2e/ILC/UploadResponse/editTabBasicSection.js +34 -0
  232. package/cypress/e2e/ILC/UploadResponse/headerSection.js +38 -1
  233. package/cypress/e2e/ILC/UploadResponse/uploadResponsePreview.js +50 -13
  234. package/cypress/e2e/ILC/VideoResponseNew/editTabBasicSection.js +14 -29
  235. package/cypress/e2e/ILC/chartsDotsPlot/headerSection.js +16 -1
  236. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsBasic.js +27 -28
  237. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithAlternativePointsGreaterThanCorrectPoints.js +31 -30
  238. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +24 -24
  239. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithCorrectPointsGreaterThanAlternativePoints.js +39 -37
  240. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsBasic.js +22 -23
  241. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +31 -30
  242. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +25 -24
  243. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +31 -31
  244. package/cypress/e2e/ILC/chartsDotsPlot/scoring/toleranceThresholdScoring.js +18 -19
  245. package/cypress/e2e/ILC/chartsDotsPlot/specifyCorrectAnswerSection.js +96 -0
  246. package/cypress/e2e/Sessions/fetchResponses.js +3 -3
  247. package/cypress/e2e/Sessions/saveResponseScores.js +2 -2
  248. package/cypress/fixtures/thinkSphereWhiteboardTools.js +66 -0
  249. package/cypress/pages/audioPlayerPage.js +47 -22
  250. package/cypress/pages/brainingCampManipulativePage.js +1 -1
  251. package/cypress/pages/chartsBarPage.js +45 -0
  252. package/cypress/pages/chartsDotPlotPage.js +25 -0
  253. package/cypress/pages/chartsLinePage.js +28 -3
  254. package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +5 -1
  255. package/cypress/pages/components/chartsCommonComponent.js +6 -2
  256. package/cypress/pages/components/ckEditorEquationEditorComponent.js +1 -0
  257. package/cypress/pages/components/ckEditorInsertImageComponent.js +3 -3
  258. package/cypress/pages/components/ckEditorInsertTableComponent.js +3 -3
  259. package/cypress/pages/components/ckEditorLinkComponent.js +8 -9
  260. package/cypress/pages/components/colorPopupComponent.js +6 -0
  261. package/cypress/pages/components/createQuestionBasePage.js +19 -6
  262. package/cypress/pages/components/draggableOptionsSectionComponent.js +2 -0
  263. package/cypress/pages/components/equationEditorSectionCommonComponent.js +10 -25
  264. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +31 -3
  265. package/cypress/pages/components/gridQuestionCommonComponent.js +55 -2
  266. package/cypress/pages/components/imageCanvasComponent.js +11 -5
  267. package/cypress/pages/components/questionInstructionsComponent.js +2 -0
  268. package/cypress/pages/components/scoringSectionBaseEditTab.js +3 -0
  269. package/cypress/pages/components/specifyRowsAndColumnsComponent.js +16 -0
  270. package/cypress/pages/contentBlocksPage.js +2 -0
  271. package/cypress/pages/desmos3DGraphingPage.js +149 -4
  272. package/cypress/pages/desmosGeometryPage.js +184 -4
  273. package/cypress/pages/drawingResponsePage.js +10 -1
  274. package/cypress/pages/fillInTheGapsDragAndDropPage.js +3 -8
  275. package/cypress/pages/gradingGridViewPage.js +64 -0
  276. package/cypress/pages/graphingPage.js +27 -8
  277. package/cypress/pages/gridFillPage.js +27 -9
  278. package/cypress/pages/imageHighlightPage.js +115 -15
  279. package/cypress/pages/index.js +1 -0
  280. package/cypress/pages/listOrderingPage.js +40 -1
  281. package/cypress/pages/matchingPage.js +29 -10
  282. package/cypress/pages/numberLineLabelPage.js +31 -8
  283. package/cypress/pages/numberLinePage.js +19 -7
  284. package/cypress/pages/singleSelectionPage.js +30 -1
  285. package/cypress/pages/textEntryMathPage.js +24 -1
  286. package/cypress/pages/textSelectionPage.js +2 -2
  287. package/cypress/pages/thinkSpherePage.js +928 -87
  288. package/cypress/pages/uploadResponsePage.js +17 -1
  289. package/cypress/pages/videoResponsePage.js +3 -0
  290. package/cypress/support/commands.js +9 -0
  291. package/cypress/support/helpers/createItem.js +22 -3
  292. package/cypress/support/helpers/utilities.js +14 -1
  293. package/package.json +2 -2
  294. /package/cypress/e2e/ILC/{ChartsDotsPlot → chartsDotsPlot}/checkAnswerFunctionalityForAllViews.js +0 -0
  295. /package/cypress/e2e/ILC/{ChartsDotsPlot → chartsDotsPlot}/editQuestion.smoke.js +0 -0
@@ -73,55 +73,45 @@ describe('Create question page - Essay Response: Question Instructions, Set limi
73
73
  essayResponsePage.steps.setMaximumLimit(500);
74
74
  });
75
75
 
76
- it('When the user clears the minimum word limit input field and focuses out of it, then error message \'Error: Minimum word limit is required\' should be displayed below the input field', () => {
76
+ it('When the user clears the minimum word limit input field and focuses out of it, then the error message should not be displayed', () => {
77
77
  essayResponsePage.steps.clearAndFocusOutOfMinimumLimitInputField();
78
- utilities.verifyInnerText(essayResponsePage.errorMessage(), 'Error: Minimum word limit is required.');
79
- utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'visible');
78
+ utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
80
79
  });
81
80
 
82
- essayResponsePage.tests.verifyErrorMessageCSSAndA11y();
83
-
84
- it('When the user enters value in minimum word limit input field then the error message should disappear', () => {
81
+ it('When the user enters value 0 in the minimum word limit input field, it should be accepted', () => {
85
82
  essayResponsePage.steps.setMinimumLimit(0);
86
- utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
87
83
  });
88
84
 
89
- it('When the user clears the maximum word limit input field and focuses out of it, then error message \'Error: Maximum word limit is required.\' should be displayed below the input field', () => {
85
+ it('When the user clears the maximum word limit input field and focuses out of it, then the error message should not be displayed', () => {
90
86
  essayResponsePage.steps.clearAndFocusOutOfMaximumLimitInputField();
91
- utilities.verifyInnerText(essayResponsePage.errorMessage(), 'Error: Maximum word limit is required.');
92
- utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'visible');
87
+ utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
93
88
  });
94
89
 
95
- it('When the user enters value in maximum word limit input field then the error message should disappear', () => {
90
+ it('When the user enters a value in the maximum word limit input field, it should be accepted', () => {
96
91
  essayResponsePage.steps.setMaximumLimit(500);
97
- utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
98
92
  });
99
93
 
100
- it('When the user sets minimum limit input field value greater than maximum limit input field value then error message \'Error: Minimum limit must be less than or equal to maximum limit.\' and \'Error: Maximum limit must be greater than or equal to minimum limit.\'should be displayed below the minimum and maximum input field respectively', () => {
94
+ it('When the user sets the minimum limit input field value greater than the maximum limit input field value, then error messages should not be displayed below both input fields', () => {
101
95
  essayResponsePage.steps.setMinimumLimit(700);
102
- essayResponsePage.steps.verifyMaximumLimitErrorMessage();
103
- essayResponsePage.steps.verifyMinimumLimitErrorMessage();
96
+ utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
104
97
  });
105
98
 
106
- essayResponsePage.tests.verifyErrorMessageCSSAndA11y();
107
-
108
- it('When the user sets minimum limit input field value less than or equal to maximum limit input field value then error message should disappear', () => {
99
+ it('When the user sets the minimum limit input field value less than or equal to the maximum limit input field value, then the error messages should disappear', () => {
109
100
  essayResponsePage.steps.setMinimumLimit(500);
110
101
  utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
111
102
  });
112
103
 
113
- it('When the user sets maximum limit input field value less than minimum limit input field value then error message \'Error: Minimum limit must be less than or equal to maximum limit.\' and \'Error: Maximum limit must be greater than or equal to minimum limit.\'should be displayed below the minimum and maximum input field respectively', () => {
104
+ it('When the user sets the maximum limit input field value less than the minimum limit input field value, then error messages not be displayed below both input fields', () => {
114
105
  essayResponsePage.steps.setMaximumLimit(400);
115
- essayResponsePage.steps.verifyMaximumLimitErrorMessage();
116
- essayResponsePage.steps.verifyMinimumLimitErrorMessage();
106
+ utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
117
107
  });
118
108
 
119
- it('When the user sets maximum limit input field value greater than or equal to minimum limit input field value then error message should disappear', () => {
109
+ it('When the user sets the maximum limit input field value greater than or equal to the minimum limit input field value, then the error messages should disappear', () => {
120
110
  essayResponsePage.steps.setMaximumLimit(800);
121
111
  utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
122
112
  });
123
113
 
124
- it('\'Always show maximum limit\' and \'Always show minimum limit\' labels and checkbox should be displayed and by default \'Always show maximum limit\' should be checked', () => {
114
+ it('\'Always show maximum limit\' and \'Always show minimum limit\' labels and checkboxes should be displayed, and by default, \'Always show maximum limit\' should be checked', () => {
125
115
  utilities.verifyInnerText(essayResponsePage.alwaysShowMaxLimitLabel(), 'Always show maximum limit');
126
116
  utilities.verifyElementVisibilityState(essayResponsePage.alwaysShowMaxLimitLabel(), 'visible');
127
117
  utilities.verifyInnerText(essayResponsePage.alwaysShowMinLimitLabel(), 'Always show minimum limit');
@@ -129,44 +119,40 @@ describe('Create question page - Essay Response: Question Instructions, Set limi
129
119
  essayResponsePage.steps.verifyAlwaysShowMaximumLimitCheckboxIsChecked();
130
120
  });
131
121
 
132
- it('When the user selects \'Character\' radio button then labels should change to \'Minimum character limit\' and \'Maximum character limit\'', () => {
122
+ it('When the user selects the \'Character\' radio button, the labels should change to \'Minimum character limit\' and \'Maximum character limit\'', () => {
133
123
  essayResponsePage.steps.checkCharacterRadioButton();
134
124
  utilities.verifyInnerText(essayResponsePage.minimumLimitLabel(), 'Minimum character limit');
135
125
  utilities.verifyInnerText(essayResponsePage.maximumLimitLabel(), 'Maximum character limit');
136
126
  });
137
127
 
138
128
  it('\'Minimum character limit\' and \'Maximum character limit\' input fields should be updated to 0 and 20000 by default', () => {
139
- essayResponsePage.steps.verifyMinimumLimitInputField(0)
140
- essayResponsePage.steps.verifyMaximumLimitInputField(20000)
129
+ essayResponsePage.steps.verifyMinimumLimitInputField(0);
130
+ essayResponsePage.steps.verifyMaximumLimitInputField(20000);
141
131
  });
142
132
 
143
- it('User should be able to update values in both the input fields', () => {
133
+ it('User should be able to update values in both the input fields for character limits', () => {
144
134
  essayResponsePage.steps.setMinimumLimit(750);
145
135
  essayResponsePage.steps.setMaximumLimit(12000);
146
136
  });
147
137
 
148
- it('When the user clears the minimum character limit input field and focuses out of it, then error message \'Error: Minimum character limit is required\' should be displayed below the input field', () => {
138
+ it('When the user clears the minimum character limit input field and focuses out of it, then the error message should not be displayed', () => {
149
139
  essayResponsePage.steps.clearAndFocusOutOfMinimumLimitInputField();
150
- utilities.verifyInnerText(essayResponsePage.errorMessage(), 'Error: Minimum character limit is required.');
151
- utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'visible');
140
+ utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
152
141
  });
153
142
 
154
143
  essayResponsePage.tests.verifyErrorMessageCSSAndA11y();
155
144
 
156
- it('When the user enters value in minimum character limit input field then the error message should disappear', () => {
145
+ it('When the user enters a value in the minimum character limit input field, the error message should disappear', () => {
157
146
  essayResponsePage.steps.setMinimumLimit(0);
158
- utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
159
147
  });
160
148
 
161
- it('When the user clears the maximum character limit input field and focuses out of it, then error message \'Error: Maximum character limit is required.\' should be displayed below the input field', () => {
149
+ it('When the user clears the maximum character limit input field and focuses out of it, then the error message should not be displayed', () => {
162
150
  essayResponsePage.steps.clearAndFocusOutOfMaximumLimitInputField();
163
- utilities.verifyInnerText(essayResponsePage.errorMessage(), 'Error: Maximum character limit is required.');
164
- utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'visible');
151
+ utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
165
152
  });
166
153
 
167
- it('When the user enters value in maximum character limit input field then the error message should disappear', () => {
154
+ it('When the user enters a value in the maximum character limit input field, the error message should disappear', () => {
168
155
  essayResponsePage.steps.setMaximumLimit(500);
169
- utilities.verifyElementVisibilityState(essayResponsePage.errorMessage(), 'notExist');
170
156
  });
171
157
 
172
158
  it('CSS of \'Set word limit\' sections', { tags: 'css' }, () => {
@@ -222,6 +222,216 @@ describe('Create item page - Fill in the gaps - drag and drop: All or nothing ',
222
222
  });
223
223
  });
224
224
 
225
+ views.forEach((view) => {
226
+ describe(`Fill in the Gaps with drag and drop - Manually scored: ${view}`, { tags: 'smoke' }, () => {
227
+ abortEarlySetup();
228
+ before(() => {
229
+ switch (view) {
230
+ case 'Question preview':
231
+ fillInTheGapsDragAndDropPage.steps.navigateToCreateQuestion('fill in the gaps with drag and drop');
232
+ cy.barsPreLoaderWait();
233
+ fillInTheGapsDragAndDropPage.steps.addTextInQuestionInstructionsInputField('Drag and drop options into correct dropzone');
234
+ fillInTheGapsDragAndDropPage.steps.expandScoringTypeDropdown();
235
+ fillInTheGapsDragAndDropPage.steps.selectOptionFromScoringTypeDropdown('Manually scored');
236
+ fillInTheGapsDragAndDropPage.steps.addResponseArea();
237
+ fillInTheGapsDragAndDropPage.steps.allotPoints(20);
238
+ fillInTheGapsDragAndDropPage.steps.addMultipleOptionFields(2);
239
+ fillInTheGapsDragAndDropPage.steps.addInputToOptionsInputField(['Petals', 'Leaves', 'Roots', 'Stem']);
240
+ fillInTheGapsDragAndDropPage.steps.switchToPreviewTab();
241
+ break;
242
+ case 'Item preview':
243
+ cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
244
+ itemPreviewPage.steps.switchToPreviewTab();
245
+ break;
246
+ case 'Grading view':
247
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
248
+ break;
249
+ };
250
+ });
251
+
252
+ beforeEach(() => {
253
+ switch (view) {
254
+ case 'Question preview':
255
+ fillInTheGapsDragAndDropPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
256
+ fillInTheGapsDragAndDropPage.steps.resetQuestionPreview();
257
+ break;
258
+ case 'Item preview':
259
+ fillInTheGapsDragAndDropPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
260
+ itemPreviewPage.steps.resetQuestionPreview();
261
+ break;
262
+ case 'Grading view':
263
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
264
+ break;
265
+ }
266
+ });
267
+
268
+ if (view === 'Question preview') {
269
+ after(() => {
270
+ fillInTheGapsDragAndDropPage.steps.clickOnSaveQuestionButton();
271
+ utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
272
+ itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
273
+ });
274
+ };
275
+
276
+ it('Question instructions should be visible', () => {
277
+ fillInTheGapsDragAndDropPage.steps.verifyQuestionInstructionsTextPreviewTab('Drag and drop options into correct dropzone');
278
+ fillInTheGapsDragAndDropPage.steps.verifyVisibityOfQuestionInstructionsText();
279
+ });
280
+
281
+ it('User should be able to attempt the question in student view, and correct/incorrect icons, "Your answer is correct/incorrect" label, and correct answer section should not be displayed in grading view', () => {
282
+ fillInTheGapsDragAndDropPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Petals': 0, 'Leaves': 1, 'Roots': 2 });
283
+ if (view === 'Grading view') {
284
+ studentViewPage.steps.submitResponse();
285
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
286
+ studentViewPage.steps.clickOnGoToGradingViewButton();
287
+ gradingViewPage.steps.verifyGradingViewScore('', 20);
288
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectIncorrectIconNotExist(0);
289
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectIncorrectIconNotExist(1);
290
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectIncorrectIconNotExist(2);
291
+ fillInTheGapsDragAndDropPage.steps.verifyAnswerStatusBannerNotExist();
292
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectAnswerSectionNotExist();
293
+ };
294
+ if (view === 'Question preview' || view === 'Item preview') {
295
+ fillInTheGapsDragAndDropPage.steps.checkManuallyScoredScoringLabel();
296
+ };
297
+ });
298
+ });
299
+ });
300
+
301
+ views.forEach((view) => {
302
+ describe(`Fill in the Gaps with Drag and drop - Non scored: ${view}`, { tags: 'smoke' }, () => {
303
+ abortEarlySetup();
304
+ before(() => {
305
+ switch (view) {
306
+ case 'Question preview':
307
+ fillInTheGapsDragAndDropPage.steps.navigateToCreateQuestion('fill in the gaps with drag and drop');
308
+ cy.barsPreLoaderWait();
309
+ fillInTheGapsDragAndDropPage.steps.addTextInQuestionInstructionsInputField('Drag and drop options into correct dropzone');
310
+ fillInTheGapsDragAndDropPage.steps.addMultipleOptionFields(2);
311
+ fillInTheGapsDragAndDropPage.steps.addResponseArea();
312
+ fillInTheGapsDragAndDropPage.steps.addInputToOptionsInputField(['Petals', 'Leaves', 'Roots', 'Stem']);
313
+ fillInTheGapsDragAndDropPage.steps.expandScoringTypeDropdown();
314
+ fillInTheGapsDragAndDropPage.steps.selectOptionFromScoringTypeDropdown('Non scored');
315
+ fillInTheGapsDragAndDropPage.steps.clickAndDropOptionInDropzoneSpecifyCorrectAnswerSection({ 'Petals': 0, 'Leaves': 1, 'Stem': 2 });
316
+ fillInTheGapsDragAndDropPage.steps.switchToPreviewTab();
317
+ break;
318
+ case 'Item preview':
319
+ cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
320
+ itemPreviewPage.steps.switchToPreviewTab();
321
+ break;
322
+ case 'Grading view':
323
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
324
+ break;
325
+ };
326
+ });
327
+
328
+ beforeEach(() => {
329
+ switch (view) {
330
+ case 'Question preview':
331
+ fillInTheGapsDragAndDropPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
332
+ fillInTheGapsDragAndDropPage.steps.resetQuestionPreview();
333
+ break;
334
+ case 'Item preview':
335
+ fillInTheGapsDragAndDropPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
336
+ itemPreviewPage.steps.resetQuestionPreview();
337
+ break;
338
+ case 'Grading view':
339
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
340
+ break;
341
+ }
342
+ });
343
+
344
+ if (view === 'Question preview') {
345
+ after(() => {
346
+ fillInTheGapsDragAndDropPage.steps.clickOnSaveQuestionButton();
347
+ utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
348
+ itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
349
+ });
350
+ };
351
+
352
+ it('When the user selects "Grading" view without attempting the question, non-scoring label 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 correct/incorrect icons should not be displayed', () => {
353
+ if (view === 'Grading view') {
354
+ studentViewPage.steps.submitResponse();
355
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
356
+ studentViewPage.steps.clickOnGoToGradingViewButton();
357
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
358
+ };
359
+ if (view === 'Question preview' || view === 'Item preview') {
360
+ fillInTheGapsDragAndDropPage.steps.checkNonScoredScoringLabel();
361
+ fillInTheGapsDragAndDropPage.steps.switchToGradingView();
362
+ fillInTheGapsDragAndDropPage.steps.verifyPreviewTabPointsBackgroundForIncorrectOrPartiallyCorrectAnswer();
363
+ };
364
+ utilities.verifyInnerText(fillInTheGapsDragAndDropPage.correctAnswersLabel(), 'Correct answers');
365
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectIncorrectIconsNotExist();
366
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Petals'], ['Leaves'], ['Stem']]);
367
+ });
368
+
369
+ it('When the user attempts the question incorrectly, and on switching to "Grading" view, non-scoring label should be displayed, incorrect icon should be displayed beside incorrect response, a status message with text "Your answer is incorrect" and correct answer section with correct answers should be displayed', () => {
370
+ fillInTheGapsDragAndDropPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Roots': 0, 'Leaves': 2, 'Stem': 1 });
371
+ if (view === 'Grading view') {
372
+ studentViewPage.steps.submitResponse();
373
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
374
+ studentViewPage.steps.clickOnGoToGradingViewButton();
375
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
376
+ };
377
+ if (view === 'Question preview' || view === 'Item preview') {
378
+ fillInTheGapsDragAndDropPage.steps.checkNonScoredScoringLabel();
379
+ fillInTheGapsDragAndDropPage.steps.switchToGradingView();
380
+ fillInTheGapsDragAndDropPage.steps.verifyPreviewTabPointsBackgroundForIncorrectOrPartiallyCorrectAnswer();
381
+ };
382
+ fillInTheGapsDragAndDropPage.steps.verifyIncorrectOptionIcon(0);
383
+ fillInTheGapsDragAndDropPage.steps.verifyIncorrectOptionIcon(1);
384
+ fillInTheGapsDragAndDropPage.steps.verifyIncorrectOptionIcon(2);
385
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
386
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Petals'], ['Leaves'], ['Stem']]);
387
+ });
388
+
389
+ 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 should be displayed', () => {
390
+ if (view === 'Grading view') {
391
+ studentViewPage.steps.clearResponses();
392
+ };
393
+ fillInTheGapsDragAndDropPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Petals': 0, 'Roots': 2 });
394
+ if (view === 'Grading view') {
395
+ studentViewPage.steps.submitResponse();
396
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
397
+ studentViewPage.steps.clickOnGoToGradingViewButton();
398
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
399
+ };
400
+ if (view === 'Question preview' || view === 'Item preview') {
401
+ fillInTheGapsDragAndDropPage.steps.checkNonScoredScoringLabel();
402
+ fillInTheGapsDragAndDropPage.steps.switchToGradingView();
403
+ };
404
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectOptionIcon(0);
405
+ fillInTheGapsDragAndDropPage.steps.verifyIncorrectOptionIcon(1);
406
+ fillInTheGapsDragAndDropPage.steps.verifyIncorrectOptionIcon(2);
407
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
408
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Petals'], ['Leaves'], ['Stem']]);
409
+ });
410
+
411
+ it('When the user attempts the question correctly, and on switching to "Grading" view, non-scoring label should be displayed, correct icons should be displayed beside the correct response, a status message with text "Your answer is correct" should be displayed and correct answer section should not be displayed', () => {
412
+ if (view === 'Grading view') {
413
+ studentViewPage.steps.clearResponses();
414
+ };
415
+ fillInTheGapsDragAndDropPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Petals': 0, 'Leaves': 1, 'Stem': 2 });
416
+ if (view === 'Grading view') {
417
+ studentViewPage.steps.submitResponse();
418
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
419
+ studentViewPage.steps.clickOnGoToGradingViewButton();
420
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
421
+ };
422
+ if (view === 'Question preview' || view === 'Item preview') {
423
+ fillInTheGapsDragAndDropPage.steps.checkNonScoredScoringLabel();
424
+ fillInTheGapsDragAndDropPage.steps.switchToGradingView();
425
+ };
426
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectOptionIcon(0);
427
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectOptionIcon(1);
428
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectOptionIcon(2);
429
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
430
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectAnswerSectionNotExists();
431
+ });
432
+ });
433
+ });
434
+
225
435
  if (!grepTags || !grepTags.includes('smoke')) {
226
436
  describe('Question preview: Auto scored - All or nothing: Minimum scoring', () => {
227
437
  abortEarlySetup();
@@ -142,6 +142,7 @@ describe('Create Item page - Fill in the gaps with drag and drop: Draggable opti
142
142
  before(() => {
143
143
  fillInTheGapsDragAndDropPage.steps.navigateToCreateQuestion('fill in the gaps with drag and drop');
144
144
  cy.barsPreLoaderWait();
145
+ fillInTheGapsDragAndDropPage.steps.addTextInQuestionInstructionsInputField('Fill in the gaps drag and drop')
145
146
  fillInTheGapsDragAndDropPage.steps.expandDraggableOptionsLayoutDropdown();
146
147
  fillInTheGapsDragAndDropPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
147
148
  });
@@ -169,6 +170,7 @@ describe('Create Item page - Fill in the gaps with drag and drop: Draggable opti
169
170
  before(() => {
170
171
  fillInTheGapsDragAndDropPage.steps.navigateToCreateQuestion('fill in the gaps with drag and drop');
171
172
  cy.barsPreLoaderWait();
173
+ fillInTheGapsDragAndDropPage.steps.addTextInQuestionInstructionsInputField('Fill in the gaps drag and drop')
172
174
  fillInTheGapsDragAndDropPage.steps.expandDraggableOptionsLayoutDropdown();
173
175
  fillInTheGapsDragAndDropPage.steps.selectOptionFromDraggableOptionsLayoutDropdown('Grouped');
174
176
  });
@@ -151,7 +151,7 @@ describe('Create item page - Fill in the gaps with text: Question instructions,
151
151
  });
152
152
 
153
153
  it('Warning icons should be displayed on the required input fields', () => {
154
- fillInTheGapsDragAndDropPage.steps.verifyWarningIconOnRequiredFields(['Please enter all option values', 'Please set points']);
154
+ fillInTheGapsDragAndDropPage.steps.verifyWarningIconOnRequiredFields(['Please enter all option values.', 'Please set points.']);
155
155
  });
156
156
 
157
157
  it('When required input fields are filled then warning icons should disappear', () => {
@@ -47,11 +47,11 @@ describe('Create item page - Fill in the gaps drag and drop: Header section and
47
47
  });
48
48
 
49
49
  describe('Validation error messages', () => {
50
- dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please enter all option values', 'Please set points']);
50
+ dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please enter all option values.', 'Please set points.']);
51
51
 
52
52
  it('Validation error messages should be displayed below required input fields', () => {
53
53
  fillInTheGapsDragAndDropPage.steps.verifyQuestionInstructionsErrorMessageIsNotDisplayed();
54
- fillInTheGapsDragAndDropPage.steps.verifyWarningIconOnRequiredFields(['Please enter all option values', 'Please set points']);
54
+ fillInTheGapsDragAndDropPage.steps.verifyWarningIconOnRequiredFields(['Please enter all option values.', 'Please set points.']);
55
55
  });
56
56
 
57
57
  it('Validation error messages should disappear when required input fields are filled', () => {
@@ -80,7 +80,7 @@ describe('Create item page - Fill in the gaps drag and drop: Header section and
80
80
  });
81
81
 
82
82
  it('User should be able to save the question with incomplete authoring and display a snackbar with the text "Saved successfully!" when the Save Question button is clicked', () => {
83
- dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please enter all option values', 'Please set points']);
83
+ dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please enter all option values.', 'Please set points.']);
84
84
  fillInTheGapsDragAndDropPage.steps.saveAQuestionWithIncompleteAuthoring();
85
85
  });
86
86
  fillInTheGapsDragAndDropPage.tests.verifySavedSuccessfullySnackbarCSSAndA11y();
@@ -95,17 +95,17 @@ describe('Preview tab contents for all views - Incomplete Authoring', () => {
95
95
  });
96
96
 
97
97
  it('User should be able to drag and drop image, bold text and equation options in the dropzone', () => {
98
- fillInTheGapsDragAndDropPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'This is a bold option': 0, 'Solve the following': 1, 'Petals': 2 });
99
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(2, 'Petals');
100
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithImageInPreviewTab(2);
98
+ fillInTheGapsDragAndDropPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'This is a bold option': 0, 'Solve the following': 2, 'Petals': 1 });
99
+ fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(1, 'Petals');
100
+ fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithImageInPreviewTab(1);
101
101
  fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(0, 'This is a bold option');
102
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneContainsTextPreviewTab(1, 'Solve the following');
103
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithEquationTextInPreviewTab(1);
102
+ fillInTheGapsDragAndDropPage.steps.verifyDropzoneContainsTextPreviewTab(2, 'Solve the following');
103
+ fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithEquationTextInPreviewTab(2);
104
104
  });
105
105
  } else if (view === 'Grading view') {
106
106
  it(`The submitted options should be in the respective dropzone and the options container should not be displayed`, () => {
107
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(2, '3\nPetals');
108
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithImageInPreviewTab(2);
107
+ fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(1, '2\nPetals');
108
+ fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithImageInPreviewTab(1);
109
109
  fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(0, '1\nThis is a bold option');
110
110
  utilities.verifyElementVisibilityState(fillInTheGapsDragAndDropPage.optionContainerOptionsPreviewTab(), 'notExist');
111
111
  });
@@ -110,23 +110,23 @@ describe('Preview tab contents for all views', () => {
110
110
  });
111
111
 
112
112
  it('User should be able to drag and drop image, bold text and equation options in the dropzone', () => {
113
- fillInTheGapsDragAndDropPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'This is a bold option': 0, 'Solve the following': 1, 'Petals': 2 });
114
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(2, 'Petals');
115
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithImageInPreviewTab(2);
113
+ fillInTheGapsDragAndDropPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'This is a bold option': 0, 'Solve the following': 2, 'Petals': 1 });
114
+ fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(1, 'Petals');
115
+ fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithImageInPreviewTab(1);
116
116
  fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(0, 'This is a bold option');
117
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneContainsTextPreviewTab(1, 'Solve the following');
118
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithEquationTextInPreviewTab(1);
117
+ // fillInTheGapsDragAndDropPage.steps.verifyDropzoneContainsTextPreviewTab(2, 'Solve the following');
118
+ // fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithEquationTextInPreviewTab(2);
119
119
  });
120
120
  } else if (view === 'Grading view') {
121
121
  it(`The submitted options should be in the respective dropzone and the options container should not be displayed`, () => {
122
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(2, '3\nPetals');
123
- fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithImageInPreviewTab(2);
122
+ fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(1, '2\nPetals');
123
+ fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithImageInPreviewTab(1);
124
124
  fillInTheGapsDragAndDropPage.steps.verifyDropzoneTextPreviewTab(0, '1\nThis is a bold option');
125
- // fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithEquationTextInPreviewTab(1);
125
+ // fillInTheGapsDragAndDropPage.steps.verifyDropzoneWithEquationTextInPreviewTab(2);
126
126
  fillInTheGapsDragAndDropPage.steps.verifyCorrectOptionIcon(0);
127
- // fillInTheGapsDragAndDropPage.steps.verifyCorrectOptionIcon(1);
128
- fillInTheGapsDragAndDropPage.steps.verifyCorrectOptionIcon(2);
129
- fillInTheGapsDragAndDropPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
127
+ fillInTheGapsDragAndDropPage.steps.verifyIncorrectOptionIcon(1);
128
+ // fillInTheGapsDragAndDropPage.steps.verifyIncorrectOptionIcon(2);
129
+ fillInTheGapsDragAndDropPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
130
130
  utilities.verifyElementVisibilityState(fillInTheGapsDragAndDropPage.optionContainerOptionsPreviewTab(), 'notExist');
131
131
  });
132
132
 
@@ -7,6 +7,8 @@ const optionsForDropdown1 = ['Flower', 'Petal', 'Stem', 'Branch'];
7
7
  const optionsForDropdown2 = ['Leaf', 'Leaves', 'Stem', 'Seed'];
8
8
  const correctAnswerArray = ['Flower', 'Leaf'];
9
9
  const correctAnswerArray1 = ['Leaves', 'Petal'];
10
+ const equalitySign = ['=', '≠', '>', '<'];
11
+ const equalitySign1 = ['≠', '≥', '≤', '='];
10
12
 
11
13
  describe('Edit item - fill in the gaps with dropdown', () => {
12
14
  before(() => {
@@ -89,4 +91,42 @@ describe('Edit item - fill in the gaps with dropdown', () => {
89
91
  fillInTheGapsDropdownPage.steps.saveAQuestionWithIncompleteAuthoring();
90
92
  });
91
93
  });
94
+
95
+ //https://weldnorthed.atlassian.net/browse/IEI-6059
96
+ describe('Fill in the gaps with dropdown question - equality sign functionality', () => {
97
+ abortEarlySetup();
98
+ before(() => {
99
+ fillInTheGapsDropdownPage.steps.navigateToCreateQuestion('fill in the gaps with dropdown');
100
+ cy.barsPreLoaderWait();
101
+ fillInTheGapsDropdownPage.steps.addTextInQuestionInstructionsInputField('Fill in the gaps with dropdown')
102
+ fillInTheGapsDropdownPage.steps.allotPoints(20);
103
+ fillInTheGapsDropdownPage.steps.addInputToDropdownOptionFields(0, equalitySign);
104
+ fillInTheGapsDropdownPage.steps.addInputToDropdownOptionFields(1, equalitySign1);
105
+ fillInTheGapsDropdownPage.steps.selectResponseFromDropdownSpecifyCorrectAnswerSection(0, equalitySign[2]);
106
+ fillInTheGapsDropdownPage.steps.selectResponseFromDropdownSpecifyCorrectAnswerSection(1, equalitySign1[1]);
107
+ fillInTheGapsDropdownPage.steps.allotPoints(10);
108
+ fillInTheGapsDropdownPage.steps.saveAQuestionAndVerifySnackbar();
109
+ });
110
+
111
+ it('When user switches to the preview tab, then the equality signs should be displayed as is in the dropdown and correct answer section', () => {
112
+ fillInTheGapsDropdownPage.steps.switchToPreviewTab();
113
+ fillInTheGapsDropdownPage.steps.switchToGradingView();
114
+ fillInTheGapsDropdownPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([equalitySign[2], equalitySign1[1]]);
115
+ fillInTheGapsDropdownPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: equalitySign[2] }, { dropdownIndex: 1, dropdownOption: equalitySign1[1] }]);
116
+ });
117
+
118
+ it('User should be able to edit the question and check the options in the options input field', () => {
119
+ fillInTheGapsDropdownPage.steps.switchToEditTab();
120
+ fillInTheGapsDropdownPage.steps.editItem();
121
+ fillInTheGapsDropdownPage.steps.switchToEditTab();
122
+ fillInTheGapsDropdownPage.steps.verifyOptionFieldContent(equalitySign);
123
+ fillInTheGapsDropdownPage.steps.navigateToDropdownOptionsTab(1);
124
+ fillInTheGapsDropdownPage.steps.verifyOptionFieldContent(equalitySign1);
125
+ });
126
+
127
+ it('The options in the dropdown should be displayed as the options in the input field', () => {
128
+ fillInTheGapsDropdownPage.steps.verifyDropdownOptionsSpecifyCorrectAnswerSection(0, equalitySign);
129
+ fillInTheGapsDropdownPage.steps.verifyDropdownOptionsSpecifyCorrectAnswerSection(1, equalitySign1);
130
+ });
131
+ });
92
132
  });
@@ -154,7 +154,7 @@ describe('Create item page - Fill in the gaps: Question instructions, Options se
154
154
  });
155
155
 
156
156
  it('Warning icons should be displayed on the required input fields', () => {
157
- fillInTheGapsDropdownPage.steps.verifyWarningIconOnRequiredFields(['Please enter all option values', 'Please set points']);
157
+ fillInTheGapsDropdownPage.steps.verifyWarningIconOnRequiredFields(['Please enter all option values.', 'Please set points.']);
158
158
  });
159
159
 
160
160
  it('When required input fields are filled then warning icons should disappear', () => {
@@ -46,11 +46,11 @@ describe('Create item page - Fill in the gaps with dropdown: Header section and
46
46
  });
47
47
 
48
48
  describe('Validation error messages', () => {
49
- dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please enter all option values', 'Please set points']);
49
+ dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please enter all option values.', 'Please set points.']);
50
50
 
51
51
  it('Validation error messages should be displayed below required input fields', () => {
52
52
  fillInTheGapsDropdownPage.steps.verifyQuestionInstructionsErrorMessageIsNotDisplayed();
53
- fillInTheGapsDropdownPage.steps.verifyWarningIconOnRequiredFields(['Please enter all option values', 'Please set points']);
53
+ fillInTheGapsDropdownPage.steps.verifyWarningIconOnRequiredFields(['Please enter all option values.', 'Please set points.']);
54
54
  });
55
55
 
56
56
  it('Validation error messages should disappear when required input fields are filled', () => {
@@ -81,7 +81,7 @@ describe('Create item page - Fill in the gaps with dropdown: Header section and
81
81
  });
82
82
 
83
83
  it('User should be able to save the question with incomplete authoring and display a snackbar with the text "Saved successfully!" when the Save Question button is clicked', () => {
84
- dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please enter all option values', 'Please set points']);
84
+ dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please enter all option values.', 'Please set points.']);
85
85
  fillInTheGapsDropdownPage.steps.saveAQuestionWithIncompleteAuthoring();
86
86
  });
87
87
  fillInTheGapsDropdownPage.tests.verifySavedSuccessfullySnackbarCSSAndA11y();