itemengine-cypress-automation 1.0.384-constructed-response-r2-8ff5be4.0 → 1.0.385-IEI-6161-IEI-6162-manualAndNonScoredScript-72a6ac7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (293) hide show
  1. package/Dockerfile +1 -0
  2. package/cypress/e2e/GradingGridView/gradingGridView.js +156 -0
  3. package/cypress/e2e/ILC/AudioResponseNew/barRecorderStyle.smoke.js +2 -0
  4. package/cypress/e2e/ILC/AudioResponseNew/compactRecorderStyle.smoke.js +4 -0
  5. package/cypress/e2e/ILC/AudioResponseNew/editTabBasicSection.js +4 -16
  6. package/cypress/e2e/ILC/BrainingCampManipulative/editTabBasicSection.js +1 -1
  7. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/allOrNothingScoringForAllViews.smoke.js +356 -0
  8. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/gradingViewAndCorrectAnswerView.smoke.js +1 -1
  9. package/cypress/e2e/ILC/ChartsBar/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +33 -0
  10. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightBasic.js +25 -25
  11. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +37 -36
  12. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +37 -36
  13. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +37 -36
  14. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +1 -0
  15. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightBasic.js +26 -25
  16. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +39 -38
  17. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +31 -30
  18. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +35 -34
  19. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePointsLocked.js +247 -0
  20. package/cypress/e2e/ILC/ChartsBar/allOrNothingScoringForAllViews.smoke.js +287 -0
  21. package/cypress/e2e/ILC/ChartsBar/editQuestion.smoke.js +1 -1
  22. package/cypress/e2e/ILC/ChartsBar/editTabBasicSection.js +37 -0
  23. package/cypress/e2e/ILC/ChartsBar/headerSection.js +50 -2
  24. package/cypress/e2e/ILC/ChartsBar/specifyCorrectAnswerSection.js +92 -0
  25. package/cypress/e2e/ILC/ChartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePointsLocked.js +220 -0
  26. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightBasic.js +25 -25
  27. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +47 -46
  28. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +25 -24
  29. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +25 -24
  30. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +1 -0
  31. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightBasic.js +25 -25
  32. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +24 -23
  33. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +21 -20
  34. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +48 -46
  35. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePointsLocked.js +249 -0
  36. package/cypress/e2e/ILC/ChartsLine/allOrNothingScoringForAllViews.smoke.js +247 -0
  37. package/cypress/e2e/ILC/ChartsLine/editQuestion.smoke.js +3 -1
  38. package/cypress/e2e/ILC/ChartsLine/headerSection.js +18 -1
  39. package/cypress/e2e/ILC/ChartsLine/specifyCorrectAnswerSection.js +94 -0
  40. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddTranscriptRadioButton .js +2 -2
  41. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerHeaderSectionAndButtons.js +2 -2
  42. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTab.js +1 -1
  43. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabSupportedFileTypes.js +6 -0
  44. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabTranscript.js +2 -3
  45. package/cypress/e2e/ILC/CkEditorInsertImage/imageInfo.js +3 -3
  46. package/cypress/e2e/ILC/CkEditorInsertTable/tableDimension&FooterProperties.js +3 -3
  47. package/cypress/e2e/ILC/CkEditorInsertTable/tableStyle.js +11 -11
  48. package/cypress/e2e/ILC/CkEditorLink/uploadSection.js +1 -1
  49. package/cypress/e2e/ILC/ContentBlocks/editTabBasics.js +63 -4
  50. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/allOrNothingBasicForAllViews.smoke.js +116 -7
  51. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/editTabBasicSection.js +1 -1
  52. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/editTabScoring.js +1 -0
  53. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/headerSection.js +3 -3
  54. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/pagination.js +1 -1
  55. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/studentViewSettingsForGroupedLayout.js +3 -0
  56. package/cypress/e2e/ILC/DrawingResponse/drawingResponseBackground.js +2 -7
  57. package/cypress/e2e/ILC/EssayResponse/editTabBasicSections.js +23 -37
  58. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/allOrNothingForAllViews.smoke.js +210 -0
  59. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/draggableOptions.js +2 -0
  60. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/editTabBasicSection.js +1 -1
  61. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/headerSection.js +3 -3
  62. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/previewContentsForAllViewInIncompleteAuthoring.smoke.js +7 -7
  63. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/previewContentsForAllViews.smoke.js +11 -11
  64. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editQuestion.smoke.js +40 -0
  65. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editTabBasicSection.js +1 -1
  66. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/headerSection.js +3 -3
  67. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/allOrNothingForAllViews.smoke.js +216 -0
  68. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/headerSection.js +3 -3
  69. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editQuestion.smoke.js +45 -0
  70. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editTabBasicSection.js +1 -1
  71. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/headerSection.js +4 -4
  72. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/HeaderSection.js +4 -4
  73. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/editQuestion.smoke.js +1 -1
  74. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/responseAnswersAndAcceptedStudentInput.js +4 -0
  75. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/supportedFileTypes.js +3 -1
  76. package/cypress/e2e/ILC/FillInTheGapsTextNew/editTabBasicSection.js +1 -1
  77. package/cypress/e2e/ILC/FillInTheGapsTextNew/headerSection.js +3 -3
  78. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +73 -0
  79. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +38 -0
  80. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +38 -0
  81. package/cypress/e2e/ILC/Graphing/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +87 -0
  82. package/cypress/e2e/ILC/Graphing/allOrNothingForAllViews.smoke.js +213 -2
  83. package/cypress/e2e/ILC/Graphing/checkAddAlternativeButton.js +35 -0
  84. package/cypress/e2e/ILC/Graphing/editQuestion.smoke.js +28 -0
  85. package/cypress/e2e/ILC/Graphing/editTabBasicSection.js +38 -0
  86. package/cypress/e2e/ILC/Graphing/editTabScoringSection.js +1 -0
  87. package/cypress/e2e/ILC/Graphing/headerSection.js +36 -4
  88. package/cypress/e2e/ILC/Graphing/layoutAndGridOptions.js +6 -3
  89. package/cypress/e2e/ILC/GridFill/addAlternateButton.js +40 -0
  90. package/cypress/e2e/ILC/GridFill/allOrNothingBasicForAllViews.smoke.js +210 -0
  91. package/cypress/e2e/ILC/GridFill/customizeLayoutFillImageBackgroundImage.js +2 -2
  92. package/cypress/e2e/ILC/GridFill/headerSection.js +4 -4
  93. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +39 -0
  94. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  95. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +39 -0
  96. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountAllOrNothingCorrectPointsGreaterThanAlternativePoints.js +37 -0
  97. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountallOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  98. package/cypress/e2e/ILC/GridFill/scoring/cellshadeCountAllOrNothingAlternativePointsGreaterThanCorrectPoints.js +36 -0
  99. package/cypress/e2e/ILC/GridFill/scoring/checkLabelSaveAsYouGo.js +75 -0
  100. package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +2 -1
  101. package/cypress/e2e/ILC/ImageHighlight/additionalSettingsBasic.js +1 -0
  102. package/cypress/e2e/ILC/ImageHighlight/allOrNothingForAllViews.smoke.js +212 -0
  103. package/cypress/e2e/ILC/ImageHighlight/customiseHighlightStyle.js +29 -0
  104. package/cypress/e2e/ILC/ImageHighlight/editTabBasicSection.js +1 -1
  105. package/cypress/e2e/ILC/ImageHighlight/headerSection.js +3 -3
  106. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +24 -0
  107. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +24 -0
  108. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +24 -0
  109. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +86 -0
  110. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/manuallyAndNonScored.js +2 -4
  111. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsBasic.js +1 -1
  112. package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +237 -1
  113. package/cypress/e2e/ILC/ListOrderingDropdown/checkAddAlternativeButton.js +35 -0
  114. package/cypress/e2e/ILC/ListOrderingDropdown/editTabBasicSection.js +24 -0
  115. package/cypress/e2e/ILC/ListOrderingDropdown/headerSection.js +108 -0
  116. package/cypress/e2e/ILC/ListOrderingDropdown/manuallyAndNonScoredEditTab.js +2 -1
  117. package/cypress/e2e/ILC/ListOrderingDropdown/previewContentsForAllViews.smoke.js +2 -4
  118. package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +7 -12
  119. package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js +10 -14
  120. package/cypress/e2e/ILC/ListOrderingNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +52 -0
  121. package/cypress/e2e/ILC/ListOrderingNew/allOrNothingForAllViews.smoke.js +215 -0
  122. package/cypress/e2e/ILC/ListOrderingNew/editTabBasicSection.js +23 -0
  123. package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +36 -9
  124. package/cypress/e2e/ILC/ListOrderingNew/manuallyAndNonScoredEditTab.js +2 -0
  125. package/cypress/e2e/ILC/ListOrderingNew/specifyCorrectAnswerSection.js +7 -23
  126. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +41 -0
  127. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +30 -0
  128. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +50 -0
  129. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +101 -0
  130. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/allOrNothingForAllViews.smoke.js +309 -0
  131. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/checkAddAlternativeButton.js +38 -0
  132. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabBasicSection.js +24 -0
  133. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabScoring.js +4 -1
  134. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/headerSection.js +38 -3
  135. package/cypress/e2e/ILC/Matching/Scoring/blankResponseScoring.js +38 -41
  136. package/cypress/e2e/ILC/Matching/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +98 -0
  137. package/cypress/e2e/ILC/Matching/allOrNothingScoringForAllViews.smoke.js +210 -0
  138. package/cypress/e2e/ILC/Matching/checkAlternativeButton.js +38 -0
  139. package/cypress/e2e/ILC/Matching/clickAndDrop.js +5 -5
  140. package/cypress/e2e/ILC/Matching/draggableOptions.js +7 -0
  141. package/cypress/e2e/ILC/Matching/editQuestion.smoke.js +3 -2
  142. package/cypress/e2e/ILC/Matching/editTabBasicSection.js +41 -0
  143. package/cypress/e2e/ILC/Matching/headerSection.js +38 -12
  144. package/cypress/e2e/ILC/Matching/questionInstructionsAndPromptSection.js +2 -15
  145. package/cypress/e2e/ILC/Matching/studentViewSettings.js +2 -0
  146. package/cypress/e2e/ILC/Matching/studentViewSettingsForGroupedLayout.js +1 -1
  147. package/cypress/e2e/ILC/MatchingDropdown/Scoring/blankResponseScoring.js +6 -6
  148. package/cypress/e2e/ILC/MatchingDropdown/allOrNothingScoringForAllViews.smoke.js +208 -0
  149. package/cypress/e2e/ILC/MultipleSelection/allOrNothingBasicForAllViews.smoke.js +2 -1
  150. package/cypress/e2e/ILC/MultipleSelection/editTabBasicSection.js +1 -1
  151. package/cypress/e2e/ILC/MultipleSelection/headerSection.js +3 -3
  152. package/cypress/e2e/ILC/MultipleSelectionGridNew/Scoring/checkScoringLabelBannerAndCorrectAnswer.js +1 -0
  153. package/cypress/e2e/ILC/MultipleSelectionGridNew/editTabBasicSection.js +2 -2
  154. package/cypress/e2e/ILC/MultipleSelectionGridNew/headerSection.js +3 -3
  155. package/cypress/e2e/ILC/MultipleSelectionGridNew/previewContentsForAllViews.smoke.js +100 -69
  156. package/cypress/e2e/ILC/MultipleSelectionGridNew/styleAndLayoutCustomizationLayoutProperties.js +1 -0
  157. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +79 -0
  158. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +42 -0
  159. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +42 -0
  160. package/cypress/e2e/ILC/NumberLine/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +75 -0
  161. package/cypress/e2e/ILC/NumberLine/checkAddAlternativeButton.js +32 -0
  162. package/cypress/e2e/ILC/NumberLine/editTabSection.js +38 -0
  163. package/cypress/e2e/ILC/NumberLine/headerSection.js +33 -4
  164. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +81 -0
  165. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +43 -0
  166. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +43 -0
  167. package/cypress/e2e/ILC/NumberLineLabel/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +76 -0
  168. package/cypress/e2e/ILC/NumberLineLabel/additionalSettingsBasic.js +1 -1
  169. package/cypress/e2e/ILC/NumberLineLabel/checkAddAlternativeButton.js +34 -0
  170. package/cypress/e2e/ILC/NumberLineLabel/editTabSection.js +38 -0
  171. package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +37 -5
  172. package/cypress/e2e/ILC/NumberLineLabel/manuallyAndNonScoredEditTab.js +2 -1
  173. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/editQuestion.smoke.js +1 -1
  174. package/cypress/e2e/ILC/ShortTextResponseNew/allOrNothingBasicForAllViews.smoke.js +186 -0
  175. package/cypress/e2e/ILC/ShortTextResponseNew/editTabBasicSections.js +33 -49
  176. package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +2 -4
  177. package/cypress/e2e/ILC/SingleSelection/editTabBasicSection.js +1 -1
  178. package/cypress/e2e/ILC/SingleSelection/headerSection.js +2 -2
  179. package/cypress/e2e/ILC/SingleSelectionGridNew/editTabBasicSection.js +2 -2
  180. package/cypress/e2e/ILC/SingleSelectionGridNew/headerSection.js +3 -3
  181. package/cypress/e2e/ILC/SingleSelectionGridNew/previewContentsForAllViews.smoke.js +101 -70
  182. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +86 -0
  183. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +86 -0
  184. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  185. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +3 -1
  186. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  187. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  188. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsScoringBasic.js +10 -3
  189. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +4 -2
  190. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +5 -3
  191. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  192. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsScoringBasic.js +4 -0
  193. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +64 -0
  194. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAddEvaluation.js +2 -0
  195. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAlternateAnswer.js +2 -0
  196. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +64 -0
  197. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  198. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  199. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  200. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  201. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsScoringBasic.js +8 -0
  202. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  203. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  204. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  205. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasic.js +1 -0
  206. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasicForAlternateAnswer.js +2 -0
  207. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +2 -0
  208. package/cypress/e2e/ILC/TextEntryMath/editTabBasicSection.js +27 -3
  209. package/cypress/e2e/ILC/TextEntryMath/headerSection.js +43 -0
  210. package/cypress/e2e/ILC/TextSelection/additionalSettings.js +1 -0
  211. package/cypress/e2e/ILC/TextSelection/allOrNothingScoringForAllViews.smoke.js +231 -0
  212. package/cypress/e2e/ILC/TextSelection/editTabBasicSection.js +2 -2
  213. package/cypress/e2e/ILC/TextSelection/headerSection.js +3 -3
  214. package/cypress/e2e/ILC/TextSelection/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -0
  215. package/cypress/e2e/ILC/ThinkSphere/createReviewItem.js +1 -1
  216. package/cypress/e2e/ILC/ThinkSphere/editTabBasicSection.js +1 -1
  217. package/cypress/e2e/ILC/ThinkSphere/editThinkSphereQuestion.smoke.js +145 -54
  218. package/cypress/e2e/ILC/ThinkSphere/equationEditorEditCategoryFlyOut.js +2 -0
  219. package/cypress/e2e/ILC/ThinkSphere/planPhase.js +45 -5
  220. package/cypress/e2e/ILC/ThinkSphere/previewTabPlanSection.js +8 -8
  221. package/cypress/e2e/ILC/ThinkSphere/previewTabReviewSection.js +97 -0
  222. package/cypress/e2e/ILC/ThinkSphere/previewTabSolveSection.js +36 -0
  223. package/cypress/e2e/ILC/ThinkSphere/solvePhase.js +3 -3
  224. package/cypress/e2e/ILC/ThinkSphere/studentViewPlanTabSection.js +393 -0
  225. package/cypress/e2e/ILC/ThinkSphere/studentViewReviewTabSection.js +141 -0
  226. package/cypress/e2e/ILC/ToolAudioPlayerNew/headerSection.js +90 -2
  227. package/cypress/e2e/ILC/UploadResponse/editTabBasicSection.js +34 -0
  228. package/cypress/e2e/ILC/UploadResponse/headerSection.js +38 -1
  229. package/cypress/e2e/ILC/UploadResponse/uploadResponsePreview.js +50 -13
  230. package/cypress/e2e/ILC/VideoResponseNew/editTabBasicSection.js +14 -29
  231. package/cypress/e2e/ILC/chartsDotsPlot/allOrNothingForAllViews.smoke.js +248 -0
  232. package/cypress/e2e/ILC/chartsDotsPlot/headerSection.js +16 -1
  233. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsBasic.js +27 -28
  234. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithAlternativePointsGreaterThanCorrectPoints.js +31 -30
  235. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +24 -24
  236. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithCorrectPointsGreaterThanAlternativePoints.js +39 -37
  237. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsBasic.js +22 -23
  238. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +31 -30
  239. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +25 -24
  240. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +31 -31
  241. package/cypress/e2e/ILC/chartsDotsPlot/scoring/toleranceThresholdScoring.js +18 -19
  242. package/cypress/e2e/ILC/chartsDotsPlot/specifyCorrectAnswerSection.js +96 -0
  243. package/cypress/e2e/Sessions/fetchResponses.js +3 -3
  244. package/cypress/e2e/Sessions/saveResponseScores.js +2 -2
  245. package/cypress/fixtures/thinkSphereWhiteboardTools.js +66 -0
  246. package/cypress/pages/audioPlayerPage.js +25 -0
  247. package/cypress/pages/brainingCampManipulativePage.js +1 -1
  248. package/cypress/pages/chartsBarPage.js +45 -0
  249. package/cypress/pages/chartsDotPlotPage.js +25 -0
  250. package/cypress/pages/chartsLinePage.js +28 -3
  251. package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +5 -1
  252. package/cypress/pages/components/chartsCommonComponent.js +21 -2
  253. package/cypress/pages/components/ckEditorEquationEditorComponent.js +1 -0
  254. package/cypress/pages/components/ckEditorInsertImageComponent.js +3 -3
  255. package/cypress/pages/components/ckEditorInsertTableComponent.js +3 -3
  256. package/cypress/pages/components/ckEditorLinkComponent.js +8 -9
  257. package/cypress/pages/components/colorPopupComponent.js +6 -0
  258. package/cypress/pages/components/createQuestionBasePage.js +19 -6
  259. package/cypress/pages/components/desmosToolComponent.js +1 -1
  260. package/cypress/pages/components/draggableOptionsSectionComponent.js +2 -0
  261. package/cypress/pages/components/equationEditorSectionCommonComponent.js +10 -25
  262. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +31 -3
  263. package/cypress/pages/components/gridQuestionCommonComponent.js +55 -2
  264. package/cypress/pages/components/imageCanvasComponent.js +11 -5
  265. package/cypress/pages/components/questionInstructionsComponent.js +2 -0
  266. package/cypress/pages/components/scoringSectionBaseEditTab.js +3 -0
  267. package/cypress/pages/components/specifyRowsAndColumnsComponent.js +16 -0
  268. package/cypress/pages/contentBlocksPage.js +2 -0
  269. package/cypress/pages/desmos3DGraphingPage.js +149 -4
  270. package/cypress/pages/desmosGeometryPage.js +184 -4
  271. package/cypress/pages/drawingResponsePage.js +9 -2
  272. package/cypress/pages/fillInTheGapsDragAndDropPage.js +3 -8
  273. package/cypress/pages/gradingGridViewPage.js +64 -0
  274. package/cypress/pages/graphingPage.js +27 -8
  275. package/cypress/pages/gridFillPage.js +27 -9
  276. package/cypress/pages/imageHighlightPage.js +115 -15
  277. package/cypress/pages/index.js +1 -0
  278. package/cypress/pages/listOrderingPage.js +40 -1
  279. package/cypress/pages/matchingPage.js +29 -10
  280. package/cypress/pages/numberLineLabelPage.js +31 -8
  281. package/cypress/pages/numberLinePage.js +19 -7
  282. package/cypress/pages/singleSelectionPage.js +30 -1
  283. package/cypress/pages/textEntryMathPage.js +24 -1
  284. package/cypress/pages/textSelectionPage.js +2 -2
  285. package/cypress/pages/thinkSpherePage.js +928 -87
  286. package/cypress/pages/uploadResponsePage.js +17 -1
  287. package/cypress/pages/videoResponsePage.js +3 -0
  288. package/cypress/support/commands.js +9 -0
  289. package/cypress/support/helpers/createItem.js +22 -3
  290. package/cypress/support/helpers/utilities.js +14 -1
  291. package/package.json +1 -1
  292. /package/cypress/e2e/ILC/{ChartsDotsPlot → chartsDotsPlot}/checkAnswerFunctionalityForAllViews.js +0 -0
  293. /package/cypress/e2e/ILC/{ChartsDotsPlot → chartsDotsPlot}/editQuestion.smoke.js +0 -0
