itemengine-cypress-automation 1.0.381-fixes-r1-4b1054a.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 (294) 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/drawingResponsePreviewTabContents.smoke.js +1 -3
  59. package/cypress/e2e/ILC/EssayResponse/editTabBasicSections.js +23 -37
  60. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/allOrNothingForAllViews.smoke.js +210 -0
  61. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/draggableOptions.js +2 -0
  62. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/editTabBasicSection.js +1 -1
  63. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/headerSection.js +3 -3
  64. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/previewContentsForAllViewInIncompleteAuthoring.smoke.js +7 -7
  65. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/previewContentsForAllViews.smoke.js +11 -11
  66. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editQuestion.smoke.js +40 -0
  67. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editTabBasicSection.js +1 -1
  68. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/headerSection.js +3 -3
  69. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/allOrNothingForAllViews.smoke.js +216 -0
  70. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/headerSection.js +3 -3
  71. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editQuestion.smoke.js +45 -0
  72. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editTabBasicSection.js +1 -1
  73. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/headerSection.js +4 -4
  74. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/HeaderSection.js +4 -4
  75. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/editQuestion.smoke.js +1 -1
  76. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/responseAnswersAndAcceptedStudentInput.js +4 -0
  77. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/supportedFileTypes.js +3 -1
  78. package/cypress/e2e/ILC/FillInTheGapsTextNew/editTabBasicSection.js +1 -1
  79. package/cypress/e2e/ILC/FillInTheGapsTextNew/headerSection.js +3 -3
  80. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +73 -0
  81. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +38 -0
  82. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +38 -0
  83. package/cypress/e2e/ILC/Graphing/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +87 -0
  84. package/cypress/e2e/ILC/Graphing/allOrNothingForAllViews.smoke.js +2 -2
  85. package/cypress/e2e/ILC/Graphing/checkAddAlternativeButton.js +35 -0
  86. package/cypress/e2e/ILC/Graphing/editQuestion.smoke.js +28 -0
  87. package/cypress/e2e/ILC/Graphing/editTabBasicSection.js +38 -0
  88. package/cypress/e2e/ILC/Graphing/editTabScoringSection.js +1 -0
  89. package/cypress/e2e/ILC/Graphing/headerSection.js +36 -4
  90. package/cypress/e2e/ILC/Graphing/layoutAndGridOptions.js +6 -3
  91. package/cypress/e2e/ILC/GridFill/addAlternateButton.js +40 -0
  92. package/cypress/e2e/ILC/GridFill/allOrNothingBasicForAllViews.smoke.js +210 -0
  93. package/cypress/e2e/ILC/GridFill/customizeLayoutFillImageBackgroundImage.js +2 -2
  94. package/cypress/e2e/ILC/GridFill/headerSection.js +4 -4
  95. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +39 -0
  96. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  97. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +39 -0
  98. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountAllOrNothingCorrectPointsGreaterThanAlternativePoints.js +37 -0
  99. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountallOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  100. package/cypress/e2e/ILC/GridFill/scoring/cellshadeCountAllOrNothingAlternativePointsGreaterThanCorrectPoints.js +36 -0
  101. package/cypress/e2e/ILC/GridFill/scoring/checkLabelSaveAsYouGo.js +75 -0
  102. package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +2 -1
  103. package/cypress/e2e/ILC/ImageHighlight/additionalSettingsBasic.js +1 -0
  104. package/cypress/e2e/ILC/ImageHighlight/allOrNothingForAllViews.smoke.js +212 -0
  105. package/cypress/e2e/ILC/ImageHighlight/customiseHighlightStyle.js +29 -0
  106. package/cypress/e2e/ILC/ImageHighlight/editTabBasicSection.js +1 -1
  107. package/cypress/e2e/ILC/ImageHighlight/headerSection.js +3 -3
  108. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +24 -0
  109. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +24 -0
  110. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +24 -0
  111. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +86 -0
  112. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/manuallyAndNonScored.js +2 -4
  113. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsBasic.js +1 -1
  114. package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +237 -1
  115. package/cypress/e2e/ILC/ListOrderingDropdown/checkAddAlternativeButton.js +35 -0
  116. package/cypress/e2e/ILC/ListOrderingDropdown/editTabBasicSection.js +24 -0
  117. package/cypress/e2e/ILC/ListOrderingDropdown/headerSection.js +108 -0
  118. package/cypress/e2e/ILC/ListOrderingDropdown/manuallyAndNonScoredEditTab.js +2 -1
  119. package/cypress/e2e/ILC/ListOrderingDropdown/previewContentsForAllViews.smoke.js +2 -4
  120. package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +7 -12
  121. package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js +10 -14
  122. package/cypress/e2e/ILC/ListOrderingNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +52 -0
  123. package/cypress/e2e/ILC/ListOrderingNew/allOrNothingForAllViews.smoke.js +215 -0
  124. package/cypress/e2e/ILC/ListOrderingNew/editTabBasicSection.js +23 -0
  125. package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +36 -9
  126. package/cypress/e2e/ILC/ListOrderingNew/manuallyAndNonScoredEditTab.js +2 -0
  127. package/cypress/e2e/ILC/ListOrderingNew/specifyCorrectAnswerSection.js +7 -23
  128. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +41 -0
  129. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +30 -0
  130. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +50 -0
  131. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +101 -0
  132. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/allOrNothingForAllViews.smoke.js +309 -0
  133. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/checkAddAlternativeButton.js +38 -0
  134. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabBasicSection.js +24 -0
  135. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabScoring.js +4 -1
  136. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/headerSection.js +38 -3
  137. package/cypress/e2e/ILC/Matching/Scoring/blankResponseScoring.js +38 -41
  138. package/cypress/e2e/ILC/Matching/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +98 -0
  139. package/cypress/e2e/ILC/Matching/allOrNothingScoringForAllViews.smoke.js +210 -0
  140. package/cypress/e2e/ILC/Matching/checkAlternativeButton.js +38 -0
  141. package/cypress/e2e/ILC/Matching/clickAndDrop.js +5 -5
  142. package/cypress/e2e/ILC/Matching/draggableOptions.js +7 -0
  143. package/cypress/e2e/ILC/Matching/editQuestion.smoke.js +3 -2
  144. package/cypress/e2e/ILC/Matching/editTabBasicSection.js +41 -0
  145. package/cypress/e2e/ILC/Matching/headerSection.js +38 -12
  146. package/cypress/e2e/ILC/Matching/questionInstructionsAndPromptSection.js +2 -15
  147. package/cypress/e2e/ILC/Matching/studentViewSettings.js +2 -0
  148. package/cypress/e2e/ILC/Matching/studentViewSettingsForGroupedLayout.js +1 -1
  149. package/cypress/e2e/ILC/MatchingDropdown/Scoring/blankResponseScoring.js +6 -6
  150. package/cypress/e2e/ILC/MatchingDropdown/allOrNothingScoringForAllViews.smoke.js +208 -0
  151. package/cypress/e2e/ILC/MultipleSelection/allOrNothingBasicForAllViews.smoke.js +2 -1
  152. package/cypress/e2e/ILC/MultipleSelection/editTabBasicSection.js +1 -1
  153. package/cypress/e2e/ILC/MultipleSelection/headerSection.js +3 -3
  154. package/cypress/e2e/ILC/MultipleSelectionGridNew/Scoring/checkScoringLabelBannerAndCorrectAnswer.js +1 -0
  155. package/cypress/e2e/ILC/MultipleSelectionGridNew/editTabBasicSection.js +2 -2
  156. package/cypress/e2e/ILC/MultipleSelectionGridNew/headerSection.js +3 -3
  157. package/cypress/e2e/ILC/MultipleSelectionGridNew/previewContentsForAllViews.smoke.js +100 -69
  158. package/cypress/e2e/ILC/MultipleSelectionGridNew/styleAndLayoutCustomizationLayoutProperties.js +1 -0
  159. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +79 -0
  160. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +42 -0
  161. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +42 -0
  162. package/cypress/e2e/ILC/NumberLine/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +75 -0
  163. package/cypress/e2e/ILC/NumberLine/checkAddAlternativeButton.js +32 -0
  164. package/cypress/e2e/ILC/NumberLine/editTabSection.js +38 -0
  165. package/cypress/e2e/ILC/NumberLine/headerSection.js +33 -4
  166. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +81 -0
  167. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +43 -0
  168. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +43 -0
  169. package/cypress/e2e/ILC/NumberLineLabel/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +76 -0
  170. package/cypress/e2e/ILC/NumberLineLabel/additionalSettingsBasic.js +1 -1
  171. package/cypress/e2e/ILC/NumberLineLabel/checkAddAlternativeButton.js +34 -0
  172. package/cypress/e2e/ILC/NumberLineLabel/editTabSection.js +38 -0
  173. package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +37 -5
  174. package/cypress/e2e/ILC/NumberLineLabel/manuallyAndNonScoredEditTab.js +2 -1
  175. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/editQuestion.smoke.js +1 -1
  176. package/cypress/e2e/ILC/ShortTextResponseNew/allOrNothingBasicForAllViews.smoke.js +186 -0
  177. package/cypress/e2e/ILC/ShortTextResponseNew/editTabBasicSections.js +33 -49
  178. package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +2 -4
  179. package/cypress/e2e/ILC/SingleSelection/editTabBasicSection.js +1 -1
  180. package/cypress/e2e/ILC/SingleSelection/headerSection.js +2 -2
  181. package/cypress/e2e/ILC/SingleSelectionGridNew/editTabBasicSection.js +2 -2
  182. package/cypress/e2e/ILC/SingleSelectionGridNew/headerSection.js +3 -3
  183. package/cypress/e2e/ILC/SingleSelectionGridNew/previewContentsForAllViews.smoke.js +101 -70
  184. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +86 -0
  185. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +86 -0
  186. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  187. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +3 -1
  188. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  189. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  190. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsScoringBasic.js +10 -3
  191. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +4 -2
  192. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +5 -3
  193. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  194. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsScoringBasic.js +4 -0
  195. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +64 -0
  196. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAddEvaluation.js +2 -0
  197. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAlternateAnswer.js +2 -0
  198. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +64 -0
  199. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  200. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  201. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  202. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  203. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsScoringBasic.js +8 -0
  204. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  205. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  206. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  207. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasic.js +1 -0
  208. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasicForAlternateAnswer.js +2 -0
  209. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +2 -0
  210. package/cypress/e2e/ILC/TextEntryMath/editTabBasicSection.js +27 -3
  211. package/cypress/e2e/ILC/TextEntryMath/headerSection.js +43 -0
  212. package/cypress/e2e/ILC/TextSelection/additionalSettings.js +1 -0
  213. package/cypress/e2e/ILC/TextSelection/allOrNothingScoringForAllViews.smoke.js +231 -0
  214. package/cypress/e2e/ILC/TextSelection/editTabBasicSection.js +2 -2
  215. package/cypress/e2e/ILC/TextSelection/headerSection.js +3 -3
  216. package/cypress/e2e/ILC/TextSelection/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -0
  217. package/cypress/e2e/ILC/ThinkSphere/createReviewItem.js +1 -1
  218. package/cypress/e2e/ILC/ThinkSphere/editTabBasicSection.js +1 -1
  219. package/cypress/e2e/ILC/ThinkSphere/editThinkSphereQuestion.smoke.js +145 -54
  220. package/cypress/e2e/ILC/ThinkSphere/equationEditorEditCategoryFlyOut.js +2 -0
  221. package/cypress/e2e/ILC/ThinkSphere/planPhase.js +45 -5
  222. package/cypress/e2e/ILC/ThinkSphere/previewTabPlanSection.js +8 -8
  223. package/cypress/e2e/ILC/ThinkSphere/previewTabReviewSection.js +97 -0
  224. package/cypress/e2e/ILC/ThinkSphere/previewTabSolveSection.js +36 -0
  225. package/cypress/e2e/ILC/ThinkSphere/solvePhase.js +3 -3
  226. package/cypress/e2e/ILC/ThinkSphere/studentViewPlanTabSection.js +393 -0
  227. package/cypress/e2e/ILC/ThinkSphere/studentViewReviewTabSection.js +141 -0
  228. package/cypress/e2e/ILC/ToolAudioPlayerNew/headerSection.js +90 -2
  229. package/cypress/e2e/ILC/UploadResponse/editTabBasicSection.js +34 -0
  230. package/cypress/e2e/ILC/UploadResponse/headerSection.js +38 -1
  231. package/cypress/e2e/ILC/UploadResponse/uploadResponsePreview.js +50 -13
  232. package/cypress/e2e/ILC/VideoResponseNew/editTabBasicSection.js +14 -29
  233. package/cypress/e2e/ILC/chartsDotsPlot/headerSection.js +16 -1
  234. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsBasic.js +27 -28
  235. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithAlternativePointsGreaterThanCorrectPoints.js +31 -30
  236. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +24 -24
  237. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithCorrectPointsGreaterThanAlternativePoints.js +39 -37
  238. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsBasic.js +22 -23
  239. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +31 -30
  240. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +25 -24
  241. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +31 -31
  242. package/cypress/e2e/ILC/chartsDotsPlot/scoring/toleranceThresholdScoring.js +18 -19
  243. package/cypress/e2e/ILC/chartsDotsPlot/specifyCorrectAnswerSection.js +96 -0
  244. package/cypress/e2e/Sessions/fetchResponses.js +3 -3
  245. package/cypress/e2e/Sessions/saveResponseScores.js +2 -2
  246. package/cypress/fixtures/thinkSphereWhiteboardTools.js +66 -0
  247. package/cypress/pages/audioPlayerPage.js +47 -22
  248. package/cypress/pages/brainingCampManipulativePage.js +1 -1
  249. package/cypress/pages/chartsBarPage.js +45 -0
  250. package/cypress/pages/chartsDotPlotPage.js +25 -0
  251. package/cypress/pages/chartsLinePage.js +28 -3
  252. package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +5 -1
  253. package/cypress/pages/components/chartsCommonComponent.js +6 -2
  254. package/cypress/pages/components/ckEditorEquationEditorComponent.js +1 -0
  255. package/cypress/pages/components/ckEditorInsertImageComponent.js +3 -3
  256. package/cypress/pages/components/ckEditorInsertTableComponent.js +3 -3
  257. package/cypress/pages/components/ckEditorLinkComponent.js +8 -9
  258. package/cypress/pages/components/colorPopupComponent.js +6 -0
  259. package/cypress/pages/components/createQuestionBasePage.js +19 -6
  260. package/cypress/pages/components/desmosToolComponent.js +1 -1
  261. package/cypress/pages/components/draggableOptionsSectionComponent.js +2 -0
  262. package/cypress/pages/components/equationEditorSectionCommonComponent.js +10 -25
  263. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +31 -3
  264. package/cypress/pages/components/gridQuestionCommonComponent.js +55 -2
  265. package/cypress/pages/components/imageCanvasComponent.js +11 -5
  266. package/cypress/pages/components/questionInstructionsComponent.js +2 -0
  267. package/cypress/pages/components/scoringSectionBaseEditTab.js +3 -0
  268. package/cypress/pages/components/specifyRowsAndColumnsComponent.js +16 -0
  269. package/cypress/pages/contentBlocksPage.js +2 -0
  270. package/cypress/pages/desmos3DGraphingPage.js +149 -4
  271. package/cypress/pages/desmosGeometryPage.js +184 -4
  272. package/cypress/pages/drawingResponsePage.js +10 -1
  273. package/cypress/pages/fillInTheGapsDragAndDropPage.js +3 -8
  274. package/cypress/pages/gradingGridViewPage.js +64 -0
  275. package/cypress/pages/graphingPage.js +27 -8
  276. package/cypress/pages/gridFillPage.js +27 -9
  277. package/cypress/pages/imageHighlightPage.js +115 -15
  278. package/cypress/pages/index.js +1 -0
  279. package/cypress/pages/listOrderingPage.js +40 -1
  280. package/cypress/pages/matchingPage.js +29 -10
  281. package/cypress/pages/numberLineLabelPage.js +31 -8
  282. package/cypress/pages/numberLinePage.js +19 -7
  283. package/cypress/pages/singleSelectionPage.js +30 -1
  284. package/cypress/pages/textEntryMathPage.js +24 -1
  285. package/cypress/pages/textSelectionPage.js +2 -2
  286. package/cypress/pages/thinkSpherePage.js +928 -87
  287. package/cypress/pages/uploadResponsePage.js +17 -1
  288. package/cypress/pages/videoResponsePage.js +3 -0
  289. package/cypress/support/commands.js +9 -0
  290. package/cypress/support/helpers/createItem.js +22 -3
  291. package/cypress/support/helpers/utilities.js +14 -1
  292. package/package.json +2 -2
  293. /package/cypress/e2e/ILC/{ChartsDotsPlot → chartsDotsPlot}/checkAnswerFunctionalityForAllViews.js +0 -0
  294. /package/cypress/e2e/ILC/{ChartsDotsPlot → chartsDotsPlot}/editQuestion.smoke.js +0 -0
