itemengine-cypress-automation 1.0.189-e2e-execution-crash-83cdbd4.0 → 1.0.190-repoUpdate3May-f180558.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (244) hide show
  1. package/cypress/e2e/ILC/AudioPlayerNew/allSupportedFileTypes.js +79 -0
  2. package/cypress/e2e/ILC/AudioPlayerNew/barAudioPlayerStyle.js +647 -0
  3. package/cypress/e2e/ILC/AudioPlayerNew/compactAudioPlayerStyle.js +429 -0
  4. package/cypress/e2e/ILC/AudioPlayerNew/customizePlayerLayoutSettings.js +596 -0
  5. package/cypress/e2e/ILC/AudioPlayerNew/previewContents.smoke.js +162 -0
  6. package/cypress/e2e/ILC/AudioPlayerNew/standardAudioPlayerStyle.js +792 -0
  7. package/cypress/e2e/ILC/AudioPlayerNew/studentViewSettings.js +253 -0
  8. package/cypress/e2e/ILC/AudioPlayerNew/uploadAndAddAudioFile.js +313 -0
  9. package/cypress/e2e/ILC/AudioResponseNew/additionalSettingsBasic.js +1 -22
  10. package/cypress/e2e/ILC/AudioResponseNew/barRecorderStyle.smoke.js +1 -1
  11. package/cypress/e2e/ILC/AudioResponseNew/compactRecorderStyle.smoke.js +1 -1
  12. package/cypress/e2e/ILC/AudioResponseNew/standardRecorderStyle.smoke.js +1 -1
  13. package/cypress/e2e/ILC/AudioResponseNew/studentViewSettings.js +2 -11
  14. package/cypress/e2e/ILC/ChartsBar/previewContentsForAllViews.smoke.js +359 -0
  15. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/clickAndDrop.js +1 -1
  16. package/cypress/e2e/ILC/DrawingResponse/drawingResponseGradingViewAndCorrectAnswerViewContents.smoke.js +6 -8
  17. package/cypress/e2e/ILC/EditTabSettingPage/itemPreviewSettingsTabFunctionality.js +417 -28
  18. package/cypress/e2e/ILC/EssayResponse/editCategoryFlyout.js +1 -1
  19. package/cypress/e2e/ILC/FeedbackScaleNew/headerSection.js +29 -1
  20. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/previewContentsForAllViews.smoke.js +2 -2
  21. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/studentViewSettings.js +1 -1
  22. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/studentViewSettings.js +1 -1
  23. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/editTabScoring.js +1 -0
  24. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/previewContentsForAllViews.smoke.js +2 -2
  25. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/studentViewSettings.js +1 -1
  26. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/studentViewSettings.js +1 -1
  27. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +4 -4
  28. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +1 -1
  29. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/studentViewSettings.js +1 -1
  30. package/cypress/e2e/ILC/FillInTheGapsTextNew/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +5 -5
  31. package/cypress/e2e/ILC/FillInTheGapsTextNew/Scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +3 -4
  32. package/cypress/e2e/ILC/FillInTheGapsTextNew/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +1 -1
  33. package/cypress/e2e/ILC/FillInTheGapsTextNew/headerSection.js +1 -0
  34. package/cypress/e2e/ILC/FillInTheGapsTextNew/studentViewSettings.js +1 -1
  35. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +2 -2
  36. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +2 -2
  37. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +2 -2
  38. package/cypress/e2e/ILC/Graphing/addBackgroundShapesSection.js +2 -2
  39. package/cypress/e2e/ILC/Graphing/studentViewSettings.js +1 -1
  40. package/cypress/e2e/ILC/GridFill/checkAnswerFunctionalityForAllViews.smoke.js +3 -2
  41. package/cypress/e2e/ILC/GridFill/gridLayoutContents.js +11 -3
  42. package/cypress/e2e/ILC/GridFill/previewContentsForAllViews.smoke.js +3 -3
  43. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingScoringCellShadeCount.js +2 -2
  44. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountAllOrNothingCorrectPointsGreaterThanAlternativePoints.js +143 -0
  45. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountPartialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +132 -0
  46. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountPartialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +143 -0
  47. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountPartialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +144 -0
  48. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountallOrNothingCorrectPointsEqualToAlternativePoints.js +143 -0
  49. package/cypress/e2e/ILC/GridFill/scoring/cellshadeCountAllOrNothingAlternativePointsGreaterThanCorrectPoints.js +131 -0
  50. package/cypress/e2e/ILC/GridFill/scoring/matchExactAndCellShadeCountCombinedScoring.js +87 -0
  51. package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsCellShadeCountBasics.js +446 -0
  52. package/cypress/e2e/ILC/GridFill/studentViewSettingsSection.js +1 -1
  53. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +194 -0
  54. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +195 -0
  55. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +274 -0
  56. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingPenaltyScoring.js +48 -0
  57. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/manuallyAndNonScored.js +144 -0
  58. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +252 -0
  59. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialDifferentWeightsBasic.js +102 -0
  60. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +256 -0
  61. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +253 -0
  62. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +308 -0
  63. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +225 -0
  64. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsBasic.js +151 -0
  65. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +196 -0
  66. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +227 -0
  67. package/cypress/e2e/ILC/ListOrderingDropdown/additionalSettings.js +91 -0
  68. package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +230 -0
  69. package/cypress/e2e/ILC/ListOrderingDropdown/checkAnswerFunctionalityForAllViews.smoke.js +124 -0
  70. package/cypress/e2e/ILC/ListOrderingDropdown/editTabBasicSection.js +221 -0
  71. package/cypress/e2e/ILC/ListOrderingDropdown/editTabScoring.js +203 -0
  72. package/cypress/e2e/ILC/ListOrderingDropdown/manuallyAndNonScoredEditTab.js +71 -0
  73. package/cypress/e2e/ILC/ListOrderingDropdown/minimumScoringPenaltyPointsAndRoundingDropdown.js +197 -0
  74. package/cypress/e2e/ILC/ListOrderingDropdown/previewContentsForAllViews.smoke.js +201 -0
  75. package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +115 -0
  76. package/cypress/e2e/ILC/ListOrderingDropdown/studentViewSettings.js +183 -0
  77. package/cypress/e2e/ILC/ListOrderingNew/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +216 -0
  78. package/cypress/e2e/ILC/ListOrderingNew/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +214 -0
  79. package/cypress/e2e/ILC/ListOrderingNew/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +273 -0
  80. package/cypress/e2e/ILC/ListOrderingNew/Scoring/allOrNothingPenaltyScoring.js +52 -0
  81. package/cypress/e2e/ILC/ListOrderingNew/Scoring/manuallyAndNonScored.js +128 -0
  82. package/cypress/e2e/ILC/ListOrderingNew/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +279 -0
  83. package/cypress/e2e/ILC/ListOrderingNew/Scoring/partialDifferentWeightsBasic.js +109 -0
  84. package/cypress/e2e/ILC/ListOrderingNew/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +278 -0
  85. package/cypress/e2e/ILC/ListOrderingNew/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +278 -0
  86. package/cypress/e2e/ILC/ListOrderingNew/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +335 -0
  87. package/cypress/e2e/ILC/ListOrderingNew/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +250 -0
  88. package/cypress/e2e/ILC/ListOrderingNew/Scoring/partialEqualWeightsBasic.js +161 -0
  89. package/cypress/e2e/ILC/ListOrderingNew/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +216 -0
  90. package/cypress/e2e/ILC/ListOrderingNew/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +252 -0
  91. package/cypress/e2e/ILC/ListOrderingNew/additionalSettings.js +118 -0
  92. package/cypress/e2e/ILC/ListOrderingNew/allOrNothingForAllViews.smoke.js +243 -0
  93. package/cypress/e2e/ILC/ListOrderingNew/checkAnswerFunctionalityForAllViews.smoke.js +128 -0
  94. package/cypress/e2e/ILC/ListOrderingNew/editTabBasicSection.js +155 -0
  95. package/cypress/e2e/ILC/ListOrderingNew/editTabScoring.js +195 -0
  96. package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +78 -0
  97. package/cypress/e2e/ILC/ListOrderingNew/manuallyAndNonScoredEditTab.js +69 -0
  98. package/cypress/e2e/ILC/ListOrderingNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +194 -0
  99. package/cypress/e2e/ILC/ListOrderingNew/previewContentsForAllViews.smoke.js +176 -0
  100. package/cypress/e2e/ILC/ListOrderingNew/specifyCorrectAnswerSection.js +112 -0
  101. package/cypress/e2e/ILC/ListOrderingNew/studentViewSettings.js +244 -0
  102. package/cypress/e2e/ILC/Matching/studentViewSettings.js +1 -1
  103. package/cypress/e2e/ILC/MultipleSelection/allOrNothingWithAlternativeAnswer.js +1 -0
  104. package/cypress/e2e/ILC/MultipleSelectionGridNew/studentViewSettings.js +1 -1
  105. package/cypress/e2e/ILC/NumberLine/LayoutSection.js +209 -0
  106. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +1 -1
  107. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +1 -1
  108. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +4 -4
  109. package/cypress/e2e/ILC/NumberLine/Scoring/manualAndNonScoredScoring.js +1 -1
  110. package/cypress/e2e/ILC/NumberLine/Scoring/partialEqualWeightsBasic.js +1 -1
  111. package/cypress/e2e/ILC/NumberLine/Scoring/partialEqualWeightsWithAlternatePointsGreaterThanCorrectPoints.js +1 -1
  112. package/cypress/e2e/ILC/NumberLine/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternatePoints.js +1 -1
  113. package/cypress/e2e/ILC/NumberLine/Scoring/partialEqualWeigtsWithCorrectPointsEqualToAlternatePoints.js +1 -1
  114. package/cypress/e2e/ILC/NumberLine/allOrNothingScoringForAllViews.smoke.js +58 -2
  115. package/cypress/e2e/ILC/NumberLine/checkAnswerFunctionalityForAllViews.smoke.js +1 -1
  116. package/cypress/e2e/ILC/NumberLine/editTabScoringSection.js +1 -1
  117. package/cypress/e2e/ILC/NumberLine/gradingViewAndCorrectAnswerView.smoke.js +2 -2
  118. package/cypress/e2e/ILC/NumberLine/headerSection.js +1 -1
  119. package/cypress/e2e/ILC/NumberLine/lineSettingsSection.js +33 -0
  120. package/cypress/e2e/ILC/NumberLine/numberLineSection.js +50 -0
  121. package/cypress/e2e/ILC/NumberLine/previewTabContentsForAllViews.smoke.js +2 -2
  122. package/cypress/e2e/ILC/NumberLine/specifyCorrectAnswerSection.js +1 -1
  123. package/cypress/e2e/ILC/NumberLine/studentViewSettings.js +2 -2
  124. package/cypress/e2e/ILC/NumberLine/toolSettings.js +2 -1
  125. package/cypress/e2e/ILC/NumberLine/toolsAndControls.js +1 -1
  126. package/cypress/e2e/ILC/NumberLine/verticalNumberLine/allOrNothingScoringForAllViews.smoke.js +696 -0
  127. package/cypress/e2e/ILC/NumberLine/verticalNumberLine/gradingViewAndCorrectAnswerView.smoke.js +173 -0
  128. package/cypress/e2e/ILC/NumberLine/verticalNumberLine/layoutSection.js +211 -0
  129. package/cypress/e2e/ILC/NumberLine/verticalNumberLine/numberLineSection.js +75 -0
  130. package/cypress/e2e/ILC/NumberLine/verticalNumberLine/previewTabContentsForAllViews.smoke.js +204 -0
  131. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +229 -0
  132. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +229 -0
  133. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +229 -0
  134. package/cypress/e2e/ILC/NumberLineLabel/Scoring/manualAndNonScoredScoring.js +169 -0
  135. package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +274 -0
  136. package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialDifferentWeightsBasic.js +433 -0
  137. package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +274 -0
  138. package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +274 -0
  139. package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +249 -0
  140. package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialEqualWeightsBasic.js +135 -0
  141. package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +210 -0
  142. package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +248 -0
  143. package/cypress/e2e/ILC/NumberLineLabel/additionalSettingsBasic.js +115 -0
  144. package/cypress/e2e/ILC/NumberLineLabel/allOrNothingForAllViews.smoke.js +288 -0
  145. package/cypress/e2e/ILC/NumberLineLabel/checkAnswerFunctionalityForAllViews.smoke.js +153 -0
  146. package/cypress/e2e/ILC/NumberLineLabel/editTabBasicSection.js +326 -0
  147. package/cypress/e2e/ILC/NumberLineLabel/editTabScoring.js +234 -0
  148. package/cypress/e2e/ILC/NumberLineLabel/gradingViewAndCorrectAnswerView.smoke.js +164 -0
  149. package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +80 -0
  150. package/cypress/e2e/ILC/NumberLineLabel/layoutSection.js +204 -0
  151. package/cypress/e2e/ILC/NumberLineLabel/manuallyAndNonScoredEditTab.js +79 -0
  152. package/cypress/e2e/ILC/NumberLineLabel/minimumScoringPenaltyPointsAndRoundingDropdown.js +85 -0
  153. package/cypress/e2e/ILC/NumberLineLabel/numberLineSection.js +51 -0
  154. package/cypress/e2e/ILC/NumberLineLabel/previewContentsForAllViews.smoke.js +120 -0
  155. package/cypress/e2e/ILC/NumberLineLabel/specifyCorrectAnswerSection.js +74 -0
  156. package/cypress/e2e/ILC/NumberLineLabel/studentViewSettings.js +183 -0
  157. package/cypress/e2e/ILC/NumberLineLabel/toolSettings.js +76 -0
  158. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/allOrNothingForAllViews.smoke.js +292 -0
  159. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/checkAnswerFunctionalityForAllViews.smoke.js +155 -0
  160. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/gradingViewAndCorrectAnswerView.smoke.js +166 -0
  161. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/layoutSection.js +360 -0
  162. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/numberLineSection.js +80 -0
  163. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/previewContentsForAllViews.smoke.js +111 -0
  164. package/cypress/e2e/ILC/Protractor/protractorPreviewContents.smoke.js +1 -1
  165. package/cypress/e2e/ILC/ReadingRuler/readingRulerEditTabBasicsSection.js +49 -1
  166. package/cypress/e2e/ILC/ShortTextResponseNew/studentViewSettings.js +1 -1
  167. package/cypress/e2e/ILC/SingleSelectionGridNew/studentViewSettings.js +1 -1
  168. package/cypress/e2e/ILC/TextEntryMath/responseEvaluationMethodsAndCustomSettings.js +2 -2
  169. package/cypress/e2e/ILC/TextSelection/Scoring/allOrNothingAlternatePointsMoreThanCorrectPoints.js +0 -1
  170. package/cypress/e2e/ILC/TextSelection/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +0 -1
  171. package/cypress/e2e/ILC/TextSelection/Scoring/allOrNothingCorrectPointsMoreThanAlternatePoints.js +0 -1
  172. package/cypress/e2e/ILC/TextSelection/Scoring/basicScoringForAllTextSelectionTypes.smoke.js +0 -1
  173. package/cypress/e2e/ILC/TextSelection/additionalSettings.js +125 -0
  174. package/cypress/e2e/ILC/TextSelection/allOrNothingScoringForAllViews.smoke.js +0 -1
  175. package/cypress/e2e/ILC/TextSelection/checkAnswerFunctionalityForAllViews.smoke.js +2 -2
  176. package/cypress/e2e/ILC/TextSelection/editTabScoringSection.js +5 -4
  177. package/cypress/e2e/ILC/TextSelection/headerSection.js +73 -0
  178. package/cypress/e2e/ILC/TextSelection/previewContentsForAllViews.smoke.js +6 -7
  179. package/cypress/e2e/ILC/TextSelection/questionInstructionsAndQuestion.js +179 -0
  180. package/cypress/e2e/ILC/TextSelection/specifyCorrectAnswerSection.js +89 -0
  181. package/cypress/e2e/ILC/TextSelection/studentViewSettings.js +436 -0
  182. package/cypress/e2e/ILC/TextSelection/styleAndLayoutCustomizationAccordion.js +277 -0
  183. package/cypress/e2e/ILC/TextSelection/textSelectionModesInPreviewTab.js +222 -0
  184. package/cypress/e2e/ILC/TextSelection/textSelectionModesInSpecifyCorrectAnswerSection.js +260 -0
  185. package/cypress/e2e/ILC/TextSelection/textSelectionModesInSpecifyPossibleOptionsSection.js +380 -0
  186. package/cypress/e2e/ILC/ToolSettings/toolSettingsContent.js +5 -5
  187. package/cypress/e2e/ILC/ToolSettings/toolSettingsPreviewContents.smoke.js +3 -3
  188. package/cypress/e2e/ILC/VideoResponseNew/additionalSettingsBasic.js +77 -0
  189. package/cypress/e2e/ILC/VideoResponseNew/customizePlaybackControls.js +313 -0
  190. package/cypress/e2e/ILC/VideoResponseNew/editAndPreviewTabScoringSection.js +99 -0
  191. package/cypress/e2e/ILC/VideoResponseNew/editTabBasicSection.js +171 -0
  192. package/cypress/e2e/ILC/VideoResponseNew/gradingViewAndCorrectAnswerViewContents.smoke.js +179 -0
  193. package/cypress/e2e/ILC/VideoResponseNew/headerSection.js +79 -0
  194. package/cypress/e2e/ILC/VideoResponseNew/previewContentsForAllViews.smoke.js +201 -0
  195. package/cypress/e2e/ILC/VideoResponseNew/standardRecorderStyle.js +567 -0
  196. package/cypress/e2e/ILC/VideoResponseNew/studentViewSettings.js +194 -0
  197. package/cypress/fixtures/constants.js +1 -1
  198. package/cypress/fixtures/drawingToolbarOptionsAdditionalOptionsAndSpecialAndMathCharacters.js +1 -1
  199. package/cypress/fixtures/equationEditorCategoriesAndSymbols .js +20 -20
  200. package/cypress/fixtures/theme/ilc.json +22 -18
  201. package/cypress/pages/audioPlayerPage.js +668 -446
  202. package/cypress/pages/audioResponsePage.js +8 -80
  203. package/cypress/pages/brainingCampManipulativePage.js +1 -1
  204. package/cypress/pages/chartsBarPage.js +231 -0
  205. package/cypress/pages/chartsDotPlotPage.js +8 -0
  206. package/cypress/pages/chartsLinePage.js +42 -0
  207. package/cypress/pages/components/allowTeachersToDownloadStudentResponseComponent.js +58 -0
  208. package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +13 -23
  209. package/cypress/pages/components/autoScoredStudentViewSettings.js +6 -6
  210. package/cypress/pages/components/barAndLineChartComponent.js +120 -0
  211. package/cypress/pages/components/chartsCommonComponent.js +105 -0
  212. package/cypress/pages/components/commonComponents.js +1 -0
  213. package/cypress/pages/components/draggableOptionContainer.js +2 -1
  214. package/cypress/pages/components/equationEditorFlyout.js +3 -2
  215. package/cypress/pages/components/essayResponseCommonComponents.js +8 -2
  216. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +1 -0
  217. package/cypress/pages/components/imageCanvasComponent.js +2 -1
  218. package/cypress/pages/components/index.js +7 -0
  219. package/cypress/pages/components/layoutSectionComponent.js +1156 -0
  220. package/cypress/pages/components/limitNumberOfRetakeComponent.js +90 -0
  221. package/cypress/pages/components/numberLineCommonComponent.js +685 -0
  222. package/cypress/pages/components/optionsWrapperComponent.js +13 -2
  223. package/cypress/pages/components/playbackControlsBaseComponent.js +20 -13
  224. package/cypress/pages/components/questionInstructionsComponent.js +3 -19
  225. package/cypress/pages/components/styleAndLayoutCustomizationAccordionComponent.js +46 -0
  226. package/cypress/pages/components/toolSettingsComponent.js +6 -0
  227. package/cypress/pages/contentBlocksPage.js +18 -2
  228. package/cypress/pages/createItemPage.js +75 -8
  229. package/cypress/pages/dialogBoxBase.js +2 -2
  230. package/cypress/pages/drawingResponsePage.js +24 -4
  231. package/cypress/pages/feedbackScalePage.js +3 -0
  232. package/cypress/pages/graphingPage.js +19 -1
  233. package/cypress/pages/gridFillPage.js +47 -59
  234. package/cypress/pages/index.js +5 -1
  235. package/cypress/pages/itemPreviewSettingsPage.js +4 -0
  236. package/cypress/pages/listOrderingPage.js +561 -555
  237. package/cypress/pages/matchingPage.js +1 -1
  238. package/cypress/pages/multipleSelectionPage.js +23 -1
  239. package/cypress/pages/numberLineLabelPage.js +1086 -0
  240. package/cypress/pages/numberLinePage.js +696 -78
  241. package/cypress/pages/rulerPage.js +6 -2
  242. package/cypress/pages/textSelectionPage.js +461 -23
  243. package/cypress/pages/videoResponsePage.js +393 -81
  244. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import utilities from "../support/helpers/utilities";