package/Dockerfile CHANGED
@@ -27,6 +27,7 @@ RUN chmod +x ./deploy/fillInTheGapsQuestion/run.sh
27
27
  RUN chmod +x ./deploy/resourcesAndToolsQuestion/run.sh
28
28
  RUN chmod +x ./deploy/audioResponseQuestion/run.sh
29
29
  RUN chmod +x ./deploy/dataApi/run.sh
30
+ RUN chmod +x ./deploy/feedbackScaleQuestion/run.sh
30
31
 
31
32
  RUN npm ci
32
33
 
@@ -0,0 +1,156 @@
1
+
2
+ import { singleSelectionPage, createItemPage, studentViewPage, gradingGridViewPage } from "../../pages";
3
+ import utilities from '../../support/helpers/utilities';
4
+ import { browseItemsPage } from "../../pages/components";
5
+
6
+ describe('Test grading view with multiple session and student Ids', { tags: 'smoke' }, () => {
7
+ const studentIds = [];
8
+ const sessionIds = [];
9
+ let itemId = '';
10
+ const responseIds = [];
11
+ const updateStudentsAndItemData = () => {
12
+ const interval = setInterval(() => {
13
+ const itemActivityMap = JSON.parse(window.localStorage.getItem(`ngie_itemActivityMap`) || '[]');
14
+ if (itemActivityMap.length > 0) {
15
+ itemActivityMap.forEach(({
16
+ sessionId, userId
17
+ }) => {
18
+ studentIds.push(userId);
19
+ sessionIds.push(sessionId);
20
+ });
21
+ clearInterval(interval);
22
+ }
23
+ }, 100);
24
+ }
25
+ const updateResponseIds = (response) => {
26
+ const {
27
+ body: {
28
+ data: {
29
+ gradingMultipleSession: {
30
+ sessionData = [],
31
+ } = {},
32
+ } = {},
33
+ } = {},
34
+ } = response;
35
+ sessionData.forEach(({items}) => {
36
+ items.forEach(({questions}) => {
37
+ questions.forEach((question) => {
38
+ responseIds.push(question.responseId);
39
+ });
40
+ });
41
+ })
42
+ }
43
+ before(() => {
44
+ cy.loginAs('admin');
45
+ cy.setGraphqlWait();
46
+ singleSelectionPage.steps.navigateToCreateQuestion('single selection');
47
+ singleSelectionPage.steps.createBasicSingleSelectionQuestion({
48
+ questionInstruction: "Question 1",
49
+ options: ["Option 1", "Option 2", "Option 3", "Option 4"],
50
+ correctAnswer: 2,
51
+ points: 10,
52
+ });
53
+ singleSelectionPage.steps.clickOnAddQuestion();
54
+ singleSelectionPage.steps.selectQuestionType('single selection');
55
+ singleSelectionPage.steps.createBasicSingleSelectionQuestion({
56
+ questionInstruction: "Question 2",
57
+ options: ["Option 5", "Option 6", "Option 7", "Option 8"],
58
+ correctAnswer: 3,
59
+ points: 10,
60
+ });
61
+ createItemPage.referenceId()
62
+ .invoke('text')
63
+ .then(text => {
64
+ itemId = text;
65
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemId)}`);
66
+ });
67
+ cy.then(() => {
68
+ updateStudentsAndItemData();
69
+ });
70
+ cy.pageLoadWait();
71
+
72
+ cy.then(() => {
73
+ singleSelectionPage.optionsWrapperStudentView()
74
+ .eq(2)
75
+ .click();
76
+ singleSelectionPage.optionsWrapperStudentView()
77
+ .eq(4)
78
+ .click();
79
+ studentViewPage.steps.submitResponse();
80
+ })
81
+
82
+ cy.logout();
83
+ cy.loginAs('admin').then(() => {
84
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemId)}`)
85
+ cy.then(() => {
86
+ updateStudentsAndItemData();
87
+ });
88
+ cy.pageLoadWait();
89
+ cy.then(() => {
90
+ singleSelectionPage.optionsWrapperStudentView()
91
+ .eq(3)
92
+ .click();
93
+ singleSelectionPage.optionsWrapperStudentView()
94
+ .eq(7)
95
+ .click();
96
+ studentViewPage.steps.submitResponse();
97
+ })
98
+ });
99
+
100
+ cy.visit('/item-engine/multiple-session/grading-view');
101
+
102
+ });
103
+ describe('Launch grading grid view for each session', { tags: 'smoke' }, () => {
104
+ it('Should launch with correct Item and responses', () => {
105
+ gradingGridViewPage.steps.addSessionDataAndLaunchGrading({studentIds, sessionIds});
106
+
107
+ cy.interceptGraphql("gradingMultipleSession");
108
+
109
+ // waiting for signed request to be completed
110
+ cy.pageLoadWait()
111
+ // waiting for grading multiple session data to be loaded
112
+ cy.wait('@gradingMultipleSession').then(({response}) => {
113
+ updateResponseIds(response);
114
+ });
115
+
116
+ gradingGridViewPage.steps.verifySessionData(
117
+ sessionIds[0],
118
+ itemId,
119
+ 0,
120
+ 'Question 1',
121
+ 'Your answer iscorrect'
122
+ );
123
+ gradingGridViewPage.steps.verifySessionData(
124
+ sessionIds[0],
125
+ itemId,
126
+ 1,
127
+ 'Question 2',
128
+ 'Your answer isincorrect'
129
+ );
130
+ gradingGridViewPage.steps.verifySessionData(
131
+ sessionIds[1],
132
+ itemId,
133
+ 0,
134
+ 'Question 1',
135
+ 'Your answer isincorrect'
136
+ )
137
+ gradingGridViewPage.steps.verifySessionData(
138
+ sessionIds[1],
139
+ itemId,
140
+ 1,
141
+ 'Question 2',
142
+ 'Your answer iscorrect'
143
+ );
144
+ });
145
+ it('Should launch single question for the responseId', () => {
146
+ gradingGridViewPage.steps.addSessionDataAndLaunchGrading({
147
+ studentIds: [studentIds[0]],
148
+ sessionIds: [sessionIds[0]],
149
+ responseIds: [responseIds[0]],
150
+ });
151
+
152
+ gradingGridViewPage.getGradingViewforResponseId(responseIds[0])
153
+ .should('be.visible');
154
+ })
155
+ })
156
+ })
@@ -416,7 +416,9 @@ describe('Preview of Audio response for bar audio recorder style', () => {
416
416
  audioResponsePage.steps.navigateToCreateQuestion('audio response');
417
417
  cy.barsPreLoaderWait();
418
418
  audioResponsePage.steps.selectAudioRecorderStyle('Bar');
419
+ audioResponsePage.steps.addTextInQuestionInstructionsInputField('Verify volume control functionality');
419
420
  audioResponsePage.steps.switchToPreviewTab();
421
+ audioResponsePage.steps.verifyQuestionInstructionsTextPreviewTab('Verify volume control functionality');
420
422
  audioResponsePage.steps.recordAndSaveAudioBarPreview(10000);
421
423
  });