@@ -0,0 +1,249 @@
1
+ import { chartsLinePage } from "../../../../pages";
2
+ import abortEarlySetup from "../../../../support/helpers/abortEarly";
3
+
4
+ describe('Create item page - Charts - Line: Partial equal weights scoring with alternative answer - When Correct answer points are more than alternative Answer points with locked Points', () => {
5
+ before(() => {
6
+ cy.loginAs('admin');
7
+ });
8
+
9
+ describe('Question Preview: AutoScored - Partial equal weights with alternative answer: When Correct Answer points are more than alternative Answer points with locked points', () => {
10
+ abortEarlySetup();
11
+ before(() => {
12
+ chartsLinePage.steps.navigateToCreateQuestion('charts');
13
+ cy.barsPreLoaderWait();
14
+ chartsLinePage.steps.selectLineButton();
15
+ chartsLinePage.steps.addTextInQuestionInstructionsInputField('Set the bar on the chart for the profits of the years');
16
+ chartsLinePage.steps.addBarOrPointInChartInSelectChartTypeSection();
17
+ chartsLinePage.steps.addBarOrPointInChartInSelectChartTypeSection();
18
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 0, value: 3, range: 10 });
19
+ chartsLinePage.steps.lockPoint(0);
20
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 1, value: 2, range: 10 });
21
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 3, value: 3, range: 10 });
22
+ chartsLinePage.steps.allotPoints(20);
23
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
24
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
25
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
26
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
27
+ chartsLinePage.steps.addAlternativeAnswerAccordion(1);
28
+ chartsLinePage.steps.allotPoints(12);
29
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 1, value: 2, range: 10 });
30
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 2, value: 3, range: 10 });
31
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 3, value: 1, range: 10 });
32
+ chartsLinePage.steps.selectAutoScoredScoringSubtype('Partial equal weights');
33
+ chartsLinePage.steps.switchToPreviewTab();
34
+ });
35
+
36
+ it('When the user selects \'Grading\' view without attempting the question, then user should be provided with 0 points, correct icon should be displayed for bar set to correct by default, incorrect icon should be displayed for incorrect graph, the correct accordion answer should be displayed in the correct answer section graph and incorrect status message should be displayed', () => {
37
+ chartsLinePage.steps.switchToGradingView();
38
+ chartsLinePage.steps.verifyPreviewScore(0, 20);
39
+ chartsLinePage.steps.verifyPointIsLockedInPreviewTab(0);
40
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
41
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
42
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'incorrect');
43
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
44
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
45
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
46
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
47
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
48
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
49
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
50
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
51
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
52
+ });
53
+
54
+ it('When the user incorrectly attempts the answer, then the user should be awarded with points for the correctly set points and on switching to grading view, correct/incorrect status message should not be displayed, incorrect icons should be displayed on the incorrect points and correct answer section should be displayed with the correct answers from the correct accordion', () => {
55
+ chartsLinePage.steps.resetQuestionPreview();
56
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 4, range: 10 });
57
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 1, range: 10 });
58
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 3, range: 10 });
59
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 1, range: 10 });
60
+ chartsLinePage.steps.verifyPreviewScore(10, 20);
61
+ chartsLinePage.steps.switchToGradingView();
62
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
63
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
64
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'incorrect');
65
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
66
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
67
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
68
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
69
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
70
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
71
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
72
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
73
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
74
+ });
75
+
76
+ it('When the user attempts the question with responses from the correct accordion, then the user should be awarded full points and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, correct/incorrect status message should not be displayed and correct answer section should not be displayed', () => {
77
+ chartsLinePage.steps.resetQuestionPreview();
78
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 4, range: 10 });
79
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 5, range: 10 });
80
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 6, range: 10 });
81
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 1, range: 10 });
82
+ chartsLinePage.steps.verifyPreviewScore(20, 20);
83
+ chartsLinePage.steps.switchToGradingView();
84
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
85
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
86
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
87
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'correct');
88
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
89
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
90
+ chartsLinePage.steps.verifyCorrectAnswerSectionNotExist();
91
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
92
+ });
93
+
94
+ it('When the user attempts the question with responses from the alternative accordion, then the user should be awarded with points specified for alternative accordion (less than full points) and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, correct/incorrect status message should not be displayed and correct answer section should not be displayed', () => {
95
+ chartsLinePage.steps.resetQuestionPreview();
96
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 2, range: 10 });
97
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 3, range: 10 });
98
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 1, range: 10 });
99
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 0, range: 10 });
100
+ chartsLinePage.steps.verifyPreviewScore(12, 20);
101
+ chartsLinePage.steps.switchToGradingView();
102
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
103
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
104
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
105
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'correct');
106
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
107
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
108
+ chartsLinePage.steps.verifyCorrectAnswerSectionNotExist();
109
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
110
+ });
111
+
112
+ it('When the user attempts the question with partially correct exclusively from the correct accordion, then the user should be awarded with points for the correctly set points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, incorrect icons should be displayed on the incorrect points, correct/incorrect status message should not be displayed and correct answer section should be displayed with the correct answers from the correct accordion', () => {
113
+ chartsLinePage.steps.resetQuestionPreview();
114
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 4, range: 10 });
115
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 5, range: 10 });
116
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 0, range: 10 });
117
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 1, range: 10 });
118
+ chartsLinePage.steps.verifyPreviewScore(15, 20);
119
+ chartsLinePage.steps.switchToGradingView();
120
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
121
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
122
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
123
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
124
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
125
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
126
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
127
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
128
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
129
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
130
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
131
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
132
+ });
133
+
134
+ it('When the user attempts the question with partially correct exclusively from the alternative accordion, then the user should be awarded with points for the correctly set points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, incorrect icons should be displayed on the incorrect points correct/incorrect status message should not be displayed and correct answer section should be displayed with the correct answers from the correct accordion', () => {
135
+ chartsLinePage.steps.resetQuestionPreview();
136
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 2, range: 10 });
137
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 3, range: 10 });
138
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 0, range: 10 });
139
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 0, range: 10 });
140
+ chartsLinePage.steps.verifyPreviewScore(9, 20);
141
+ chartsLinePage.steps.switchToGradingView();
142
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
143
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
144
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
145
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
146
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
147
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
148
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
149
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
150
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
151
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
152
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
153
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
154
+ });
155
+
156
+ it('When the user attempts the question with more answers from the correct accordion than the alternate accordion, then the user should be awarded with points for the correctly set points from the correct accordion and on switching to \'Grading\' view, correct icon should be displayed besides the correct accordion responses, incorrect icons should be displayed on the alternate accordion responses, correct/incorrect status message should not be displayed and correct answer section should be displayed with the correct answers from the correct accordion', () => {
157
+ chartsLinePage.steps.resetQuestionPreview();
158
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 4, range: 10 });
159
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 5, range: 10 });
160
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 2, range: 10 });
161
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 1, range: 10 });
162
+ chartsLinePage.steps.verifyPreviewScore(15, 20);
163
+ chartsLinePage.steps.switchToGradingView();
164
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
165
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
166
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
167
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
168
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
169
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
170
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
171
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
172
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
173
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
174
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
175
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
176
+ });
177
+
178
+ it('When the user attempts the question with more answers from the alternate accordion than the correct accordion, then the user should be awarded with points for the correctly set points from the alternate accordion and on switching to \'Grading\' view, correct icon should be displayed besides the correct accordion responses, incorrect icons should be displayed on the alternate accordion responses, correct/incorrect status message should not be displayed and correct answer section should be displayed with the correct answers from the correct accordion', () => {
179
+ chartsLinePage.steps.resetQuestionPreview();
180
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 2, range: 10 });
181
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 5, range: 10 });
182
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 1, range: 10 });
183
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 0, range: 10 });
184
+ chartsLinePage.steps.verifyPreviewScore(9, 20);
185
+ chartsLinePage.steps.switchToGradingView();
186
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
187
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
188
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'incorrect');
189
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'correct');
190
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
191
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
192
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
193
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
194
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
195
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
196
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
197
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
198
+ });
199
+
200
+ it('When the user has attempted the question with equal number of correct responses from correct and alternative accordion, then the user should be awarded with points for the correctly set points and on switching to \'Grading\' view, correct icon should be displayed besides response field with correct answer responses, incorrect icon should be displayed beside responses from the alternative tab, correct/incorrect status message should not be displayed and correct answer section should be displayed with the correct answers from the correct accordion', () => {
201
+ chartsLinePage.steps.resetQuestionPreview();
202
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 4, range: 10 });
203
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 5, range: 10 });
204
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 1, range: 10 });
205
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 0, range: 10 });
206
+ chartsLinePage.steps.verifyPreviewScore(10, 20);
207
+ chartsLinePage.steps.switchToGradingView();
208
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
209
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
210
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
211
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
212
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'incorrect');
213
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
214
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
215
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
216
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
217
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
218
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
219
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
220
+ });
221
+
222
+ it('Overachiever case: When the user attempts the question with more number of correct responses from the alternative accordion than the correct accordion but the score of the individual response from the correct accordion overpowers the combined score of the alternative accordion answers then on switching to the \'Grading view\', then points awarded should be of the correct accordion, correct icons should be displayed for the correct accordion response, incorrect icon should be displayed for the alternative accordion responses, correct/incorrect status message should not be displayed and correct answer section with a preview of the entire grid with correct answers from the correct accordion should be displayed', () => {
223
+ cy.log('Pre-step: Switching to Edit tab and allotting points to correct and alternative accordion such that the difference between the points is substantial')
224
+ chartsLinePage.steps.switchToEditTab();
225
+ chartsLinePage.steps.expandCorrectAnswerAccordion();
226
+ chartsLinePage.steps.allotPoints(40);
227
+ chartsLinePage.steps.switchToPreviewTab();
228
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 2, range: 10 });
229
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 3, range: 10 });
230
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 6, range: 10 });
231
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 8, range: 10 });
232
+ chartsLinePage.steps.verifyPreviewScore(10, 40);
233
+ chartsLinePage.steps.switchToGradingView();
234
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
235
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'incorrect');
236
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'incorrect');
237
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'correct');
238
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'incorrect');
239
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
240
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
241
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
242
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
243
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
244
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
245
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
246
+ });
247
+ });
248
+ });
249
+
@@ -33,7 +33,9 @@ describe('Edit item - Charts -Line', () => {
33
33
 
34
34
  it('User should be able to edit correct answer and save the question', () => {
35
35
  chartsLinePage.steps.editItem();
36
- chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({pointIndex: 0, value: 2, range: 10 });
36
+ chartsLinePage.steps.lockPoint(2);
37
+ chartsLinePage.steps.unlockPoint(0);
38
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({pointIndex: 0, value: 3, range: 10 });
37
39
  chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({pointIndex: 1, value: 6, range: 10 });
38
40
  chartsLinePage.steps.saveAQuestionAndVerifySnackbar();
39
41
  });
@@ -95,11 +95,28 @@ describe('Create item page - Charts - Bar: Header section and saving question',
95
95
  before(() => {
96
96
  chartsLinePage.steps.navigateToCreateQuestion('charts');
97
97
  cy.barsPreLoaderWait();
98
+ chartsLinePage.steps.selectLineButton();
98
99
  });
99
100
 
100
- chartsLinePage.tests.verifyCreateItemWrapperContentsA11y();
101
+ describe('Validation error messages', () => {
102
+ dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please set points.']);
103
+
104
+ it('Validation error messages should be displayed below required input fields', () => {
105
+ chartsLinePage.steps.verifyQuestionInstructionsErrorMessageIsNotDisplayed();
106
+ chartsLinePage.steps.verifyWarningIconOnRequiredFields(['Please set points.']);
107
+ chartsLinePage.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
108
+ });
109
+
110
+ it('Validation error messages should disappear when required input fields are filled', () => {
111
+ chartsLinePage.steps.allotPoints(10);
112
+ chartsLinePage.steps.verifyErrorMessageIsNotDisplayed();
113
+ });
114
+
115
+ chartsLinePage.tests.verifyCreateItemWrapperContentsA11y();
116
+ });
101
117
 
102
118
  describe('Saving a question', () => {
119
+
103
120
  it('When user clicks on "Save question" button, then the question should get saved and a snackbar with text \'Saved successfully!\' should be displayed', () => {
104
121
  chartsLinePage.steps.saveAQuestionAndVerifySnackbar();
105
122
  });
@@ -92,4 +92,98 @@ describe('Create Item page - Charts - Line chart: Specify correct answer, Altern
92
92
  utilities.verifyElementCount(chartsLinePage.specifyCorrectAnswerPoint(), 3);
93
93
  });
94
94
  });
95
+
96
+ describe('Charts Line - Line Locked', () => {
97
+ abortEarlySetup();
98
+ before(() => {
99
+ chartsLinePage.steps.navigateToCreateQuestion('charts');
100
+ cy.barsPreLoaderWait();
101
+ chartsLinePage.steps.selectLineButton();
102
+ chartsLinePage.steps.addTextInQuestionInstructionsInputField('Set Line on charts');
103
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 0, value: 2, range: 10 });
104
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 1, value: 4, range: 10 });
105
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 2, value: 6, range: 10 });
106
+ chartsLinePage.steps.lockPoint(0);
107
+ chartsLinePage.steps.allotPoints(20);
108
+ chartsLinePage.steps.selectAutoScoredScoringSubtype('Partial different weights');
109
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
110
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 2, value: 4, range: 10 });
111
+ });
112
+
113
+ it('When user has a locked point, then the point input field for that point should be disabled and points should be distributed among enabled points only', () => {
114
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsDisabled(0);
115
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldValue(['', 10, 10]);
116
+ chartsLinePage.steps.verifyPointsLabelAndPointsOnAnswerAccordion(0, '20');
117
+ });
118
+
119
+ it('When user locks an additional point, then points should be deducted from the total score', () => {
120
+ chartsLinePage.steps.lockPoint(2);
121
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsDisabled(2);
122
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldValue(['', 10, '']);
123
+ chartsLinePage.steps.verifyPointsLabelAndPointsOnAnswerAccordion(0, '10');
124
+ });
125
+
126
+ it('When user switches from partial different weights to partial equal weights, then the same total points should be maintained', () => {
127
+ chartsLinePage.steps.selectAutoScoredScoringSubtype('partial equal weights');
128
+ chartsLinePage.steps.verifyPoints(10);
129
+ chartsLinePage.steps.verifyPointsLabelAndPointsOnAnswerAccordion(0, '10');
130
+ chartsLinePage.steps.verifyPartialEqualWeightsPointsPerResponseScore('10');
131
+ });
132
+
133
+ it('When user unlocks a locked point, then the points should not be added to the unlocked point', () => {
134
+ chartsLinePage.steps.unlockPoint(2);
135
+ chartsLinePage.steps.selectAutoScoredScoringSubtype('Partial different weights');
136
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsEnabled(2);
137
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldValue(['', 5, 5]);
138
+ chartsLinePage.steps.verifyPointsLabelAndPointsOnAnswerAccordion(0, '10');
139
+ });
140
+
141
+ it('When user unlocks all points, then all point input fields should be enabled', () => {
142
+ chartsLinePage.steps.unlockPoint(0);
143
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsEnabled(0);
144
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsEnabled(1);
145
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsEnabled(2);
146
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldValue(['', 5, 5]);
147
+ chartsLinePage.steps.verifyPointsLabelAndPointsOnAnswerAccordion(0, '10');
148
+ });
149
+
150
+ it('When user switches between scoring subtypes multiple times, then point distribution should be maintained', () => {
151
+ chartsLinePage.steps.selectAutoScoredScoringSubtype('All or nothing');
152
+ chartsLinePage.steps.verifyPoints(10);
153
+ chartsLinePage.steps.selectAutoScoredScoringSubtype('Partial different weights');
154
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldValue([3.33, 3.33, 3.33]);
155
+ chartsLinePage.steps.selectAutoScoredScoringSubtype('partial equal weights');
156
+ chartsLinePage.steps.verifyPoints(9.99);
157
+ chartsLinePage.steps.verifyPartialEqualWeightsPointsPerResponseScore('3.33');
158
+ });
159
+
160
+ it('When user locks multiple points in sequence, then point distribution should be adjusted accordingly', () => {
161
+ chartsLinePage.steps.selectAutoScoredScoringSubtype('Partial different weights');
162
+ chartsLinePage.steps.lockPoint(0);
163
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsDisabled(0);
164
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldValue(['', 3.33, 3.33]);
165
+ chartsLinePage.steps.lockPoint(1);
166
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsDisabled(0);
167
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsDisabled(1);
168
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldValue(['', '', 3.33]);
169
+ chartsLinePage.steps.lockPoint(2);
170
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsDisabled(2);
171
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldValue(['', '', '']);
172
+ });
173
+
174
+ it('When user allots points first and then locks a point, then the points of the locked point should be removed', () => {
175
+ chartsLinePage.steps.selectAutoScoredScoringSubtype('Partial different weights');
176
+ chartsLinePage.steps.unlockPoint(0);
177
+ chartsLinePage.steps.unlockPoint(1);
178
+ chartsLinePage.steps.unlockPoint(2);
179
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsEnabled(0);
180
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsEnabled(1);
181
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldIsEnabled(2);
182
+ chartsLinePage.steps.allotPartialDifferentWeightsPoints([10, 10, 10]);
183
+ chartsLinePage.steps.verifyPointsLabelAndPointsOnAnswerAccordion(0, '30');
184
+ chartsLinePage.steps.lockPoint(0);
185
+ chartsLinePage.steps.verifyPartialDifferentWeightsPointsInputFieldValue(['', '10', '10']);
186
+ chartsLinePage.steps.verifyPointsLabelAndPointsOnAnswerAccordion(0, '20');
187
+ });
188
+ });
95
189
  });