2
- import { createQuestionBasePage, questionInstructionsComponent, scoringSectionBaseEditTab, maximumRecorderLengthComponent, commonComponents, playbackControlsBaseComponent, autoScoredScoringPreviewTab, studentViewSettingsLabelComponent, additionalSettingsPanel, additionalSettingsAccessibilitySectionComponent } from "./components"
2
+ import { createQuestionBasePage, questionInstructionsComponent, scoringSectionBaseEditTab, maximumRecorderLengthComponent, commonComponents, playbackControlsBaseComponent, autoScoredScoringPreviewTab, studentViewSettingsLabelComponent, additionalSettingsPanel, additionalSettingsAccessibilitySectionComponent, limitNumberOfRetakeComponent, allowTeachersToDownloadStudentResponseComponent } from "./components"
3
3
  import { dialogBoxBase } from "./dialogBoxBase";
4
4
  const css = Cypress.env('css');
5
5
 
@@ -12,6 +12,8 @@ const selectors = {
12
12
  ...playbackControlsBaseComponent,
13
13
  ...studentViewSettingsLabelComponent,
14
14
  ...additionalSettingsPanel,
15
+ ...limitNumberOfRetakeComponent,
16
+ ...allowTeachersToDownloadStudentResponseComponent,
15
17
  recordedResponseHelpText: () => cy.get('[class*="preview-help-text"]'),
16
18
  playbackWaveform: () => cy.get('.audio-wave-form'),
17
19
  playbackWaveformTotalWidth: () => cy.get('.audio-wave-form wave wave canvas'),
@@ -104,15 +106,7 @@ const selectors = {
104
106
  barPreviewPauseRecordingButton: () => cy.get('.standard-recorder-pause-btn'),
105
107
  barPreviewResumeRecordingButton: () => cy.get('.standard-recorder-resume-btn'),
106
108
  barPreviewRetakeButton: () => cy.get('.standard-recorder-retake-btn'),
107
- showStudentsTheRetakeLimitsOnTooltipCheckbox: () => cy.get('[data-ngie-testid="show-students-the-retake-limits-on-tooltip-checkbox"] input'),
108
- showStudentsTheRetakeLimitsOnTooltipCheckboxLabel: () => cy.get('[data-ngie-testid="show-students-the-retake-limits-on-tooltip-checkbox"] .MuiFormControlLabel-label'),
109
- retakeLimitLabel: () => cy.get('.retake-limit-label'),
110
- retakeLimitInputField: () => cy.get('.retake-limit-wrapper input'),
111
- barPreviewPlaybackWrapper: () => cy.get('.audio-response-wrapper'),
112
-
113
- //Additional settings
114
- allowTeachersToDownloadStudentResponseLabel: () => cy.get('[data-ngie-testid="allow-teachers-to-download-student-response-checkbox"] [class*="label"]'),
115
- allowTeachersToDownloadStudentResponseCheckbox: () => cy.get('[data-ngie-testid="allow-teachers-to-download-student-response-checkbox"] input')
109
+ barPreviewPlaybackWrapper: () => cy.get('.audio-response-wrapper')
116
110
  }
117
111
 
118
112
  const steps = {
@@ -123,6 +117,8 @@ const steps = {
123
117
  ...maximumRecorderLengthComponent.steps,
124
118
  ...playbackControlsBaseComponent.steps,
125
119
  ...additionalSettingsPanel.steps,
120
+ ...limitNumberOfRetakeComponent.steps,
121
+ ...allowTeachersToDownloadStudentResponseComponent.steps,
126
122
  startRecordingStandardPreview: () => {
127
123
  audioResponsePage.standardPreviewStartRecordingButton()
128
124
  .click();
@@ -652,11 +648,6 @@ const steps = {
652
648
  .blur();
653
649
  },
654
650
 
655
- limitNumberOfRetakeCheckboxUncheckedState: () => {
656
- audioResponsePage.limitNumberOfRetakeCheckbox()
657
- .should('not.be.checked');
658
- },
659
-
660
651
  deselectAudioIndicatorsTimerButton: () => {
661
652
  audioResponsePage.audioIndicatorsTimerButton()
662
653
  .click()
@@ -730,37 +721,6 @@ const steps = {
730
721
  .should('have.class', 'ngie-toggle-button-selected');
731
722
  },
732
723
 
733
- verifyShowStudentsTheRetakeLimitsOnTooltipCheckboxUncheckedState: () => {
734
- audioResponsePage.showStudentsTheRetakeLimitsOnTooltipCheckbox()
735
- .should('not.be.checked');
736
- },
737
-
738
- checkLimitNumberOfRetakeCheckbox: () => {
739
- audioResponsePage.limitNumberOfRetakeCheckbox()
740
- .click()
741
- .should('be.checked');
742
- },
743
-
744
- /**
745
- * Verifies the value of the retake limit input field.
746
- * @param {string} value - The expected value of the retake limit input field.
747
- */
748
- verifyRetakeLimitInputFieldValue: (value) => {
749
- audioResponsePage.retakeLimitInputField()
750
- .should('have.attr', 'value', value)
751
- },
752
-
753
- /**
754
- * Sets the retake limit value.
755
- * @param {string} value - The value to set as the retake limit.
756
- */
757
- setRetakeLimit: (value) => {
758
- audioResponsePage.retakeLimitInputField()
759
- .clear()
760
- .type(value)
761
- .should('have.attr', 'value', value)
762
- },
763
-
764
724
  /**
765
725
  * Verifies the recorded time displayed in the bar preview player on the audio response page.
766
726
  * @param {string} recordingTime - The current recorded time in the format 'mm:ss'.
@@ -824,40 +784,6 @@ const steps = {
824
784
 
825
785
  verifyResponseIsRecordedHelpText: () => {
826
786
  utilities.verifyInnerText(audioResponsePage.recordedResponseHelpText(), 'Your response has been recorded.');
827
- },
828
-
829
- checkShowStudentsTheRetakeLimitsOnTooltipCheckbox: () => {
830
- audioResponsePage.showStudentsTheRetakeLimitsOnTooltipCheckbox()
831
- .click()
832
- .should('be.checked');
833
- },
834
-
835
- uncheckShowStudentsTheRetakeLimitsOnTooltipCheckbox: () => {
836
- audioResponsePage.showStudentsTheRetakeLimitsOnTooltipCheckbox()
837
- .click()
838
- .should('not.be.checked');
839
- },
840
-
841
- clearRetakeLimitInputField: () => {
842
- audioResponsePage.retakeLimitInputField()
843
- .clear();
844
- },
845
-
846
- verifyAllowTeachersToDownloadStudentResponseCheckboxChecked: () => {
847
- audioResponsePage.allowTeachersToDownloadStudentResponseCheckbox()
848
- .should('be.checked');
849
- },
850
-
851
- uncheckAllowTeachersToDownloadStudentResponseCheckbox: () => {
852
- audioResponsePage.allowTeachersToDownloadStudentResponseCheckbox()
853
- .click()
854
- .should('not.be.checked');
855
- },
856
-
857
- checkAllowTeachersToDownloadStudentResponseCheckbox: () => {
858
- audioResponsePage.allowTeachersToDownloadStudentResponseCheckbox()
859
- .click()
860
- .should('be.checked');
861
787
  }
862
788
  }
863
789
 
@@ -871,6 +797,8 @@ const tests = {
871
797
  ...studentViewSettingsLabelComponent.tests,
872
798
  ...additionalSettingsPanel.tests,
873
799
  ...additionalSettingsAccessibilitySectionComponent.tests,
800
+ ...limitNumberOfRetakeComponent.tests,
801
+ ...allowTeachersToDownloadStudentResponseComponent.tests,
874
802
  verifyRetakePopupCSSAndA11y: () => {
875
803
  it('CSS of \'Retake\' popup', { tags: 'css' }, () => {
876
804
  utilities.verifyCSS(dialogBoxBase.dialogBox(), {
@@ -112,7 +112,7 @@ const tests = {
112
112
  ...scoringSectionBaseEditTab.tests,
113
113
  ...additionalSettingsPanel.tests,
114
114
  ...additionalSettingsAccessibilitySectionComponent.tests,
115
- ...toolSettingsComponent.steps,
115
+ ...toolSettingsComponent.tests,
116
116
  }
117
117
 
118
118
  export const brainingCampManipulativePage = {
@@ -0,0 +1,231 @@
1
+ import utilities from "../support/helpers/utilities"
2
+ import { barAndLineChartComponent, chartsCommonComponent, createQuestionBasePage, questionInstructionsComponent, resetPopupComponent, scoringSectionBaseEditTab, commonComponents } from "./components";
3
+
4
+ const selectors = {
5
+ ...questionInstructionsComponent,
6
+ ...barAndLineChartComponent,
7
+ ...chartsCommonComponent,
8
+ ...commonComponents,
9
+ barDragHandle: () => cy.get('.bar-drag-handle'),
10
+ selectChartTypeMaxYLabel: () => cy.get('[class*="ChartsPreviewstyles__CustomInputFieldLabel"]'),
11
+ selectChartTypeMaxYInputField: () => cy.get('[class*="ChartsPreviewstyles__CustomInputFieldWrapper"] input'),
12
+ selectChartTypeMaxXLabel: () => cy.get('[class*="ChartsPreviewstyles__CustomInputFieldLabel"]'),
13
+ selectChartTypeMaxXInputField: () => cy.get('[class*="ChartsPreviewstyles__CustomInputFieldWrapper"] input'),
14
+ selectChartTypeBarDragHandle: () => cy.get('[class*="Chartsstyles__ChartsQuestionWrapper"] .bar-drag-handle'),
15
+ selectChartTypeBar: () => cy.get('[class*="Chartsstyles__ChartsQuestionWrapper"] .ngie-chart-point'),
16
+ barLockIcon: () => cy.get('[class*="ChartGridstyle__BarLockIconWrapper"]'),
17
+ selectChartTypeBarLabel: () => cy.get('[class*="Chartsstyles__ChartsQuestionWrapper"] [class*="ChartGridstyle__NameDiv-"]'),
18
+ //specify correct answer section
19
+ specifyCorrectAnswerBarDragHandle: () => cy.get('.ngie-accordion .bar-drag-handle'),
20
+ specifyCorrectAnswerBar: () => cy.get('.ngie-accordion .ngie-chart-point'),
21
+
22
+ //TODO - Update selector after https://redmine.zeuslearning.com/issues/570603 is resolved
23
+ //Preview tab
24
+ previewTabBarDragHandle: () => cy.get('[class*="ChartsPreviewstyles__PreviewWrapper"]:visible .bar-drag-handle'),
25
+ previewTabBar: () => cy.get('[class*="ChartsPreviewstyles__PreviewWrapper"]:visible .ngie-chart-point'),
26
+ previewTabBarLabel: () => cy.get('[class*="ChartsPreviewstyles__PreviewWrapper"]:visible [class*="ChartGridstyle__NameDiv-"]'),
27
+ }
28
+
29
+ const steps = {
30
+ ...createQuestionBasePage.steps,
31
+ ...questionInstructionsComponent.steps,
32
+ ...scoringSectionBaseEditTab.steps,
33
+ ...barAndLineChartComponent.steps,
34
+ ...chartsCommonComponent.steps,
35
+ ...resetPopupComponent.steps,
36
+ /**
37
+ * @description set the bar height/value in the select chart type section chart
38
+ * @param {Object} barProperties - The properties and changes to be done on the bar
39
+ * @param {number} barProperties.barIndex index of the bar
40
+ * @param {number} barProperties.value value by which the bar height is to be increased as per Y axis
41
+ * @param {number} barProperties.range Maximum value of the axis on which bar value is determined
42
+ */
43
+ setBarValueInSelectChartTypeSection: ({ barIndex, value, range }) => {
44
+ utilities.getNthElement(chartsBarPage.selectChartTypeBar(), barIndex)
45
+ .invoke('attr', 'height')
46
+ .then((barValue) => {
47
+ let updatedBarValue = parseFloat(value /= range)
48
+ let originalBarValue = parseFloat(barValue)
49
+ let unitChange = parseFloat(1 / range)
50
+ if (originalBarValue < updatedBarValue) {
51
+ for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
52
+ utilities.getNthElement(chartsBarPage.selectChartTypeBarDragHandle(), barIndex)
53
+ .focus()
54
+ .type('{upArrow}');
55
+ }
56
+ } else if (originalBarValue > updatedBarValue) {
57
+ for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
58
+ utilities.getNthElement(chartsBarPage.selectChartTypeBarDragHandle(), barIndex)
59
+ .focus()
60
+ .type('{downArrow}');
61
+ }
62
+ }
63
+ utilities.getNthElement(chartsBarPage.selectChartTypeBar(), barIndex)
64
+ .should('have.attr', 'height', updatedBarValue);
65
+ });
66
+ },
67
+
68
+ /**
69
+ * @description increase the bar height/value in the specify correct answer section chart
70
+ * @param {Object} barProperties - The properties and changes to be done on the bar
71
+ * @param {number} barProperties.barIndex index of the bar
72
+ * @param {number} barProperties.value value by which the bar height is to be increased as per Y axis
73
+ * @param {number} barProperties.range Maximum value of the axis on which bar value is determined
74
+ */
75
+ setBarValueInSpecifyCorrectAnswerSection: ({ barIndex, value, range }) => {
76
+ utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBar(), barIndex)
77
+ .invoke('attr', 'height')
78
+ .then((barValue) => {
79
+ let updatedBarValue = parseFloat(value /= range)
80
+ let originalBarValue = parseFloat(barValue)
81
+ let unitChange = parseFloat(1 / range)
82
+ if (originalBarValue < updatedBarValue) {
83
+ for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
84
+ utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBarDragHandle(), barIndex)
85
+ .focus()
86
+ .type('{upArrow}');
87
+ }
88
+ } else if (originalBarValue > updatedBarValue) {
89
+ for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
90
+ utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBarDragHandle(), barIndex)
91
+ .focus()
92
+ .type('{downArrow}');
93
+ }
94
+ }
95
+ utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBar(), barIndex)
96
+ .should('have.attr', 'height', updatedBarValue);
97
+ });
98
+ },
99
+
100
+ /**
101
+ * @description Lock the bar in select chart type section chart
102
+ * @param {number} barIndex Index of the bar to be locked
103
+ */
104
+ lockBar: (barIndex) => {
105
+ utilities.triggerMouseover(utilities.getNthElement(chartsBarPage.selectChartTypeBar(), barIndex))
106
+ chartsBarPage.barAndPointTooltipLockUnlockButton()
107
+ .click();
108
+ chartsBarPage.barAndPointTooltipLockUnlockButton()
109
+ .should('have.attr', 'aria-label', 'locked bar');
110
+ utilities.triggerMouseout(utilities.getNthElement(chartsBarPage.selectChartTypeBar(), barIndex));
111
+ utilities.getNthElement(chartsBarPage.selectChartTypeBar(), barIndex)
112
+ .within(() => {
113
+ utilities.verifyElementVisibilityState(chartsBarPage.barLockIcon(), 'visible');
114
+ });
115
+ },
116
+
117
+ /**
118
+ * @description Edit bar label in select chart type section chart
119
+ * @param {number} barIndex Index of the bar to be edited
120
+ * @param {string} barLabel Label to be given to the bar
121
+ */
122
+ editBarLabelInSelectChartTypeSection: (barIndex, barLabel) => {
123
+ utilities.triggerMouseover(utilities.getNthElement(chartsBarPage.selectChartTypeBar(), barIndex))
124
+ chartsBarPage.barAndPointTooltipLabelButton()
125
+ .click();
126
+ chartsBarPage.steps.addInputToChartLabelPopupInputField(barLabel);
127
+ chartsBarPage.steps.saveGraphLabelPopup();
128
+ utilities.triggerMouseout(utilities.getNthElement(chartsBarPage.selectChartTypeBar(), barIndex));
129
+ utilities.verifyInnerText(utilities.getNthElement(chartsBarPage.selectChartTypeBarLabel(), barIndex), barLabel);
130
+ },
131
+
132
+ /**
133
+ * @description Set the Max Y value in its input field
134
+ * @param {number} value Max Y value to be set
135
+ */
136
+ setMaxYValue: (value) => {
137
+ chartsBarPage.selectChartTypeMaxYInputField()
138
+ .clear()
139
+ .type(value)
140
+ .should('have.value', value)
141
+ .blur();
142
+ },
143
+
144
+ //Preview tab
145
+ /**
146
+ * Verify the bar height in preview tab
147
+ * @param {Object} barProperties - The properties of the bar
148
+ * @param {number} barProperties.barIndex index of the bar
149
+ * @param {number} barProperties.barValue Height of the bar as per the axis
150
+ * @param {number} barProperties.range Maximum value of the axis on which bar value is determined
151
+ */
152
+ verifyBarHeightInPreviewTab: ({ barIndex, barValue, range }) => {
153
+ let barHeight = parseFloat(barValue /= range)
154
+ utilities.getNthElement(chartsBarPage.previewTabBar(), barIndex)
155
+ .should('have.attr', 'height', barHeight);
156
+ },
157
+
158
+ /**
159
+ * Verify the bar is locked in preview tab
160
+ * @param {number} barIndex index of the bar
161
+ */
162
+ verifyBarIsLockedInPreviewTab: (barIndex) => {
163
+ utilities.getNthElement(chartsBarPage.previewTabBar(), barIndex)
164
+ .within(() => {
165
+ utilities.verifyElementVisibilityState(chartsBarPage.barLockIcon(), 'visible');
166
+ utilities.verifyElementVisibilityState(chartsBarPage.barDragHandle().find('svg'), 'notExist');
167
+ });
168
+ },
169
+
170
+ /**
171
+ * @description increase the bar height/value in the preview tab chart
172
+ * @param {Object} barProperties - The properties and changes to be done on the bar
173
+ * @param {number} barProperties.barIndex index of the bar
174
+ * @param {number} barProperties.value value by which the bar height is to be increased as per Y axis
175
+ * @param {number} barProperties.range Maximum value of the axis on which bar value is determined
176
+ */
177
+ setBarValueInPreviewTab: ({ barIndex, value, range }) => {
178
+ utilities.getNthElement(chartsBarPage.previewTabBar(), barIndex)
179
+ .invoke('attr', 'height')
180
+ .then((barValue) => {
181
+ let updatedBarValue = parseFloat(value /= range)
182
+ let originalBarValue = parseFloat(barValue)
183
+ let unitChange = parseFloat(1 / range)
184
+ if (originalBarValue < updatedBarValue) {
185
+ for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
186
+ utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
187
+ .focus()
188
+ .type('{upArrow}');
189
+ }
190
+ } else if (originalBarValue > updatedBarValue) {
191
+ for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
192
+ utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
193
+ .focus()
194
+ .type('{downArrow}');
195
+ }
196
+ }
197
+ utilities.getNthElement(chartsBarPage.previewTabBar(), barIndex)
198
+ .should('have.attr', 'height', updatedBarValue);
199
+ });
200
+ },
201
+
202
+ /**
203
+ * @description Edit bar label in preview tab chart
204
+ * @param {number} barIndex Index of the bar to be edited
205
+ * @param {string} barLabel Label to be given to the bar
206
+ */
207
+ editBarLabelInPreviewTab: (barIndex, barLabel) => {
208
+ utilities.triggerMouseover(utilities.getNthElement(chartsBarPage.previewTabBar(), barIndex))
209
+ chartsBarPage.barAndPointTooltipLabelButton()
210
+ .click();
211
+ chartsBarPage.steps.addInputToChartLabelPopupInputField(barLabel);
212
+ chartsBarPage.steps.saveGraphLabelPopup();
213
+ utilities.triggerMouseout(utilities.getNthElement(chartsBarPage.previewTabBar(), barIndex));
214
+ utilities.verifyInnerText(utilities.getNthElement(chartsBarPage.previewTabBarLabel(), barIndex), barLabel);
215
+ },
216
+
217
+ /**
218
+ * @description Delete bar in preview tab
219
+ * @param {number} barIndex Index of the bar to be deleted
220
+ */
221
+ deleteBarInPreviewTab: (barIndex) => {
222
+ utilities.triggerMouseover(utilities.getNthElement(chartsBarPage.previewTabBar(), barIndex))
223
+ chartsBarPage.barAndPointTooltipDeleteButton()
224
+ .click();
225
+ }
226
+ }
227
+
228
+ export const chartsBarPage = {
229
+ ...selectors,
230
+ steps
231
+ }
@@ -0,0 +1,8 @@
1
+ const selectors = {
2
+ minInputField: () => cy.get('input[aria-label="Min"]'),
3
+ maxInputField: () => cy.get('input[aria-label="Max"]')
4
+ }
5
+
6
+ export const chartsDotPlotPage = {
7
+ ...selectors
8
+ }
@@ -0,0 +1,42 @@
1
+ const selectors = {
2
+ selectChartTypePoint: () => cy.get('[class*="Chartsstyles__ChartsQuestionWrapper"] .ngie-chart-point'),
3
+ }
4
+
5
+ const steps = {
6
+ /**
7
+ * @description set the point height/value in the select chart type section chart
8
+ * @param {Object} pointProperties - The properties and changes to be done on the bar
9
+ * @param {number} pointProperties.pointIndex index of the bar
10
+ * @param {number} pointProperties.value value to which the point is to be set as per Y axis
11
+ * @param {number} pointProperties.range Maximum value of the axis on which bar value is determined
12
+ */
13
+ setPointValueInSelectChartTypeSection: ({ barIndex, value, range }) => {
14
+ utilities.getNthElement(chartsBarPage.selectChartTypePoint(), barIndex)
15
+ .invoke('attr', 'height')
16
+ .then((pointValue) => {
17
+ let updatedPointValue = parseFloat(value /= range)
18
+ let originalPointValue = parseFloat(pointValue)
19
+ let unitChange = parseFloat(1 / range)
20
+ if (originalPointValue < updatedPointValue) {
21
+ for (let i = originalPointValue; i < updatedPointValue; i = parseFloat((i + unitChange).toFixed(2))) {
22
+ utilities.getNthElement(chartsBarPage.selectChartTypePoint(), barIndex)
23
+ .focus()
24
+ .type('{upArrow}');
25
+ }
26
+ } else if (originalPointValue > updatedPointValue) {
27
+ for (let i = originalPointValue; i > updatedPointValue; i = parseFloat((i - unitChange).toFixed(2))) {
28
+ utilities.getNthElement(chartsBarPage.selectChartTypePoint(), barIndex)
29
+ .focus()
30
+ .type('{downArrow}');
31
+ }
32
+ }
33
+ utilities.getNthElement(chartsBarPage.selectChartTypePoint(), barIndex)
34
+ .should('have.attr', 'height', updatedPointValue);
35
+ });
36
+ },
37
+ }
38
+
39
+ export const chartsLinePage = {
40
+ ...selectors,
41
+ steps
42
+ }
@@ -0,0 +1,58 @@
1
+ import utilities from "../../support/helpers/utilities";
2
+
3
+ const selectors = {
4
+ allowTeachersToDownloadStudentResponseLabel: () => cy.get('[data-ngie-testid="allow-teachers-to-download-student-response-checkbox"] [class*="label"]'),
5
+ allowTeachersToDownloadStudentResponseCheckbox: () => cy.get('[data-ngie-testid="allow-teachers-to-download-student-response-checkbox"] input')
6
+ }
7
+
8
+ const steps = {
9
+ verifyAllowTeachersToDownloadStudentResponseCheckboxChecked: () => {
10
+ allowTeachersToDownloadStudentResponseComponent.allowTeachersToDownloadStudentResponseCheckbox()
11
+ .should('be.checked');
12
+ },
13
+
14
+ uncheckAllowTeachersToDownloadStudentResponseCheckbox: () => {
15
+ allowTeachersToDownloadStudentResponseComponent.allowTeachersToDownloadStudentResponseCheckbox()
16
+ .click()
17
+ .should('not.be.checked');
18
+ },
19
+
20
+ checkAllowTeachersToDownloadStudentResponseCheckbox: () => {
21
+ allowTeachersToDownloadStudentResponseComponent.allowTeachersToDownloadStudentResponseCheckbox()
22
+ .click()
23
+ .should('be.checked');
24
+ }
25
+ }
26
+
27
+ const tests = {
28
+ verifyAllowTeachersToDownloadStudentResponseSection: () => {
29
+ it('In details section, \'Allow teachers to download student response\' checkbox and label should be displayed and by default it should be checked', () => {
30
+ utilities.verifyInnerText(allowTeachersToDownloadStudentResponseComponent.allowTeachersToDownloadStudentResponseLabel(), 'Allow teachers to download student response');
31
+ utilities.verifyElementVisibilityState(allowTeachersToDownloadStudentResponseComponent.allowTeachersToDownloadStudentResponseLabel(), 'visible');
32
+ utilities.verifyElementVisibilityState(allowTeachersToDownloadStudentResponseComponent.allowTeachersToDownloadStudentResponseCheckbox(), 'exist');
33
+ allowTeachersToDownloadStudentResponseComponent.steps.verifyAllowTeachersToDownloadStudentResponseCheckboxChecked();
34
+ });
35
+
36
+ it('User should be able to uncheck and check \'Allow teachers to download student response\' checkbox', () => {
37
+ allowTeachersToDownloadStudentResponseComponent.steps.uncheckAllowTeachersToDownloadStudentResponseCheckbox();
38
+ allowTeachersToDownloadStudentResponseComponent.steps.checkAllowTeachersToDownloadStudentResponseCheckbox();
39
+ });
40
+
41
+ it('CSS of \'Allow teachers to download student response\' checkbox and label section', { tags: 'css' }, () => {
42
+ utilities.verifyCSS(allowTeachersToDownloadStudentResponseComponent.allowTeachersToDownloadStudentResponseLabel(), {
43
+ 'color': css.color.labelText,
44
+ 'font-size': css.fontSize.normal,
45
+ 'font-weight': css.fontWeight.regular
46
+ });
47
+ utilities.verifyCSS(allowTeachersToDownloadStudentResponseComponent.allowTeachersToDownloadStudentResponseCheckbox().parents('.icon-checkbox-selected').find('.checkbox-icon-border-rect'), {
48
+ 'fill': css.color.activeButtons
49
+ });
50
+ })
51
+ }
52
+ }
53
+
54
+ export const allowTeachersToDownloadStudentResponseComponent = {
55
+ ...selectors,
56
+ steps,
57
+ tests
58
+ }
@@ -183,8 +183,8 @@ const tests = {
183
183
  case 'list sorting':
184
184
  helpText = 'You can set the correct answer by sorting the correct answer(s) in the response area(s).';
185
185
  break;
186
- case 'highlight':
187
- helpText = 'You can set the correct answer by highlighting the correct answer(s) in the response area(s).';
186
+ case 'text selection':
187
+ helpText = 'You can set the correct answer by selecting the correct answer selection(s).';
188
188
  break;
189
189
  case 'highlight image':
190
190
  helpText = 'You can set the correct answer by selecting the correct answer(s) in the response area(s).';
@@ -205,11 +205,14 @@ const tests = {
205
205
  helpText = 'You can set the correct answer by entering the correct answer(s) in the response area(s)';
206
206
  break;
207
207
  case 'grid fill':
208
- helpText = 'You can set the correct answer by selecting the correct cell(s) in the grid.';
208
+ helpText = 'You can set the correct answer by selecting the correct answer cell(s).';
209
209
  break;
210
210
  case 'number line':
211
211
  helpText = 'You can set the correct answer by entering the correct answer(s) in the response area(s)';
212
212
  break;
213
+ case 'number line - label':
214
+ helpText = 'You can set the correct answer by dragging the correct answer(s) in the response area(s).';
215
+ break;
213
216
  default:
214
217
  throw new Error('Invalid question type');
215
218
  }
@@ -246,36 +249,24 @@ const tests = {
246
249
  * @example - verifyAutoScoredPointsErrorMessageWhenPointsFieldIsEmpty('Correct');
247
250
  */
248
251
  verifyAutoScoredPointsErrorMessageWhenPointsFieldIsEmpty: (accordionName) => {
249
- it(`When the user focuses in and out of the empty points input field, \'Error: Please enter points.\' validation text should be displayed below the points input field and error icon should be displayed on the \'${accordionName}\' accordion`, () => {
252
+ it(`When the user focuses in and out of the empty points input field, no points error message should be displayed below the points input field and error icon should not be displayed on the \'${accordionName}\' accordion`, () => {
250
253
  scoringSectionBase.pointsInputField()
251
254
  .focus();
252
255
  scoringSectionBase.pointsInputField()
253
256
  .blur();
254
- utilities.verifyElementVisibilityState(scoringSectionBase.pleaseEnterPointsErrorMessage(), 'visible')
255
- utilities.verifyInnerText(scoringSectionBase.pleaseEnterPointsErrorMessage(), 'Error: Please enter points.');
257
+ utilities.verifyElementVisibilityState(scoringSectionBase.pleaseEnterPointsErrorMessage(), 'notExist')
256
258
  if (accordionName == 'Correct') {
257
259
  autoScoredSpecifyCorrectAnswerSection.correctAnswerAccordion()
258
260
  .within(() => {
259
- autoScoredSpecifyCorrectAnswerSection.steps.verifySpecifyCorrectAnswerErrorIconIsVisible();
261
+ autoScoredSpecifyCorrectAnswerSection.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
260
262
  });
261
263
  } else {
262
264
  autoScoredSpecifyCorrectAnswerSection.alternativeAnswerAccordion()
263
265
  .within(() => {
264
- autoScoredSpecifyCorrectAnswerSection.steps.verifySpecifyCorrectAnswerErrorIconIsVisible();
266
+ autoScoredSpecifyCorrectAnswerSection.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
265
267
  });
266
268
  };
267
269
  });
268
-
269
- it(`When the user allots points then the \'Error: Please enter points.\' validation text and error icon displayed on the \'${accordionName}\' accordion should disappear, the allotted points should be displayed on the \'${accordionName}\' accordion`, () => {
270
- scoringSectionBase.steps.allotPoints(20);
271
- utilities.verifyElementVisibilityState(scoringSectionBase.pleaseEnterPointsErrorMessage(), 'notExist');
272
- autoScoredSpecifyCorrectAnswerSection.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
273
- if (accordionName === 'Correct') {
274
- autoScoredSpecifyCorrectAnswerSection.steps.verifyPointsLabelAndPointsOnAnswerAccordion(0, '20');
275
- } else {
276
- autoScoredSpecifyCorrectAnswerSection.steps.verifyPointsLabelAndPointsOnAnswerAccordion(1, '20');
277
- }
278
- });
279
270
  },
280
271
 
281
272
  verifyAutoScoredCorrectAnswerErrorMessageCSSAndA11y: () => {
@@ -320,7 +311,7 @@ const tests = {
320
311
  .verifyPseudoClassBeforeProperty('color', css.color.activeButtons);
321
312
  });
322
313
 
323
- it('If user has not added points and/or selected correct answer in the correct accordion, the user should get a warning popup', () => {
314
+ it('If user has not selected correct answer in the correct accordion, the user should get a warning popup', () => {
324
315
  autoScoredSpecifyCorrectAnswerSection.steps.clickOnAddAlternativeAnswerButton();
325
316
  dialogBoxBase.steps.allFieldsRequiredWarningPopupContents();
326
317
  });
@@ -350,13 +341,12 @@ const tests = {
350
341
  utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'notExist');
351
342
  });
352
343
 
353
- it('\'Error: Please set a correct answer.\' and \'Error: Please enter points.\' validation error messages should be displayed in the correct accordion', () => {
344
+ it('\'Error: Please set a correct answer.\' validation error messages should be displayed in the correct accordion, points error message should not be displayed', () => {
354
345
  autoScoredSpecifyCorrectAnswerSection.correctAnswerAccordion()
355
346
  .within(() => {
356
347
  utilities.verifyElementVisibilityState(autoScoredSpecifyCorrectAnswerSection.specifyCorrectAnswerErrorIcon(), 'visible');
357
348
  });
358
- utilities.verifyInnerText(utilities.getNthElement(scoringSectionBase.pleaseEnterPointsErrorMessage(), 0), 'Error: Please enter points.');
359
- utilities.verifyElementVisibilityState(scoringSectionBase.pleaseEnterPointsErrorMessage(), 'visible');
349
+ utilities.verifyElementVisibilityState(scoringSectionBase.pleaseEnterPointsErrorMessage(), 'notExist');
360
350
  if (questionType != 'list ordering' && questionType != 'short text response' && questionType != 'text entry math') {
361
351
  steps.verifySpecifyCorrectAnswerErrorMessage();
362
352
  }
@@ -4,14 +4,14 @@ const css = Cypress.env('css');
4
4
 
5
5
  //Note: We need to work on this file, as disablePreviousIncorrectOptionLabel is not present for all auto scored question types, need to create different component files allowStudentsToCheckAnswerComponent, disablePreviousOptionComponent
6
6
  const selectors = {
7
- allowStudentToCheckAnswerLabel: () => cy.get('[data-ngie-testid="allow-students-to-check-answer-checkbox"] .MuiFormControlLabel-label'),
7
+ allowStudentToCheckAnswerLabel: () => cy.get('[data-ngie-testid="allow-student-to-check-answer-checkbox"] .MuiFormControlLabel-label'),
8
8
  //Note: update after https://redmine.zeuslearning.com/issues/565666 gets resolved
9
- allowStudentToCheckAnswerCheckbox: () => cy.get('[data-ngie-testid="allow-students-to-check-answer-checkbox"] input'),
9
+ allowStudentToCheckAnswerCheckbox: () => cy.get('[data-ngie-testid="allow-student-to-check-answer-checkbox"] input'),
10
10
  maximumCheckAnswerAttemptsDropdownLabel: () => cy.get('#Maximum-check-answer-attempts-dropdown-label'),
11
11
  maximumCheckAnswerAttemptsDropdown: () => cy.get('#Maximum-check-answer-attempts-select'),
12
- maximumCheckAnswerAttemptsDropdownListOptions: (ariaLabel = null) => {
13
- if (ariaLabel) {
14
- return cy.get(`[aria-labelledby*="Maximum-check-answer-attempts-dropdown-label"] [role="option"][aria-label*="${ariaLabel}"]`)
12
+ maximumCheckAnswerAttemptsDropdownListOptions: (dataValue = null) => {
13
+ if (dataValue) {
14
+ return cy.get(`[aria-labelledby*="Maximum-check-answer-attempts-dropdown-label"] [role="option"][data-value="${dataValue}"]`)
15
15
  } else {
16
16
  return cy.get('[aria-labelledby*="Maximum-check-answer-attempts-dropdown-label"] [role="option"]')
17
17
  }
@@ -115,7 +115,7 @@ const tests = {
115
115
  'font-size': css.fontSize.normal,
116
116
  'font-weight': css.fontWeight.regular
117
117
  });
118
- utilities.verifyCSS(autoScoredStudentViewSettings.allowStudentToCheckAnswerCheckbox().parents('[data-ngie-testid="allow-students-to-check-answer-checkbox"]').find('g').eq(1), {
118
+ utilities.verifyCSS(autoScoredStudentViewSettings.allowStudentToCheckAnswerCheckbox().parents('[data-ngie-testid="allow-student-to-check-answer-checkbox"]').find('g').eq(1), {
119
119
  'fill': css.color.activeButtons
120
120
  });
121
121
  utilities.verifyCSS(autoScoredStudentViewSettings.maximumCheckAnswerAttemptsDropdownLabel(), {