422
424
 
@@ -409,7 +409,9 @@ describe('Preview of Audio response for compact audio recorder style', () => {
409
409
  audioResponsePage.steps.navigateToCreateQuestion('audio response');
410
410
  cy.barsPreLoaderWait();
411
411
  audioResponsePage.steps.selectAudioRecorderStyle('Compact');
412
+ audioResponsePage.steps.addTextInQuestionInstructionsInputField('This is a test question for verifying volume control functionality');
412
413
  audioResponsePage.steps.switchToPreviewTab();
414
+ audioResponsePage.steps.verifyQuestionInstructionsTextPreviewTab('This is a test question for verifying volume control functionality');
413
415
  audioResponsePage.steps.recordAndSaveAudioCompactPreview(10000);
414
416
  });
415
417
 
@@ -423,7 +425,9 @@ describe('Preview of Audio response for compact audio recorder style', () => {
423
425
  audioResponsePage.steps.navigateToCreateQuestion('audio response');
424
426
  cy.barsPreLoaderWait();
425
427
  audioResponsePage.steps.selectAudioRecorderStyle('Compact');
428
+ audioResponsePage.steps.addTextInQuestionInstructionsInputField('This is a test question for verifying volume control functionality');
426
429
  audioResponsePage.steps.switchToPreviewTab();
430
+ audioResponsePage.steps.verifyQuestionInstructionsTextPreviewTab('This is a test question for verifying volume control functionality');
427
431
  audioResponsePage.steps.recordAndSaveAudioCompactPreview(10000);
428
432
  });