@@ -131,18 +131,17 @@ describe('Audio player: Edit tab', () => {
131
131
  });
132
132
 
133
133
  it('\'Source URL\' label and input field should not be displayed', () => {
134
- utilities.verifyElementVisibilityState(multipleSelectionPage.sourceUrlLabel(), 'notExist');
135
134
  utilities.verifyElementVisibilityState(audioPlayerPage.sourceUrlInputField(), 'notExist');
136
135
  });
137
136
 
138
137
  it('\'Upload\' label should be displayed', () => {
139
138
  utilities.verifyInnerText(multipleSelectionPage.uploadLabel(), 'Upload');
140
- utilities.verifyElementVisibilityState(multipleSelectionPage.uploadLabel(), 'visible');
139
+ utilities.verifyElementVisibilityState(multipleSelectionPage.uploadLabel(), 'exist');
141
140
  });
142
141
 
143
142
  it('\'File name\' label should be displayed', () => {
144
143
  utilities.verifyInnerText(multipleSelectionPage.fileNameLabel(), 'File name');
145
- utilities.verifyElementVisibilityState(multipleSelectionPage.fileNameLabel(), 'visible');
144
+ utilities.verifyElementVisibilityState(multipleSelectionPage.fileNameLabel(), 'exist');
146
145
  });
