itemengine-cypress-automation 1.0.342-regressionFixes18thMarch-b97f3ea.0 → 1.0.342

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 (259) hide show
  1. package/cypress/e2e/ILC/AudioResponseNew/editTabBasicSection.js +4 -16
  2. package/cypress/e2e/ILC/BrainingCampManipulative/editTabBasicSection.js +1 -1
  3. package/cypress/e2e/ILC/BrowseItems/browseReviewItems.js +398 -0
  4. package/cypress/e2e/ILC/BrowseItems/browseReviewItemsMobileView.js +329 -0
  5. package/cypress/e2e/ILC/BrowseItems/browseThinkSphereItems.js +260 -0
  6. package/cypress/e2e/ILC/BrowseItems/browseThinkSphereItemsMobileView.js +368 -0
  7. package/cypress/e2e/ILC/ChartsBar/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +33 -0
  8. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightBasic.js +2 -2
  9. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -0
  10. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +1 -0
  11. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +1 -0
  12. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +1 -0
  13. package/cypress/e2e/ILC/ChartsBar/editTabBasicSection.js +37 -0
  14. package/cypress/e2e/ILC/ChartsBar/headerSection.js +50 -2
  15. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightBasic.js +1 -0
  16. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -0
  17. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +1 -0
  18. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +1 -0
  19. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +1 -0
  20. package/cypress/e2e/ILC/ChartsLine/headerSection.js +18 -1
  21. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddFeatureRadioButton.js +2 -3
  22. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddTranscriptRadioButton .js +0 -2
  23. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabStudentViewSettings.js +3 -3
  24. package/cypress/e2e/ILC/CkEditorEquationEditor/equationEditorBasicFile.js +4 -4
  25. package/cypress/e2e/ILC/CkEditorInsertImage/imageInfo.js +1 -1
  26. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/allOrNothingBasicForAllViews.smoke.js +3 -3
  27. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/headerSection.js +2 -0
  28. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/manuallyAndNonScoredScoringEditTab.js +4 -1
  29. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +3 -0
  30. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/styleAndLayoutCustomizationLayoutProperties.js +3 -0
  31. package/cypress/e2e/ILC/DrawingResponse/drawingResponseAdditionalSettings.js +1 -0
  32. package/cypress/e2e/ILC/DrawingResponse/drawingResponseBackground.js +2 -8
  33. package/cypress/e2e/ILC/DrawingResponse/drawingResponseCustomizeAdditionalOptions.js +1 -0
  34. package/cypress/e2e/ILC/DrawingResponse/drawingResponseEditTabBasicSection.js +3 -3
  35. package/cypress/e2e/ILC/DrawingResponse/drawingResponsePreviewTabContents.smoke.js +3 -4
  36. package/cypress/e2e/ILC/EssayResponse/createCustomCategory.smoke.js +1 -1
  37. package/cypress/e2e/ILC/EssayResponse/editCategoryFlyout.js +0 -1
  38. package/cypress/e2e/ILC/EssayResponse/editTabBasicSections.js +23 -37
  39. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/blankResponseScoring.js +29 -25
  40. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/allOrNothingForAllViews.smoke.js +210 -0
  41. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/dropzoneStyleAndLayoutCustomization.js +6 -3
  42. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/headerSection.js +1 -0
  43. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/allOrNothingForAllView.smoke.js +201 -0
  44. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/dropdownAndDropdownMenuSection.js +4 -1
  45. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/dropdownOptionsSection.js +2 -2
  46. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/specifyCorrectAnswerSection.js +0 -1
  47. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/Scoring/blankResponseScoring.js +18 -20
  48. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/allOrNothingForAllViews.smoke.js +216 -0
  49. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/backgroundImageAndCanvasProperties.js +0 -1
  50. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/headerSection.js +1 -0
  51. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/studentViewSettings.js +5 -1
  52. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/styleAndLayoutCustomization.js +2 -1
  53. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/Scoring/blankResponseScoring.js +21 -30
  54. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/allOrNothingForAllView.smoke.js +211 -0
  55. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/dropdownAndDropdownMenuSection.js +4 -1
  56. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editTabBasicSection.js +0 -1
  57. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/headerSection.js +2 -2
  58. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/HeaderSection.js +2 -2
  59. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/blankResponseScoring.js +23 -30
  60. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/allOrNothingForAllViews.smoke.js +213 -0
  61. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/editTabScoringSection.js +2 -0
  62. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/responseAnswersAndAcceptedStudentInput.js +2 -0
  63. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/supportedFileTypes.js +1 -1
  64. package/cypress/e2e/ILC/FillInTheGapsTextNew/Scoring/blankResponseScoring.js +25 -30
  65. package/cypress/e2e/ILC/FillInTheGapsTextNew/allOrNothingForAllViews.smoke.js +207 -0
  66. package/cypress/e2e/ILC/FillInTheGapsTextNew/editTabBasicSection.js +2 -10
  67. package/cypress/e2e/ILC/FillInTheGapsTextNew/editTabScoringSection.js +2 -0
  68. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +72 -0
  69. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +38 -0
  70. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +38 -0
  71. package/cypress/e2e/ILC/Graphing/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +86 -0
  72. package/cypress/e2e/ILC/Graphing/checkAddAlternativeButton.js +35 -0
  73. package/cypress/e2e/ILC/Graphing/editQuestion.smoke.js +28 -0
  74. package/cypress/e2e/ILC/Graphing/editTabBasicSection.js +38 -0
  75. package/cypress/e2e/ILC/Graphing/headerSection.js +36 -4
  76. package/cypress/e2e/ILC/Graphing/layoutAndGridOptions.js +6 -3
  77. package/cypress/e2e/ILC/GridFill/addAlternateButton.js +40 -0
  78. package/cypress/e2e/ILC/GridFill/customizeLayoutFillImageBackgroundImage.js +5 -6
  79. package/cypress/e2e/ILC/GridFill/customizeLayoutSectionShadeCellsGridBorders.js +2 -0
  80. package/cypress/e2e/ILC/GridFill/editTabScoringSection.js +3 -0
  81. package/cypress/e2e/ILC/GridFill/headerSection.js +1 -3
  82. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +39 -0
  83. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  84. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +39 -0
  85. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountAllOrNothingCorrectPointsGreaterThanAlternativePoints.js +37 -0
  86. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountallOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  87. package/cypress/e2e/ILC/GridFill/scoring/cellshadeCountAllOrNothingAlternativePointsGreaterThanCorrectPoints.js +36 -0
  88. package/cypress/e2e/ILC/GridFill/scoring/checkLabelSaveAsYouGo.js +75 -0
  89. package/cypress/e2e/ILC/GridFill/specifyCorrectAnswerSection.js +2 -4
  90. package/cypress/e2e/ILC/ImageHighlight/Scoring/partialDifferentWeightsScoring.js +2 -1
  91. package/cypress/e2e/ILC/ImageHighlight/headerSection.js +2 -1
  92. package/cypress/e2e/ILC/ImageHighlight/studentViewSettings.js +2 -2
  93. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +24 -0
  94. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +24 -0
  95. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +24 -0
  96. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +86 -0
  97. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsBasic.js +1 -1
  98. package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +1 -1
  99. package/cypress/e2e/ILC/ListOrderingDropdown/checkAddAlternativeButton.js +35 -0
  100. package/cypress/e2e/ILC/ListOrderingDropdown/editTabBasicSection.js +24 -0
  101. package/cypress/e2e/ILC/ListOrderingDropdown/headerSection.js +108 -0
  102. package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +6 -10
  103. package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js +2 -1
  104. package/cypress/e2e/ILC/ListOrderingNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +52 -0
  105. package/cypress/e2e/ILC/ListOrderingNew/allOrNothingForAllViews.smoke.js +2 -1
  106. package/cypress/e2e/ILC/ListOrderingNew/editTabBasicSection.js +23 -0
  107. package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +35 -9
  108. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +41 -0
  109. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +30 -0
  110. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +50 -0
  111. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +101 -0
  112. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/checkAddAlternativeButton.js +38 -0
  113. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabBasicSection.js +24 -0
  114. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabScoring.js +4 -1
  115. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/headerSection.js +35 -1
  116. package/cypress/e2e/ILC/Matching/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +98 -0
  117. package/cypress/e2e/ILC/Matching/checkAlternativeButton.js +38 -0
  118. package/cypress/e2e/ILC/Matching/clickAndDrop.js +3 -5
  119. package/cypress/e2e/ILC/Matching/draggableOptions.js +4 -0
  120. package/cypress/e2e/ILC/Matching/editTabBasicSection.js +41 -0
  121. package/cypress/e2e/ILC/Matching/headerSection.js +36 -11
  122. package/cypress/e2e/ILC/Matching/questionInstructionsAndPromptSection.js +2 -15
  123. package/cypress/e2e/ILC/MultipleSelection/allOrNothingBasicForAllViews.smoke.js +226 -0
  124. package/cypress/e2e/ILC/MultipleSelection/allOrNothingWithAlternativeAnswer.js +6 -3
  125. package/cypress/e2e/ILC/MultipleSelection/checkScoringLabelBannerAndCorrectAnswer.js +3 -1
  126. package/cypress/e2e/ILC/MultipleSelection/editTabScoringSection.js +6 -3
  127. package/cypress/e2e/ILC/MultipleSelection/headerSection.js +1 -0
  128. package/cypress/e2e/ILC/MultipleSelection/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -1
  129. package/cypress/e2e/ILC/MultipleSelection/partialDifferentWeightsBasic.js +1 -1
  130. package/cypress/e2e/ILC/MultipleSelection/partialDifferentWeightsWithAlternativeAnswer.js +69 -64
  131. package/cypress/e2e/ILC/MultipleSelection/partialEqualWeightsWithAlternativeAnswer.js +6 -4
  132. package/cypress/e2e/ILC/MultipleSelectionGridNew/allOrNothingBasicForAllViews.smoke.js +220 -0
  133. package/cypress/e2e/ILC/MultipleSelectionGridNew/editTabScoringSection.js +11 -5
  134. package/cypress/e2e/ILC/MultipleSelectionGridNew/styleAndLayoutCustomizationLayoutProperties.js +4 -2
  135. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +79 -0
  136. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +42 -0
  137. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +42 -0
  138. package/cypress/e2e/ILC/NumberLine/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +73 -0
  139. package/cypress/e2e/ILC/NumberLine/checkAddAlternativeButton.js +32 -0
  140. package/cypress/e2e/ILC/NumberLine/editTabSection.js +38 -0
  141. package/cypress/e2e/ILC/NumberLine/headerSection.js +33 -4
  142. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +81 -0
  143. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +43 -0
  144. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +43 -0
  145. package/cypress/e2e/ILC/NumberLineLabel/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +76 -0
  146. package/cypress/e2e/ILC/NumberLineLabel/additionalSettingsBasic.js +1 -1
  147. package/cypress/e2e/ILC/NumberLineLabel/checkAddAlternativeButton.js +34 -0
  148. package/cypress/e2e/ILC/NumberLineLabel/editTabSection.js +38 -0
  149. package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +37 -5
  150. package/cypress/e2e/ILC/NumberLineLabel/manuallyAndNonScoredEditTab.js +2 -1
  151. package/cypress/e2e/ILC/ShortTextResponseNew/editTabBasicSections.js +31 -48
  152. package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +2 -4
  153. package/cypress/e2e/ILC/SingleSelection/allOrNothingBasicForAllViews.smoke.js +192 -0
  154. package/cypress/e2e/ILC/SingleSelection/checkScoringLabelBannerAndCorrectAnswer.js +3 -1
  155. package/cypress/e2e/ILC/SingleSelection/headerSection.js +1 -0
  156. package/cypress/e2e/ILC/SingleSelection/manuallyAndNonScoredScoring.js +94 -88
  157. package/cypress/e2e/ILC/SingleSelectionGridNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +3 -1
  158. package/cypress/e2e/ILC/SingleSelectionGridNew/allOrNothingBasicForAllViews.smoke.js +209 -0
  159. package/cypress/e2e/ILC/SingleSelectionGridNew/editTabScoringSection.js +5 -0
  160. package/cypress/e2e/ILC/SingleSelectionGridNew/styleAndLayoutCustomizationLayoutProperties.js +8 -2
  161. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +84 -0
  162. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +84 -0
  163. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +63 -0
  164. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +62 -0
  165. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +62 -0
  166. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +63 -0
  167. package/cypress/e2e/ILC/TextEntryMath/Scoring/blankResponseScoring.js +2 -8
  168. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViews.smoke.js +0 -8
  169. package/cypress/e2e/ILC/TextEntryMath/customSettings.js +4 -0
  170. package/cypress/e2e/ILC/TextEntryMath/editTabBasicSection.js +27 -3
  171. package/cypress/e2e/ILC/TextEntryMath/equationEditor.smoke.js +8 -0
  172. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodEquivalentStructures.smoke.js +86 -0
  173. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchExact.smoke.js +97 -0
  174. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchValue.smoke.js +97 -0
  175. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodSymbolsAreEquivalent.smoke.js +167 -0
  176. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodValueIsEquivalent.smoke.js +167 -2
  177. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodsWithoutSetResponse.smoke.js +1 -0
  178. package/cypress/e2e/ILC/TextEntryMath/headerSection.js +43 -0
  179. package/cypress/e2e/ILC/TextEntryMath/previewContentsForAllViews.smoke.js +10 -7
  180. package/cypress/e2e/ILC/TextEntryMathWithImage/styleAndLayoutCustomization.js +1 -1
  181. package/cypress/e2e/ILC/TextSelection/ScoringParagraph/checkScoringLabelBannerAndCorrectAnswerSection.js +0 -1
  182. package/cypress/e2e/ILC/TextSelection/textSelectionModesInSpecifyPossibleOptionsSection.js +7 -12
  183. package/cypress/e2e/ILC/ThinkSphere/additionalSettings.js +52 -0
  184. package/cypress/e2e/ILC/ThinkSphere/createReviewItem.js +112 -0
  185. package/cypress/e2e/ILC/ThinkSphere/editTabBasicSection.js +561 -0
  186. package/cypress/e2e/ILC/ThinkSphere/editThinkSphereQuestion.smoke.js +185 -0
  187. package/cypress/e2e/ILC/ThinkSphere/equationEditorCreateCustomCategory.smoke.js +417 -0
  188. package/cypress/e2e/ILC/ThinkSphere/equationEditorEditCategoryFlyOut.js +289 -0
  189. package/cypress/e2e/ILC/ThinkSphere/headerSection.js +53 -0
  190. package/cypress/e2e/ILC/ThinkSphere/planPhase.js +581 -0
  191. package/cypress/e2e/ILC/ThinkSphere/previewTabPlanSection.js +541 -0
  192. package/cypress/e2e/ILC/ThinkSphere/solvePhase.js +296 -0
  193. package/cypress/e2e/ILC/ToolAudioPlayerNew/headerSection.js +1 -1
  194. package/cypress/e2e/ILC/UploadResponse/editTabBasicSection.js +34 -0
  195. package/cypress/e2e/ILC/UploadResponse/headerSection.js +38 -1
  196. package/cypress/e2e/ILC/VideoResponseNew/editTabBasicSection.js +14 -29
  197. package/cypress/e2e/ILC/chartsDotsPlot/headerSection.js +16 -1
  198. package/cypress/e2e/Sessions/fetchResponses.js +3 -3
  199. package/cypress/e2e/Sessions/scores.js +9 -5
  200. package/cypress/e2e/applitools.config.js +3 -3
  201. package/cypress/fixtures/theme/ilc.json +14 -1
  202. package/cypress/fixtures/uploads/sample.webm +0 -0
  203. package/cypress/fixtures/uploads/sample.wmv +0 -0
  204. package/cypress/fixtures/uploads/sample20MB.mp4 +0 -0
  205. package/cypress/fixtures/uploads/sample2MB.mp4 +0 -0
  206. package/cypress/fixtures/uploads/sample2MB_2.mp4 +0 -0
  207. package/cypress/fixtures/uploads/sample30MB.mp4 +0 -0
  208. package/cypress/pages/audioPlayerPage.js +22 -22
  209. package/cypress/pages/chartsBarPage.js +20 -0
  210. package/cypress/pages/components/additionalSettingsPanel.js +3 -2
  211. package/cypress/pages/components/autoScoredScoringPreviewTab.js +7 -1
  212. package/cypress/pages/components/autoScoredScoringSectionMultiResponseType.js +2 -0
  213. package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +16 -28
  214. package/cypress/pages/components/backgroundImageUploadComponent.js +32 -25
  215. package/cypress/pages/components/browseItemsPage.js +998 -7
  216. package/cypress/pages/components/ckEditorAudioPlayerComponent.js +1 -1
  217. package/cypress/pages/components/ckEditorEquationEditorComponent.js +4 -4
  218. package/cypress/pages/components/ckEditorInsertImageComponent.js +3 -3
  219. package/cypress/pages/components/ckEditorLinkComponent.js +3 -3
  220. package/cypress/pages/components/commonComponents.js +8 -1
  221. package/cypress/pages/components/createQuestionBasePage.js +8 -1
  222. package/cypress/pages/components/defaultToolDropdown.js +7 -6
  223. package/cypress/pages/components/editCategoryFlyout.js +2 -2
  224. package/cypress/pages/components/equationEditorSectionCommonComponent.js +13 -26
  225. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +3 -3
  226. package/cypress/pages/components/fillInTheGapsTextCommonComponent.js +29 -35
  227. package/cypress/pages/components/gridQuestionCommonComponent.js +8 -37
  228. package/cypress/pages/components/imageCanvasComponent.js +7 -6
  229. package/cypress/pages/components/mcqAdditionalSettingsBase.js +4 -0
  230. package/cypress/pages/components/questionInstructionsComponent.js +7 -0
  231. package/cypress/pages/components/scoringSectionBaseEditTab.js +14 -12
  232. package/cypress/pages/desmos3DGraphingPage.js +149 -4
  233. package/cypress/pages/desmosGeometryPage.js +184 -4
  234. package/cypress/pages/dialogBoxBase.js +2 -1
  235. package/cypress/pages/drawingResponsePage.js +16 -15
  236. package/cypress/pages/fillInTheGapsOverImageDropdownPage.js +1 -1
  237. package/cypress/pages/gradingViewPage.js +8 -0
  238. package/cypress/pages/graphingPage.js +27 -8
  239. package/cypress/pages/gridFillPage.js +15 -6
  240. package/cypress/pages/index.js +2 -1
  241. package/cypress/pages/listOrderingPage.js +32 -1
  242. package/cypress/pages/matchingPage.js +26 -7
  243. package/cypress/pages/multipleSelectionPage.js +10 -39
  244. package/cypress/pages/numberLineLabelPage.js +31 -8
  245. package/cypress/pages/numberLinePage.js +19 -7
  246. package/cypress/pages/selectQuestionResourceToolPage.js +8 -2
  247. package/cypress/pages/singleSelectionPage.js +0 -37
  248. package/cypress/pages/textEntryMathPage.js +21 -0
  249. package/cypress/pages/thinkSpherePage.js +1874 -0
  250. package/cypress/pages/uploadResponsePage.js +2 -1
  251. package/cypress/pages/videoResponsePage.js +3 -0
  252. package/cypress/support/commands.js +7 -4
  253. package/cypress/support/e2e.js +1 -0
  254. package/cypress/support/helpers/createItem.js +1181 -1
  255. package/cypress/support/helpers/utilities.js +75 -1
  256. package/deploy/smoke/deploy.yaml +2 -2
  257. package/package.json +4 -4
  258. package/scripts/dataApi.mjs +3 -0
  259. package/scripts/sorry-cypress.mjs +13 -0