429
433
 
@@ -183,26 +183,14 @@ describe('Create Item page - Audio response: Question instructions, Audio record
183
183
 
184
184
  //Note: a11y is covered for Stop recording if silence is detected after section in HeaderSection file using verifyCreateItemWrapperContentsA11y
185
185
 
186
- it('When the user has set \'Stop recording if silence is detected after\' value to \'0\' (zero) then a validation text \'Error: Value must be greater than 0 secs.\' should be displayed', () => {
186
+ it('When the user has set \'Stop recording if silence is detected after\' value to \'0\' (zero) then a validation text \'Error: Value must be greater than 0 secs.\' should not be displayed', () => {
187
187
  audioResponsePage.steps.setStopRecordingIfSilenceIsDetectedAfter('0');
188
- utilities.verifyInnerText(audioResponsePage.errorMessage(), 'Error: Value must be greater than 0 secs.');
188
+ utilities.verifyElementVisibilityState(audioResponsePage.errorMessage(), 'notExist');
189
189
  });
190
190
 
191
- it('When the user has set \'Stop recording if silence is detected after\' value to \'0\' (zero) then a validation text \'Error: Value must be greater than 0 secs.\' should be displayed', () => {
191
+ it('When the user has set \'Stop recording if silence is detected after\' value to \'0\' (zero) then a validation text \'Error: Value must be greater than 0 secs.\' should not be displayed', () => {
192
192
  audioResponsePage.steps.setStopRecordingIfSilenceIsDetectedAfter('0');
193
- utilities.verifyInnerText(audioResponsePage.errorMessage(), 'Error: Value must be greater than 0 secs.');
194
- });
195
-
196
- it('CSS of error message \'Error: Value must be greater than 0 secs.\'', { tags: 'css' }, () => {
197
- utilities.verifyCSS(audioResponsePage.errorMessage(), {
198
- 'color': css.color.errorText,
199
- 'font-size': css.fontSize.small,
200
- 'font-weight': css.fontWeight.regular
201
- });
202
- });
203
-
204
- it('Accessibility of \'Error: Value must be greater than 0 secs.\' is displayed', { tags: 'a11y' }, () => {
205
- cy.checkAccessibility(audioResponsePage.errorMessage());
193
+ utilities.verifyElementVisibilityState(audioResponsePage.errorMessage(), 'notExist');
206
194
  });
207
195
 
208
196
  it('When the user updates the \'Stop recording if silence is detected after\' value the validation text should disappear. User should be able to add only numeric values and should not able to add decimal points', () => {
@@ -91,7 +91,7 @@ describe('Create item : Brainingcamp manipulative - Edit tab basics', () => {
91
91
 
92
92
  it('When user focuses in and out of \'Enter a share code\' input field, then error message \'Error: Please enter share code.\' should not be displayed', () => {
93
93
  brainingCampManipulativePage.steps.focusInAndFocusOutOfEnterAShareCodeInputField();
94
- utilities.verifyInnerText(brainingCampManipulativePage.errorMessage(), 'Error: Please enter share code.');
94
+ utilities.verifyElementVisibilityState(brainingCampManipulativePage.errorMessage(), 'notExist')
95
95
  });
96
96
 
97
97
  brainingCampManipulativePage.tests.verifyErrorMessageCSSAndA11y();
@@ -318,6 +318,362 @@ describe('Create item page - Charts - Bar horizontal orientation: All or nothing
318
318
  });
319
319
  });
320
320
 
321
+ views.forEach((view) => {
322
+ describe(`${view}: Charts - Bar Horizontal: Manually scored`, { tags: 'smoke' }, () => {
323
+ abortEarlySetup();
324
+ before(() => {
325
+ switch (view) {
326
+ case 'Question preview':
327
+ chartsBarPage.steps.navigateToCreateQuestion('charts');
328
+ cy.barsPreLoaderWait();
329
+ chartsBarPage.steps.selectHorizontalDirectionRadioButton();
330
+ chartsBarPage.steps.addTextInQuestionInstructionsInputField('Set the bar on the chart for the profits of the years');
331
+ chartsBarPage.steps.addBarOrPointInChartInSelectChartTypeSection();
332
+ chartsBarPage.steps.addBarOrPointInChartInSelectChartTypeSection();
333
+ chartsBarPage.steps.setBarValueInSelectChartTypeSection({ barIndex: 0, value: 3, range: 10 }, 'horizontal');
334
+ chartsBarPage.steps.setBarValueInSelectChartTypeSection({ barIndex: 1, value: 2, range: 10 }, 'horizontal');
335
+ chartsBarPage.steps.setBarValueInSelectChartTypeSection({ barIndex: 3, value: 3, range: 10 }, 'horizontal');
336
+ chartsBarPage.steps.lockBar(1);
337
+ chartsBarPage.steps.expandScoringTypeDropdown();
338
+ chartsBarPage.steps.selectOptionFromScoringTypeDropdown('Manually scored');
339
+ chartsBarPage.steps.allotPointsForManualScoring(20);
340
+ chartsBarPage.steps.switchToPreviewTab();
341
+ break;
342
+ case 'Item preview':
343
+ cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
344
+ itemPreviewPage.steps.switchToPreviewTab();
345
+ break;
346
+ case 'Grading view':
347
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
348
+ break;
349
+ }
350
+ });
351
+
352
+ beforeEach(() => {
353
+ switch (view) {
354
+ case 'Question preview':
355
+ chartsBarPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
356
+ chartsBarPage.steps.resetQuestionPreview();
357
+ break;
358
+ case 'Item preview':
359
+ itemPreviewPage.steps.switchToStudentView();
360
+ itemPreviewPage.steps.resetQuestionPreview();
361
+ break;
362
+ case 'Grading view':
363
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
364
+ break;
365
+ }
366
+ });
367
+
368
+ if (view === 'Question preview') {
369
+ after(() => {
370
+ chartsBarPage.steps.clickOnSaveQuestionButton();
371
+ utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
372
+ itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
373
+ });
374
+ }
375
+
376
+ it('Question instructions should be visible', () => {
377
+ chartsBarPage.steps.verifyQuestionInstructionsTextPreviewTab('Set the bar on the chart for the profits of the years');
378
+ chartsBarPage.steps.verifyVisibityOfQuestionInstructionsText();
379
+ });
380
+
381
+ it('User should be able to attempt the question in student view, and correct/incorrect icons, "Your answer is correct/incorrect" label, and correct answer section should not be displayed in grading view', () => {
382
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 0, value: 3, range: 10 }, 'horizontal');
383
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 2, value: 6, range: 10 }, 'horizontal');
384
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 3, value: 5, range: 10 }, 'horizontal');
385
+ if (view === 'Grading view') {
386
+ studentViewPage.steps.submitResponse();
387
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
388
+ studentViewPage.steps.clickOnGoToGradingViewButton();
389
+ gradingViewPage.steps.verifyGradingViewScore('', 20);
390
+ }
391
+ if (view === 'Question preview' || view === 'Item preview') {
392
+ chartsBarPage.steps.checkManuallyScoredScoringLabel();
393
+ }
394
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(0);
395
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(2);
396
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(3);
397
+ chartsBarPage.steps.verifyCorrectAnswerSectionNotExist();
398
+ });
399
+ });
400
+ });
401
+
402
+ views.forEach((view) => {
403
+ describe(`${view}: Charts - Bar Horizontal: Non scored`, { tags: 'smoke' }, () => {
404
+ abortEarlySetup();
405
+ before(() => {
406
+ switch (view) {
407
+ case 'Question preview':
408
+ chartsBarPage.steps.navigateToCreateQuestion('charts');
409
+ cy.barsPreLoaderWait();
410
+ chartsBarPage.steps.selectHorizontalDirectionRadioButton();
411
+ chartsBarPage.steps.addTextInQuestionInstructionsInputField('Set the bar on the chart for the profits of the years');
412
+ chartsBarPage.steps.addBarOrPointInChartInSelectChartTypeSection();
413
+ chartsBarPage.steps.addBarOrPointInChartInSelectChartTypeSection();
414
+ chartsBarPage.steps.setBarValueInSelectChartTypeSection({ barIndex: 0, value: 3, range: 10 }, 'horizontal');
415
+ chartsBarPage.steps.setBarValueInSelectChartTypeSection({ barIndex: 1, value: 2, range: 10 }, 'horizontal');
416
+ chartsBarPage.steps.setBarValueInSelectChartTypeSection({ barIndex: 3, value: 3, range: 10 }, 'horizontal');
417
+ chartsBarPage.steps.lockBar(1);
418
+ chartsBarPage.steps.expandScoringTypeDropdown();
419
+ chartsBarPage.steps.selectOptionFromScoringTypeDropdown('Non scored');
420
+ chartsBarPage.steps.setBarValueInSpecifyCorrectAnswerSection({ barIndex: 0, value: 3, range: 10 }, 'horizontal');
421
+ chartsBarPage.steps.setBarValueInSpecifyCorrectAnswerSection({ barIndex: 2, value: 6, range: 10 }, 'horizontal');
422
+ chartsBarPage.steps.setBarValueInSpecifyCorrectAnswerSection({ barIndex: 3, value: 5, range: 10 }, 'horizontal');
423
+ chartsBarPage.steps.switchToPreviewTab();
424
+ break;
425
+ case 'Item preview':
426
+ cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
427
+ itemPreviewPage.steps.switchToPreviewTab();
428
+ break;
429
+ case 'Grading view':
430
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
431
+ break;
432
+ }
433
+ });
434
+
435
+ beforeEach(() => {
436
+ switch (view) {
437
+ case 'Question preview':
438
+ chartsBarPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
439
+ chartsBarPage.steps.resetQuestionPreview();
440
+ break;
441
+ case 'Item preview':
442
+ itemPreviewPage.steps.switchToStudentView();
443
+ itemPreviewPage.steps.resetQuestionPreview();
444
+ break;
445
+ case 'Grading view':
446
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
447
+ break;
448
+ }
449
+ });
450
+
451
+ if (view === 'Question preview') {
452
+ after(() => {
453
+ chartsBarPage.steps.clickOnSaveQuestionButton();
454
+ utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
455
+ itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
456
+ });
457
+ }
458
+
459
+ //Need to remove skip once https://redmine.zeuslearning.com/issues/577716 is resolved
460
+ it.skip('When the user selects "Grading" view without attempting the question, non-scoring label should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label "Correct answers" should be displayed with correct answers and correct/incorrect icons should not be displayed', () => {
461
+ if (view === 'Grading view') {
462
+ studentViewPage.steps.submitResponse();
463
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
464
+ studentViewPage.steps.clickOnGoToGradingViewButton();
465
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
466
+ };
467
+ if (view === 'Question preview' || view === 'Item preview') {
468
+ chartsBarPage.steps.checkNonScoredScoringLabel();
469
+ chartsBarPage.steps.switchToGradingView();
470
+ };
471
+ chartsBarPage.steps.checkNonScoredScoringLabel();
472
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(0);
473
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(1);
474
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(2);
475
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(3);
476
+ chartsBarPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
477
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 0, barValue: 3, range: 10 });
478
+ chartsBarPage.steps.verifyLockedBarInCorrectAnswerSection({ barIndex: 1, barValue: 2, range: 10 });
479
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 2, barValue: 6, range: 10 });
480
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 3, barValue: 5, range: 10 });
481
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 4, barValue: 0, range: 10 });
482
+ });
483
+
484
+ it('When the user incorrectly sets a bar which was correct by default, then non-scoring label should be displayed and on switching to grading view, incorrect icons should be displayed on the incorrectly attempted bars and correct answer section should be displayed with the correct answers', () => {
485
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 0, value: 5, range: 10 }, 'horizontal');
486
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 4, value: 2, range: 10 }, 'horizontal');
487
+ if (view === 'Grading view') {
488
+ studentViewPage.steps.submitResponse();
489
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
490
+ studentViewPage.steps.clickOnGoToGradingViewButton();
491
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
492
+ };
493
+ if (view === 'Question preview' || view === 'Item preview') {
494
+ chartsBarPage.steps.checkNonScoredScoringLabel();
495
+ chartsBarPage.steps.switchToGradingView();
496
+ };
497
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(0, 'incorrect');
498
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(1);
499
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(2, 'incorrect');
500
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(3, 'incorrect');
501
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(4, 'incorrect');
502
+ chartsBarPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
503
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 0, barValue: 3, range: 10 });
504
+ chartsBarPage.steps.verifyLockedBarInCorrectAnswerSection({ barIndex: 1, barValue: 2, range: 10 });
505
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 2, barValue: 6, range: 10 });
506
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 3, barValue: 5, range: 10 });
507
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 4, barValue: 0, range: 10 });
508
+ });
509
+
510
+ it('When the user incorrectly sets a bar which was set to 0 and correct by default, then non-scoring label should be displayed and on switching to grading view, incorrect icons should be displayed on the incorrectly attempted bars and correct answer section should be displayed with the correct answers', () => {
511
+ if (view === 'Grading view') {
512
+ studentViewPage.steps.clearResponses();
513
+ }
514
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 4, value: 5, range: 10 }, 'horizontal');
515
+ if (view === 'Grading view') {
516
+ studentViewPage.steps.submitResponse();
517
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
518
+ studentViewPage.steps.clickOnGoToGradingViewButton();
519
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
520
+ };
521
+ if (view === 'Question preview' || view === 'Item preview') {
522
+ chartsBarPage.steps.checkNonScoredScoringLabel();
523
+ chartsBarPage.steps.switchToGradingView();
524
+ };
525
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(0, 'correct');
526
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(1);
527
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(2, 'incorrect');
528
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(3, 'incorrect');
529
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(4, 'incorrect');
530
+ chartsBarPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
531
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 0, barValue: 3, range: 10 });
532
+ chartsBarPage.steps.verifyLockedBarInCorrectAnswerSection({ barIndex: 1, barValue: 2, range: 10 });
533
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 2, barValue: 6, range: 10 });
534
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 3, barValue: 5, range: 10 });
535
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 4, barValue: 0, range: 10 });
536
+ });
537
+
538
+ it('When the user attempts the question partially correct by incorrectly setting a bar which was incorrect by default, then non-scoring label should be displayed and on switching to grading view, correct icons should be displayed on the correctly attempted bars, incorrect icons should be displayed on the incorrectly attempted bars and correct answer section should be displayed with the correct answers', () => {
539
+ if (view === 'Grading view') {
540
+ studentViewPage.steps.clearResponses();
541
+ }
542
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 3, value: 2, range: 10 }, 'horizontal');
543
+ if (view === 'Grading view') {
544
+ studentViewPage.steps.submitResponse();
545
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
546
+ studentViewPage.steps.clickOnGoToGradingViewButton();
547
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
548
+ };
549
+ if (view === 'Question preview' || view === 'Item preview') {
550
+ chartsBarPage.steps.checkNonScoredScoringLabel();
551
+ chartsBarPage.steps.switchToGradingView();
552
+ };
553
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(0, 'correct');
554
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(1);
555
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(2, 'incorrect');
556
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(3, 'incorrect');
557
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(4, 'correct');
558
+ chartsBarPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
559
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 0, barValue: 3, range: 10 });
560
+ chartsBarPage.steps.verifyLockedBarInCorrectAnswerSection({ barIndex: 1, barValue: 2, range: 10 });
561
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 2, barValue: 6, range: 10 });
562
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 3, barValue: 5, range: 10 });
563
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 4, barValue: 0, range: 10 });
564
+ });
565
+
566
+ it('When the user attempts the question partially correct by incorrectly setting a bar to zero which was incorrect by default, then non-scoring label should be displayed and on switching to grading view, correct icons should be displayed on the correctly attempted bars, incorrect icons should be displayed on the incorrectly attempted bars and correct answer section should be displayed with the correct answers', () => {
567
+ if (view === 'Grading view') {
568
+ studentViewPage.steps.clearResponses();
569
+ }
570
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 3, value: 0, range: 10 }, 'horizontal');
571
+ if (view === 'Grading view') {
572
+ studentViewPage.steps.submitResponse();
573
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
574
+ studentViewPage.steps.clickOnGoToGradingViewButton();
575
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
576
+ };
577
+ if (view === 'Question preview' || view === 'Item preview') {
578
+ chartsBarPage.steps.checkNonScoredScoringLabel();
579
+ chartsBarPage.steps.switchToGradingView();
580
+ };
581
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(0, 'correct');
582
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(1);
583
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(2, 'incorrect');
584
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(3, 'incorrect');
585
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(4, 'correct');
586
+ chartsBarPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
587
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 0, barValue: 3, range: 10 });
588
+ chartsBarPage.steps.verifyLockedBarInCorrectAnswerSection({ barIndex: 1, barValue: 2, range: 10 });
589
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 2, barValue: 6, range: 10 });
590
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 3, barValue: 5, range: 10 });
591
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 4, barValue: 0, range: 10 });
592
+ });
593
+
594
+ it('When the user attempts the question partially correct by incorrectly setting a bar which was set to zero by default, then non-scoring label should be displayed and on switching to grading view, correct icons should be displayed on the correctly attempted bars, incorrect icons should be displayed on the incorrectly attempted bars and correct answer section should be displayed with the correct answers', () => {
595
+ if (view === 'Grading view') {
596
+ studentViewPage.steps.clearResponses();
597
+ }
598
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 2, value: 9, range: 10 }, 'horizontal');
599
+ if (view === 'Grading view') {
600
+ studentViewPage.steps.submitResponse();
601
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
602
+ studentViewPage.steps.clickOnGoToGradingViewButton();
603
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
604
+ };
605
+ if (view === 'Question preview' || view === 'Item preview') {
606
+ chartsBarPage.steps.checkNonScoredScoringLabel();
607
+ chartsBarPage.steps.switchToGradingView();
608
+ };
609
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(0, 'correct');
610
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(1);
611
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(2, 'incorrect');
612
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(3, 'incorrect');
613
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(4, 'correct');
614
+ chartsBarPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
615
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 0, barValue: 3, range: 10 });
616
+ chartsBarPage.steps.verifyLockedBarInCorrectAnswerSection({ barIndex: 1, barValue: 2, range: 10 });
617
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 2, barValue: 6, range: 10 });
618
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 3, barValue: 5, range: 10 });
619
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 4, barValue: 0, range: 10 });
620
+ });
621
+
622
+ it('When the user attempts the question partially correct by setting all bars correctly except 1 then non-scoring label should be displayed and on switching to grading view, correct icons should be displayed on the correctly attempted bars and incorrect icons should be displayed on the incorrectly attempted bars and correct answer section should be displayed with the correct answers', () => {
623
+ if (view === 'Grading view') {
624
+ studentViewPage.steps.clearResponses();
625
+ }
626
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 3, value: 5, range: 10 }, 'horizontal');
627
+ if (view === 'Grading view') {
628
+ studentViewPage.steps.submitResponse();
629
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
630
+ studentViewPage.steps.clickOnGoToGradingViewButton();
631
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
632
+ };
633
+ if (view === 'Question preview' || view === 'Item preview') {
634
+ chartsBarPage.steps.checkNonScoredScoringLabel();
635
+ chartsBarPage.steps.switchToGradingView();
636
+ };
637
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(0, 'correct');
638
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(1);
639
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(2, 'incorrect');
640
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(3, 'correct');
641
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(4, 'correct');
642
+ chartsBarPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
643
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 0, barValue: 3, range: 10 });
644
+ chartsBarPage.steps.verifyLockedBarInCorrectAnswerSection({ barIndex: 1, barValue: 2, range: 10 });
645
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 2, barValue: 6, range: 10 });
646
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 3, barValue: 5, range: 10 });
647
+ chartsBarPage.steps.verifyBarInCorrectAnswerSection({ barIndex: 4, barValue: 0, range: 10 });
648
+ });
649
+
650
+ it('When the user attempts the question correctly then non-scoring label should be displayed, correct icons should be displayed on the correctly attempted bars, a status message with text "Your answer is correct" should be displayed and the correct answer section graph should not be displayed', () => {
651
+ if (view === 'Grading view') {
652
+ studentViewPage.steps.clearResponses();
653
+ }
654
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 2, value: 6, range: 10 }, 'horizontal');
655
+ chartsBarPage.steps.setBarValueInPreviewTab({ barIndex: 3, value: 5, range: 10 }, 'horizontal');
656
+ if (view === 'Grading view') {
657
+ studentViewPage.steps.submitResponse();
658
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
659
+ studentViewPage.steps.clickOnGoToGradingViewButton();
660
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
661
+ };
662
+ if (view === 'Question preview' || view === 'Item preview') {
663
+ chartsBarPage.steps.checkNonScoredScoringLabel();
664
+ chartsBarPage.steps.switchToGradingView();
665
+ };
666
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(0, 'correct');
667
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconNotExistsInPreviewTab(1);
668
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(2, 'correct');
669
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(3, 'correct');
670
+ chartsBarPage.steps.verifyBarCorrectIncorrectIconInPreviewTab(4, 'correct');
671
+ chartsBarPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
672
+ chartsBarPage.steps.verifyCorrectAnswerSectionNotExist();
673
+ });
674
+ });
675
+ });
676
+
321
677
  if (!grepTags || !grepTags.includes('smoke')) {
322
678
  describe('Question preview: Auto scored - All or nothing: Minimum scoring', () => {
323
679
  abortEarlySetup();
@@ -20,8 +20,8 @@ describe('Create item page - Charts - Bar horizontal orientation: Grading view,
20
20
  before(() => {
21
21
  chartsBarPage.steps.navigateToCreateQuestion('charts');
22
22
  cy.barsPreLoaderWait();
23
- chartsBarPage.steps.addTextInQuestionInstructionsInputField('Set the bar on the chart for the profits of the years');
24
23
  chartsBarPage.steps.selectHorizontalDirectionRadioButton();
24
+ chartsBarPage.steps.addTextInQuestionInstructionsInputField('Set the bar on the chart for the profits of the years');
25
25
  chartsBarPage.steps.selectAddBarOrPointToolbarOption();
26
26
  chartsBarPage.steps.addBarOrPointInChartInSelectChartTypeSection();
27
27
  chartsBarPage.steps.setGraphTitle('Graph of profits');