147
146
 
148
147
  it('\'Choose File\' button should be displayed', () => {
@@ -117,10 +117,8 @@ describe('Audio player: Edit tab', () => {
117
117
 
118
118
  it('When the user adds the transcript file and file upload is inprogress, file name and progress bar should be displayed below \'File name\' label. Progress bar should disappear once file is uploaded', () => {
119
119
  multipleSelectionPage.steps.uploadTranscriptFile('sample.txt');
120
- utilities.verifyElementVisibilityState(multipleSelectionPage.transcriptFileUploadProgressBar(), 'visible');
121
120
  utilities.verifyInnerText(multipleSelectionPage.uploadedTranscriptFileNameLabel(), 'sample.txt');
122
121
  utilities.verifyElementVisibilityState(multipleSelectionPage.uploadedTranscriptFileNameLabel(), 'visible');
123
- utilities.verifyElementVisibilityState(multipleSelectionPage.transcriptFileUploadProgressBar(), 'hidden');
124
122
  });
125
123
 
126
124
  it('CSS of progress bar and file name when file upload is in progress', { tags: 'css' }, () => {
@@ -189,8 +187,8 @@ describe('Audio player: Edit tab', () => {
189
187
  });
190
188
 
191
189
  it('The user should be able to enter text in the \'Transcript\' input field', () => {
192
- multipleSelectionPage.steps.enterTextInTranscriptInputField('This is a transcript text');
193
- utilities.verifyTextContent(multipleSelectionPage.typeInTranscriptInputField(), 'This is a transcript text');
190
+ multipleSelectionPage.steps.enterTextInCKEditorTranscriptInputField('This is a transcript text');
191
+ utilities.verifyTextContent(multipleSelectionPage.cKEditorTranscriptInputField(), 'This is a transcript text');
194
192
  });
195
193
 
196
194
  it('CSS of \'Type in transcript\' Section', { tags: 'css' }, () => {
@@ -182,9 +182,9 @@ describe('Audio player: Edit tab', () => {
182
182
 
183
183
  it('\'Playback Limit\' label and empty input field should be displayed', () => {
184
184
  utilities.verifyInnerText(multipleSelectionPage.playbackLimitLabel(), 'Playback Limit');
185
- utilities.verifyElementVisibilityState(multipleSelectionPage.playbackLimitLabel(), 'visible');
185
+ utilities.verifyElementVisibilityState(multipleSelectionPage.playbackLimitLabel(), 'exist');
186
186
  utilities.verifyInnerText(multipleSelectionPage.playbackLimitInputField(), '');
187
- utilities.verifyElementVisibilityState(multipleSelectionPage.playbackLimitInputField(), 'visible');
187
+ utilities.verifyElementVisibilityState(multipleSelectionPage.playbackLimitInputField(), 'exist');
188
188
  });
189
189
 
190
190
  it('When the user focuses in and out of the \'Playback Limit\' input field, no error message should be displayed', () => {
@@ -228,7 +228,7 @@ describe('Audio player: Edit tab', () => {
228
228
 
229
229
  it('\'Allow students to download the audio\' label and checkbox should be displayed. By default the \'Allow students to download the audio\' checkbox should be unchecked.', () => {
230
230
  utilities.verifyInnerText(multipleSelectionPage.allowStudentsToDownloadAudioLabel(), 'Allow students to download the audio');
231
- utilities.verifyElementVisibilityState(multipleSelectionPage.allowStudentsToDownloadAudioLabel(), 'visible');
231
+ utilities.verifyElementVisibilityState(multipleSelectionPage.allowStudentsToDownloadAudioLabel(), 'exist');
232
232
  multipleSelectionPage.steps.verifyAllowStudentsToDownloadAudioCheckboxNotChecked();
233
233
  });
234
234
 
@@ -31,8 +31,8 @@ describe('Audio player: Header section, buttons and saving item', () => {
31
31
 
32
32
  describe('OK button Contents', () => {
33
33
  it('\'OK\' button should be displayed in popup.', () => {
34
- utilities.verifyInnerText(multipleSelectionPage.okButton(), 'OK');
35
- utilities.verifyElementVisibilityState(multipleSelectionPage.okButton(), 'visible');
34
+ utilities.verifyInnerText(multipleSelectionPage.audioPlayerOkButton(), 'OK');
35
+ utilities.verifyElementVisibilityState(multipleSelectionPage.audioPlayerOkButton(), 'visible');
36
36
  });
37
37
 
38
38
  it('CSS of \'OK\' button', { tags: 'css' }, () => {
@@ -32,7 +32,7 @@ describe('Audio player: Edit tab', () => {
32
32
  multipleSelectionPage.steps.switchToEditTab();
33
33
  multipleSelectionPage.steps.clickOnAudioPlayerBlock();
34
34
  multipleSelectionPage.steps.clickOnLimitPlayAttempts();
35
- multipleSelectionPage.steps.setPlaybackLimit(2);
35
+ multipleSelectionPage.steps.setCKEditorPlaybackLimit(2);
36
36
  multipleSelectionPage.steps.clickOnOKButton();
37
37
  multipleSelectionPage.steps.focusInAndOutOfQuestionInstructionsInputField();
38
38
  multipleSelectionPage.steps.switchToPreviewTab();
@@ -24,6 +24,7 @@ describe('Audio player: Edit tab', () => {
24
24
  multipleSelectionPage.steps.clickOnOKButton();
25
25
  multipleSelectionPage.steps.focusInAndOutOfQuestionInstructionsInputField();
26
26
  multipleSelectionPage.steps.switchToPreviewTab();
27
+ cy.wait(5000); //Adding a dynamic wait for audio to load in preview tab
27
28
  multipleSelectionPage.steps.startPlayback();
28
29
  multipleSelectionPage.steps.waitForPlaybackToBegin();
29
30
  });
@@ -36,6 +37,7 @@ describe('Audio player: Edit tab', () => {
36
37
  multipleSelectionPage.steps.clickOnOKButton();
37
38
  multipleSelectionPage.steps.focusInAndOutOfQuestionInstructionsInputField();
38
39
  multipleSelectionPage.steps.switchToPreviewTab();
40
+ cy.wait(5000); //Adding a dynamic wait for audio to load in preview tab
39
41
  multipleSelectionPage.steps.startPlayback();
40
42
  multipleSelectionPage.steps.waitForPlaybackToBegin();
41
43
  });
@@ -48,6 +50,7 @@ describe('Audio player: Edit tab', () => {
48
50
  multipleSelectionPage.steps.clickOnOKButton();
49
51
  multipleSelectionPage.steps.focusInAndOutOfQuestionInstructionsInputField();
50
52
  multipleSelectionPage.steps.switchToPreviewTab();
53
+ cy.wait(5000); //Adding a dynamic wait for audio to load in preview tab
51
54
  multipleSelectionPage.steps.startPlayback();
52
55
  multipleSelectionPage.steps.waitForPlaybackToBegin();
53
56
  });
@@ -69,6 +72,7 @@ describe('Audio player: Edit tab', () => {
69
72
  multipleSelectionPage.steps.clickOnOKButton();
70
73
  multipleSelectionPage.steps.focusInAndOutOfQuestionInstructionsInputField();
71
74
  multipleSelectionPage.steps.switchToPreviewTab();
75
+ cy.wait(5000); //Adding a dynamic wait for audio to load in preview tab
72
76
  multipleSelectionPage.steps.startPlayback();
73
77
  multipleSelectionPage.steps.waitForPlaybackToBegin();
74
78
  });
@@ -82,6 +86,7 @@ describe('Audio player: Edit tab', () => {
82
86
  multipleSelectionPage.steps.clickOnOKButton();
83
87
  multipleSelectionPage.steps.focusInAndOutOfQuestionInstructionsInputField();
84
88
  multipleSelectionPage.steps.switchToPreviewTab();
89
+ cy.wait(5000); //Adding a dynamic wait for audio to load in preview tab
85
90
  multipleSelectionPage.steps.startPlayback();
86
91
  multipleSelectionPage.steps.waitForPlaybackToBegin();
87
92
  });
@@ -95,6 +100,7 @@ describe('Audio player: Edit tab', () => {
95
100
  multipleSelectionPage.steps.clickOnOKButton();
96
101
  multipleSelectionPage.steps.focusInAndOutOfQuestionInstructionsInputField();
97
102
  multipleSelectionPage.steps.switchToPreviewTab();
103
+ cy.wait(5000); //Adding a dynamic wait for audio to load in preview tab
98
104
  multipleSelectionPage.steps.startPlayback();
99
105
  multipleSelectionPage.steps.waitForPlaybackToBegin();
100
106
  });
@@ -32,7 +32,6 @@ describe('Audio player: Edit tab', () => {
32
32
  multipleSelectionPage.steps.switchToEditTab();
33
33
  multipleSelectionPage.steps.clickOnAudioPlayerBlock();
34
34
  multipleSelectionPage.steps.uploadTranscriptFile('sample.txt');
35
- utilities.verifyElementVisibilityState(multipleSelectionPage.transcriptFileUploadProgressBar(), 'visible');
36
35
  multipleSelectionPage.steps.clickOnOKButton();
37
36
  multipleSelectionPage.steps.focusInAndOutOfQuestionInstructionsInputField();
38
37
  multipleSelectionPage.steps.switchToPreviewTab();
@@ -49,7 +48,7 @@ describe('Audio player: Edit tab', () => {
49
48
  multipleSelectionPage.steps.switchToEditTab();
50
49
  multipleSelectionPage.steps.clickOnAudioPlayerBlock();
51
50
  multipleSelectionPage.steps.clickOnTypeInTranscriptRadioButton();
52
- multipleSelectionPage.steps.enterTextInTranscriptInputField('In triangle ABC,m ∠ ABC = (4x-12) ° and m ∠ ACB = (2x + 26) °');
51
+ multipleSelectionPage.steps.enterTextInCKEditorTranscriptInputField('In triangle ABC,m ∠ ABC = (4x-12) ° and m ∠ ACB = (2x + 26) °');
53
52
  multipleSelectionPage.steps.clickOnOKButton();
54
53
  multipleSelectionPage.steps.focusInAndOutOfQuestionInstructionsInputField();
55
54
  multipleSelectionPage.steps.switchToPreviewTab();
@@ -73,7 +72,7 @@ describe('Audio player: Edit tab', () => {
73
72
  multipleSelectionPage.steps.uploadFile('sample.mp3');
74
73
  utilities.verifyElementVisibilityState(multipleSelectionPage.fileUploadProgressBar(), 'hidden');
75
74
  multipleSelectionPage.steps.clickOnTypeInTranscriptRadioButton();
76
- multipleSelectionPage.steps.enterTextInTranscriptInputField('In triangle ABC,m ∠ ABC = (4x-12) ° and m ∠ ACB = (2x + 26) °');
75
+ multipleSelectionPage.steps.enterTextInCKEditorTranscriptInputField('In triangle ABC,m ∠ ABC = (4x-12) ° and m ∠ ACB = (2x + 26) °');
77
76
  multipleSelectionPage.steps.clickOnOKButton();
78
77
  });
79
78
 
@@ -28,8 +28,8 @@ describe('Insert Image: Edit tab', () => {
28
28
  });
29
29
 
30
30
  it('\'URL\', \'Alternative Text\', \'Width\', \'Height\', \'Border\', \'HSpace\', \'VSpace\' label with input field for each individual label and \'Preview\' label with image preview box should be visible ', () => {
31
- utilities.verifyInnerText(multipleSelectionPage.urlLabel(), 'URL');
32
- utilities.verifyElementVisibilityState(multipleSelectionPage.urlLabel(), 'visible');
31
+ utilities.verifyInnerText(multipleSelectionPage.imageUrlLabel(), 'URL');
32
+ utilities.verifyElementVisibilityState(multipleSelectionPage.imageUrlLabel(), 'visible');
33
33
  utilities.verifyElementVisibilityState(multipleSelectionPage.urlInputField(), 'visible');
34
34
  utilities.verifyInnerText(multipleSelectionPage.alternateTextLabel(), 'Alternative Text');
35
35
  utilities.verifyElementVisibilityState(multipleSelectionPage.alternateTextLabel(), 'visible');
@@ -82,7 +82,7 @@ describe('Insert Image: Edit tab', () => {
82
82
  'font-size': '12px',
83
83
  'font-weight': '400'
84
84
  });
85
- utilities.verifyCSS(multipleSelectionPage.urlLabel(), {
85
+ utilities.verifyCSS(multipleSelectionPage.imageUrlLabel(), {
86
86
  'color': 'rgb(0, 0, 0)',
87
87
  'font-size': '12px',
88
88
  'font-weight': '400'
@@ -100,8 +100,8 @@ describe('Insert Table: Edit tab', () => {
100
100
 
101
101
  it('\'Alignment\' label with drop down, \'Caption\' label with input field and \'Summary\' label with input field should be displayed', () => {
102
102
  multipleSelectionPage.steps.scrollingDownToAlignmentLabel();
103
- utilities.verifyInnerText(multipleSelectionPage.alignmentLabel(), 'Alignment');
104
- utilities.verifyElementVisibilityState(multipleSelectionPage.alignmentLabel(), 'visible');
103
+ utilities.verifyInnerText(multipleSelectionPage.tableAlignmentLabel(), 'Alignment');
104
+ utilities.verifyElementVisibilityState(multipleSelectionPage.tableAlignmentLabel(), 'visible');
105
105
  utilities.verifyElementVisibilityState(multipleSelectionPage.alignmentDropDown(), 'visible');
106
106
  utilities.verifyInnerText(multipleSelectionPage.captionLabel(), 'Caption');
107
107
  utilities.verifyElementVisibilityState(multipleSelectionPage.captionLabel(), 'visible');
@@ -114,7 +114,7 @@ describe('Insert Table: Edit tab', () => {
114
114
  });
115
115
 
116
116
  it('CSS of \'Border size\' label and input field, \'Striped\' label and strip options and \'Add hover state\' label and dropdown', { tags: 'css' }, () => {
117
- utilities.verifyCSS(multipleSelectionPage.alignmentLabel(), {
117
+ utilities.verifyCSS(multipleSelectionPage.tableAlignmentLabel(), {
118
118
  'color': 'rgb(0, 0, 0)',
119
119
  'font-size': '12px',
120
120
  'font-weight': '400'