@@ -14,11 +14,11 @@ const selectors = {
14
14
  uploadAudioFileUploadLabel: () => cy.get('[class*="AudioPlayerstyles__AudioLabel"]').eq(0),
15
15
  uploadAudioFileNameLabel: () => cy.get('[class*="AudioPlayerstyles__AudioLabel"]').eq(1),
16
16
  deleteAudioFileButton: () => cy.get('[aria-label="Delete"]'),
17
- sourceUrlLabel: () => cy.get('[class*="AudioPlayerstyles__AudioLabel"]').eq(0),
18
- sourceUrlInputField: () => cy.get('input[aria-label="Source URL"]'),
17
+ sourceUrlLabel: () => cy.get('[class*="AudioPlayerFormstyles__TextFieldLabel"]').eq(0),
18
+ sourceUrlInputField: () => cy.get('[class*="AudioPlayerFormstyles__Text"] input[type="text"]'),
19
19
  uploadAudioChooseFileButton: () => cy.get('.choose-file-upload-button'),
20
20
  uploadAudioNoFileChosenLabel: () => cy.get('[aria-label="No file chosen"]').eq(0),
21
- uploadedFileNameLabel: () => cy.get('.selected-file').eq(0),
21
+ uploadedFileNameLabel: () => cy.get('[class*="AudioPlayerFormstyles__FileInputWrapper"] .selected-file-wrapper').eq(0),
22
22
  audioFileUploadProgressBar: () => cy.get('[class*="AudioPlayerstyles__ProgressBar-"]').eq(0),
23
23
  inputTypeFile: () => cy.get('input[type="file"]'),
24
24
  audioPlayerStyleLabel: () => cy.get('.player-style-label'),
@@ -28,7 +28,7 @@ const selectors = {
28
28
  standardStyleToggleButtonLabel: () => cy.get('[data-ngie-testid="standard-toggle-button"] .ngie-toggle-button-label'),
29
29
  barStyleToggleButtonLabel: () => cy.get('[data-ngie-testid="bar-toggle-button"] .ngie-toggle-button-label'),
30
30
  compactStyleToggleButtonLabel: () => cy.get('[data-ngie-testid="compact-toggle-button"] .ngie-toggle-button-label'),
31
- compactPlayerOptionsLabel: () => cy.get('.options-label'),
31
+ compactPlayerOptionsLabel: () => cy.get('.compact-player-wrapper .options-label'),
32
32
  defaultPlayerOptionButton: () => cy.get('[data-ngie-testid="default-toggle-button"]'),
33
33
  textPlayerOptionButton: () => cy.get('[data-ngie-testid="text-toggle-button"]'),
34
34
  imagePlayerOptionButton: () => cy.get('[data-ngie-testid="image-toggle-button"]'),
@@ -45,28 +45,28 @@ const selectors = {
45
45
  customizePlayerLayoutProgressIndicatorButton: () => cy.get('[data-ngie-testid="progressbar-toggle-button"]'),
46
46
  customizePlayerLayoutToggleButtonLabel: () => cy.get('[class*="ToggleButtonMUI5style__ButtonLabelWrapper"]'),
47
47
  uncheckAllButton: () => cy.get('[class*="AudioPlayerstyles__UncheckButton"]'),
48
- uploadTranscriptFileLabel: () => cy.get('[class*="RadioGroupMUI5styles__RadioOptionContainer"] .ngie-radio-label').eq(2),
49
- uploadTranscriptFileRadioButton: () => cy.get('.ngie-radio-btn input').eq(2),
50
- typeInTranscriptLabel: () => cy.get('[class*="RadioGroupMUI5styles__RadioOptionContainer"] .ngie-radio-label').eq(3),
51
- typeInTranscriptRadioButton: () => cy.get('.ngie-radio-btn input').eq(3),
52
- transcriptInputField: () => cy.get('[role="textbox"][title="Transcript"]'),
53
- allowStudentsToDownloadAudioLabel: () => cy.get('[data-ngie-testid="allow-students-to-download-the-audio-checkbox"] .MuiFormControlLabel-label'),
54
- allowStudentsToDownloadAudioCheckbox: () => cy.get('[data-ngie-testid="allow-students-to-download-the-audio-checkbox"] input'),
55
- limitPlayAttemptsLabel: () => cy.get('[data-ngie-testid="limit-play-attempts-checkbox"] .MuiFormControlLabel-label'),
56
- limitPlayAttemptsCheckbox: () => cy.get('[data-ngie-testid="limit-play-attempts-checkbox"] input'),
48
+ uploadTranscriptFileLabel: () => cy.get('.upload-transcript-opt-label'),
49
+ uploadTranscriptFileRadioButton: () => cy.get('.upload-transcript-opt-label input'),
50
+ typeInTranscriptLabel: () => cy.get('.type-in-transcript-opt-label'),
51
+ typeInTranscriptRadioButton: () => cy.get('[aria-label="Type in transcript"][type="radio"]'),
52
+ transcriptInputField: () => cy.get('[title="Transcript"]'),
53
+ allowStudentsToDownloadAudioLabel: () => cy.get('.allow-students-to-download-audio .MuiFormControlLabel-label').eq(0),
54
+ allowStudentsToDownloadAudioCheckbox: () => cy.get('.allow-students-to-download-audio input'),
55
+ limitPlayAttemptsLabel: () => cy.get('.allow-students-to-download-audio .MuiFormControlLabel-label').eq(1),
56
+ limitPlayAttemptsCheckbox: () => cy.get('.allow-students-to-download-audio input').eq(1),
57
57
  playAttemptsLimitLabel: () => cy.get('.playback-limit-wrapper [class*="Label"]'),
58
- playAttemptsLimitInputField: () => cy.get('.playback-limit-wrapper input'),
58
+ playAttemptsLimitInputField: () => cy.get('.freeResponseAudioFormTextInput input'),
59
59
  studentViewSettingsLabel: () => cy.get('[class*="AudioPlayerstyles__TranscriptLabelWrapper"]').eq(0),
60
60
  audioOverviewLabel: () => cy.get('.additional-settings-label'),
61
61
  audioOverviewInputField: () => cy.get('[title="Description"]'),
62
- transcriptLabel: () => cy.get('.audio-resource-label-wrapper').eq(1),
62
+ transcriptLabel: () => cy.get('.freeResponseAudioFormTextInput .transcript-label'),
63
63
  uploadTranscriptUploadLabel: () => cy.get('[class*="AudioPlayerstyles__AudioLabel"]').eq(2),
64
64
  uploadTranscriptFileNameLabel: () => cy.get('[class*="AudioPlayerstyles__AudioLabel"]').eq(3),
65
65
  uploadTranscriptChooseFileButton: () => cy.get('.upload-audio-file-input-wrapper button').eq(1),
66
66
  uploadTranscriptNoFileChosenLabel: () => cy.get('[aria-label="No file chosen"]').eq(1),
67
- transcriptInputTypeFile: () => cy.get('input[type="file"]').eq(1),
68
- uploadedTranscriptFileNameLabel: () => cy.get('.selected-file').eq(1),
69
- transcriptFileUploadProgressBar: () => cy.get('[class*="AudioPlayerstyles__ProgressBar-"]').eq(1),
67
+ transcriptInputTypeFile: () => cy.get('.upload-transcript-file input[type="file"]'),
68
+ uploadedTranscriptFileNameLabel: () => cy.get('.upload-transcript-file .selected-file-wrapper'),
69
+ transcriptFileUploadProgressBar: () => cy.get('.audio-player-form-progressbar'),
70
70
  transcriptInputFieldLabel: () => cy.get('.additional-settings-label').eq(1),
71
71
  deleteTranscriptButton: () => cy.get('[aria-label*="Delete"]'),
72
72
 
@@ -788,14 +788,14 @@ const steps = {
788
788
  audioPlayerPage.audioOverviewInputField()
789
789
  .find('[data-widget="ngie_equation"]')
790
790
  .should('have.attr', 'aria-label', constants.CKEditorInputFieldEnteredEquationAriaLabel)
791
- // .contains(constants.CKEditorInputFieldEnteredEquationText);
791
+ // .contains(constants.CKEditorInputFieldEnteredEquationText);
792
792
  },
793
793
 
794
794
  verifyEquationInAudioOverviewPreviewTab: () => {
795
795
  audioPlayerPage.audioOverviewPreviewTab()
796
796
  .find('[role="math"]')
797
797
  .should('have.attr', 'aria-label', constants.CKEditorInputFieldEnteredEquationAriaLabel)
798
- // .contains(constants.CKEditorInputFieldEnteredEquationText);
798
+ // .contains(constants.CKEditorInputFieldEnteredEquationText);
799
799
  },
800
800
 
801
801
  verifyLinkInAudioOverviewInputField: () => {
@@ -896,14 +896,14 @@ const steps = {
896
896
  audioPlayerPage.transcriptInputField()
897
897
  .find('[data-widget="ngie_equation"]')
898
898
  .should('have.attr', 'aria-label', constants.CKEditorInputFieldEnteredEquationAriaLabel)
899
- // .contains(constants.CKEditorInputFieldEnteredEquationText);
899
+ // .contains(constants.CKEditorInputFieldEnteredEquationText);
900
900
  },
901
901
 
902
902
  verifyEquationInTranscriptPreviewTab: () => {
903
903
  audioPlayerPage.transcriptContentPreviewTab()
904
904
  .find('[role="math"]')
905
905
  .should('have.attr', 'aria-label', constants.CKEditorInputFieldEnteredEquationAriaLabel)
906
- // .contains(constants.CKEditorInputFieldEnteredEquationText);
906
+ // .contains(constants.CKEditorInputFieldEnteredEquationText);
907
907
  },
908
908
 
909
909
  verifyLinkInTranscriptInputField: () => {
@@ -1306,6 +1306,26 @@ const steps = {
1306
1306
  verifyPenaltyPointsForEachIncorrectBar: (penaltyPoints) => {
1307
1307
  utilities.verifyInnerText(autoScoredScoringSectionMultiResponseType.penaltyPointsDetailsSectionAllottedPointsLabel(), `Penalty points for each incorrect bar: ${penaltyPoints}`);
1308
1308
  },
1309
+
1310
+ verifyAnswerStatusBannerNotExist: () => {
1311
+ chartsBarPage.correctIncorrectAnswerTextWrapper()
1312
+ .should('not.exist');
1313
+ },
1314
+
1315
+ verifyAnswerStatusBannerExist: () => {
1316
+ chartsBarPage.correctIncorrectAnswerTextWrapper()
1317
+ .should('be.visible');
1318
+ },
1319
+
1320
+ verifyCorrectAnswerSectionExist: () => {
1321
+ chartsBarPage.correctAnswersLabel()
1322
+ .should('be.visible');
1323
+ },
1324
+
1325
+ verifyCorrectAnswerSectionNotExist: () => {
1326
+ chartsBarPage.correctAnswersLabel()
1327
+ .should('not.exist');
1328
+ },
1309
1329
  }
1310
1330
 
1311
1331
  const tests = {
@@ -23,8 +23,8 @@ const selectors = {
23
23
  return cy.get('[aria-labelledby*="Font-Size-dropdown-label"] [role="option"]')
24
24
  }
25
25
  },
26
- fontSizeListOptionLabels: () => cy.get('[aria-labelledby="Font-Size-dropdown-label Font-Size-placeholder"] li[role="option"] .dropdown-label-text'),
27
- fontSizesLabels: () => cy.get('[aria-labelledby="Font-Size-dropdown-label Font-Size-placeholder"] li[role="option"] .dropdown-post-label-text'),
26
+ fontSizeListOptionLabels: () => cy.get('[aria-labelledby*="Font-Size-dropdown-label"] li[role="option"] .dropdown-label-text'),
27
+ fontSizesLabels: () => cy.get('[aria-labelledby*="Font-Size-dropdown-label"] li[role="option"] .dropdown-post-label-text'),
28
28
  }
29
29
 
30
30
  const steps = {
@@ -69,6 +69,7 @@ const steps = {
69
69
 
70
70
  expandFontSizeDropdown: () => {
71
71
  additionalSettingsPanel.fontSizeDropdown()
72
+ .trigger('mouseover')
72
73
  .click();
73
74
  }
74
75
  }
@@ -149,6 +149,12 @@ const steps = {
149
149
  checkManuallyScoredScoringLabel: () => {
150
150
  autoScoredScoringPreviewTab.scoringTypeLabelPreviewTab()
151
151
  .should('have.text', 'Manually scored');
152
+ },
153
+
154
+ checkNonScoredScoringLabel: () => {
155
+ //Need to update once https://weldnorthed.atlassian.net/browse/IEI-5618 is resolved
156
+ autoScoredScoringPreviewTab.scoringTypeLabelPreviewTab()
157
+ .contains('Non scored', { matchCase: false });
152
158
  }
153
159
  }
154
160
 
@@ -161,7 +167,7 @@ const tests = {
161
167
  .should('be.checked');
162
168
  autoScoredScoringPreviewTab.gradingViewRadioButton()
163
169
  .should('not.be.checked');
164
- autoScoredScoringPreviewTab.steps.verifyPreviewScore(0, 0);
170
+ autoScoredScoringPreviewTab.steps.checkManuallyScoredScoringLabel();
165
171
  autoScoredScoringPreviewTab.steps.verifyCorrectIncorrectIconsNotExist();
166
172
  });
167
173
 
@@ -76,6 +76,7 @@ const steps = {
76
76
 
77
77
  expandPenaltyScoringDropdown: () => {
78
78
  autoScoredScoringSectionMultiResponseType.penaltyScoringDropdown()
79
+ .trigger('mouseover')
79
80
  .click();
80
81
  cy.wait(500);
81
82
  utilities.verifyElementVisibilityState(autoScoredScoringSectionMultiResponseType.penaltyScoringDropdownListOptions(), 'visible');
@@ -147,6 +148,7 @@ const steps = {
147
148
 
148
149
  expandRoundingDropdown: () => {
149
150
  autoScoredScoringSectionMultiResponseType.roundingDropdown()
151
+ .trigger('mouseover')
150
152
  .click();
151
153
  },
152
154
 
@@ -326,43 +326,31 @@ const tests = {
326
326
  .verifyPseudoClassBeforeProperty('color', css.color.activeButtons);
327
327
  });
328
328
 
329
- it('If user has not selected correct answer in the correct accordion, then the Add alternative answer button should be in enabled state', () => {
330
- utilities.verifyElementNotDisabled(autoScoredSpecifyCorrectAnswerSection.alternativeAnswerButton());
331
- autoScoredSpecifyCorrectAnswerSection.steps.clickOnAddAlternativeAnswerButton();
332
- });
333
-
334
- it('CSS of warning popup', { tags: 'css' }, () => {
335
- utilities.verifyCSS(dialogBoxBase.dialogBoxTitle(), {
336
- 'color': css.color.flyoutTitle,
337
- 'font-size': css.fontSize.heading,
338
- 'font-weight': css.fontWeight.semibold
339
- });
340
- utilities.verifyCSS(dialogBoxBase.dialogBoxContent(), {
341
- 'color': css.color.labels,
342
- 'font-size': css.fontSize.default,
343
- 'font-weight': css.fontWeight.regular
344
- });
345
- utilities.verifyCSS(dialogBoxBase.buttonClose().find('svg'), {
346
- 'fill': css.color.closeIcon
347
- });
348
- });
349
-
350
- it('Accessibility of warning popup', { tags: 'a11y' }, () => {
351
- cy.checkAccessibility(dialogBoxBase.dialogBox());
352
- dialogBoxBase.steps.closeWarningPopup();
329
+ it('If user has not selected correct answer in the correct accordion, then the Add alternative answer button should be in disabled state', () => {
330
+ utilities.verifyElementDisabled(autoScoredSpecifyCorrectAnswerSection.alternativeAnswerButton());
353
331
  });
354
332
  },
355
333
 
356
334
  verifyWarningPopupAndAccordionNavigationWhenNoPointsAddedInAlternativeAccordion: () => {
357
- it('When user tries to expand correct accordion when all the mandatory fields are not filled in the alternative accordion, then a warning popup should be displayed and on closing the popup, alternative 2 accordion should be in expanded state', () => {
335
+ it('When user tries to expand correct accordion when all the mandatory fields are not filled in the alternative accordion, then correct answer accordion should be expanded and alternative 2 accordion should be in collapsed state', () => {
358
336
  autoScoredSpecifyCorrectAnswerSection.correctAnswerAccordion()
359
337
  .click();
360
- dialogBoxBase.steps.closeWarningPopup();
361
- //TODO: Need to add error message according to question types
362
- utilities.verifyElementVisibilityState(commonComponents.errorMessage(), 'exist');
338
+ autoScoredSpecifyCorrectAnswerSection.alternativeAnswerAccordion()
339
+ .eq(1)
340
+ .should('have.attr', 'aria-expanded', 'false');
341
+ autoScoredSpecifyCorrectAnswerSection.correctAnswerAccordion()
342
+ .should('have.attr', 'aria-expanded', 'true');
343
+ });
344
+
345
+ it('When user tries to expand alternative accordion when all the mandatory fields are not filled in the correct accordion, then correct answer accordion should be collapsed and alternative 2 accordion should be in expanded state', () => {
346
+ autoScoredSpecifyCorrectAnswerSection.alternativeAnswerAccordion()
347
+ .eq(1)
348
+ .click();
363
349
  autoScoredSpecifyCorrectAnswerSection.alternativeAnswerAccordion()
364
350
  .eq(1)
365
351
  .should('have.attr', 'aria-expanded', 'true');
352
+ autoScoredSpecifyCorrectAnswerSection.correctAnswerAccordion()
353
+ .should('have.attr', 'aria-expanded', 'false');
366
354
  });
367
355
  }
368
356
  }
@@ -59,29 +59,7 @@ const steps = {
59
59
  }
60
60
 
61
61
  const tests = {
62
- verifyBackgroundImageSectionContentWithCSSAndA11y: (questionType = null) => {
63
- it('\'Background image\' label should be visible', () => {
64
- if (questionType === 'graphing') {
65
- utilities.verifyInnerText(backgroundImageUploadComponent.backgroundImageLabel(), 'Background');
66
- } else {
67
- utilities.verifyInnerText(backgroundImageUploadComponent.backgroundImageLabel(), 'Background image');
68
- }
69
- });
70
-
71
- it('\'Upload\' label and \'Choose file\' button should be displayed', () => {
72
- utilities.verifyInnerText(backgroundImageUploadComponent.uploadLabel(), 'Upload');
73
- utilities.verifyElementVisibilityState(backgroundImageUploadComponent.uploadLabel(), 'visible');
74
- utilities.verifyInnerText(backgroundImageUploadComponent.chooseFileButton(), 'Choose file');
75
- utilities.verifyElementVisibilityState(backgroundImageUploadComponent.chooseFileButton(), 'visible');
76
- });
77
-
78
- it('\'File name\' label should be displayed and by default \'No file chosen\' text should be displayed below the \'File name\' label.', () => {
79
- utilities.verifyInnerText(backgroundImageUploadComponent.fileNameLabel(), 'File name');
80
- utilities.verifyElementVisibilityState(backgroundImageUploadComponent.fileNameLabel(), 'visible');
81
- utilities.verifyInnerText(backgroundImageUploadComponent.noFileChosenLabel(), 'No file chosen');
82
- utilities.verifyElementVisibilityState(backgroundImageUploadComponent.noFileChosenLabel(), 'visible');
83
- });
84
-
62
+ verifyCSSAndA11yBeforeUpload: () => {
85
63
  it('CSS of upload section', { tags: 'css' }, () => {
86
64
  utilities.verifyCSS(backgroundImageUploadComponent.uploadLabel(), {
87
65
  'color': css.color.labels,
@@ -109,12 +87,13 @@ const tests = {
109
87
  it('Accessibility of Upload section before uploading image', { tags: 'a11y' }, () => {
110
88
  cy.checkAccessibility(backgroundImageUploadComponent.uploadLabel().parents('.edit-question-edit-tab-wrapper'));
111
89
  });
90
+ },
112
91
 
92
+ verifyImageUploadFunctionality: (questionType = null) => {
113
93
  it('When the user adds the image 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 and uploaded image should be displayed', () => {
114
94
  backgroundImageUploadComponent.steps.uploadFile('highlightImage.jpg');
115
- utilities.verifyElementVisibilityState(backgroundImageUploadComponent.uploadImageProgressBar(), 'visible');
116
95
  backgroundImageUploadComponent.steps.verifyFileNameLabel('highlightImage.jpg');
117
- if (questionType !== 'graphing' && questionType !== 'grid fill' && questionType !== 'image highlight') {
96
+ if (!['graphing', 'grid fill', 'image highlight', 'thinkSphere'].includes(questionType)) {
118
97
  imageCanvasComponent.steps.verifyImageIsUploaded();
119
98
  }
120
99
  });
@@ -129,6 +108,34 @@ const tests = {
129
108
  });
130
109
  },
131
110
 
111
+ verifyBackgroundImageSectionContentWithCSSAndA11y: (questionType = null) => {
112
+ it('\'Background image\' label should be visible', () => {
113
+ if (questionType === 'graphing') {
114
+ utilities.verifyInnerText(backgroundImageUploadComponent.backgroundImageLabel(), 'Background');
115
+ } else {
116
+ utilities.verifyInnerText(backgroundImageUploadComponent.backgroundImageLabel(), 'Background image');
117
+ }
118
+ });
119
+
120
+ it('\'Upload\' label and \'Choose file\' button should be displayed', () => {
121
+ utilities.verifyInnerText(backgroundImageUploadComponent.uploadLabel(), 'Upload');
122
+ utilities.verifyElementVisibilityState(backgroundImageUploadComponent.uploadLabel(), 'visible');
123
+ utilities.verifyInnerText(backgroundImageUploadComponent.chooseFileButton(), 'Choose file');
124
+ utilities.verifyElementVisibilityState(backgroundImageUploadComponent.chooseFileButton(), 'visible');
125
+ });
126
+
127
+ it('\'File name\' label should be displayed and by default \'No file chosen\' text should be displayed below the \'File name\' label.', () => {
128
+ utilities.verifyInnerText(backgroundImageUploadComponent.fileNameLabel(), 'File name');
129
+ utilities.verifyElementVisibilityState(backgroundImageUploadComponent.fileNameLabel(), 'visible');
130
+ utilities.verifyInnerText(backgroundImageUploadComponent.noFileChosenLabel(), 'No file chosen');
131
+ utilities.verifyElementVisibilityState(backgroundImageUploadComponent.noFileChosenLabel(), 'visible');
132
+ });
133
+
134
+ tests.verifyCSSAndA11yBeforeUpload();
135
+
136
+ tests.verifyImageUploadFunctionality(questionType);
137
+ },
138
+
132
139
  verifyDeleteImagePopupContentAndFunctionality: () => {
133
140
  it('When the user hovers on \'Delete\' button, \'Delete image\' text should be displayed in tooltip', () => {
134
141
  backgroundImageUploadComponent.deleteImageIcon()