itemengine-cypress-automation 1.0.389-graphAndCharts-04d27f6.0 → 1.0.390-IEI-6314-testScriptForTextEntryMathValidations-dcad527.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 (319) 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/BrowseItems/browseReviewItems.js +3 -3
  8. package/cypress/e2e/ILC/BrowseItems/browseReviewItemsMobileView.js +3 -3
  9. package/cypress/e2e/ILC/BrowseItems/browseThinkSphereItems.js +6 -6
  10. package/cypress/e2e/ILC/BrowseItems/browseThinkSphereItemsMobileView.js +6 -6
  11. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/allOrNothingScoringForAllViews.smoke.js +356 -0
  12. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/gradingViewAndCorrectAnswerView.smoke.js +1 -1
  13. package/cypress/e2e/ILC/ChartsBar/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +33 -0
  14. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightBasic.js +27 -27
  15. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +37 -37
  16. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +37 -37
  17. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +37 -37
  18. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightBasic.js +26 -25
  19. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +39 -38
  20. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +31 -30
  21. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +35 -34
  22. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePointsLocked.js +247 -0
  23. package/cypress/e2e/ILC/ChartsBar/allOrNothingScoringForAllViews.smoke.js +287 -0
  24. package/cypress/e2e/ILC/ChartsBar/editQuestion.smoke.js +1 -1
  25. package/cypress/e2e/ILC/ChartsBar/editTabBasicSection.js +37 -0
  26. package/cypress/e2e/ILC/ChartsBar/headerSection.js +50 -2
  27. package/cypress/e2e/ILC/ChartsBar/specifyCorrectAnswerSection.js +92 -0
  28. package/cypress/e2e/ILC/ChartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePointsLocked.js +220 -0
  29. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightBasic.js +25 -26
  30. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +47 -47
  31. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +25 -25
  32. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +25 -25
  33. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightBasic.js +25 -25
  34. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +24 -23
  35. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +21 -20
  36. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +48 -46
  37. package/cypress/e2e/ILC/ChartsLine/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePointsLocked.js +249 -0
  38. package/cypress/e2e/ILC/ChartsLine/allOrNothingScoringForAllViews.smoke.js +247 -0
  39. package/cypress/e2e/ILC/ChartsLine/editQuestion.smoke.js +3 -1
  40. package/cypress/e2e/ILC/ChartsLine/headerSection.js +18 -1
  41. package/cypress/e2e/ILC/ChartsLine/specifyCorrectAnswerSection.js +94 -0
  42. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddTranscriptRadioButton .js +2 -2
  43. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerHeaderSectionAndButtons.js +2 -2
  44. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTab.js +1 -1
  45. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabSupportedFileTypes.js +6 -0
  46. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabTranscript.js +2 -3
  47. package/cypress/e2e/ILC/CkEditorEquationEditor/selectModeEditorBasic.js +4 -1
  48. package/cypress/e2e/ILC/CkEditorInsertImage/imageInfo.js +4 -3
  49. package/cypress/e2e/ILC/CkEditorInsertImage/insertImageBasicFile.js +2 -0
  50. package/cypress/e2e/ILC/CkEditorInsertTable/tableDimension&FooterProperties.js +8 -8
  51. package/cypress/e2e/ILC/CkEditorInsertTable/tableStyle.js +11 -11
  52. package/cypress/e2e/ILC/CkEditorLink/linkPreview.js +2 -1
  53. package/cypress/e2e/ILC/CkEditorLink/uploadSection.js +1 -1
  54. package/cypress/e2e/ILC/ContentBlocks/editTabBasics.js +63 -4
  55. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/allOrNothingBasicForAllViews.smoke.js +116 -7
  56. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/editTabBasicSection.js +3 -3
  57. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/editTabScoring.js +1 -0
  58. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/headerSection.js +3 -3
  59. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/pagination.js +1 -1
  60. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/studentViewSettingsForGroupedLayout.js +3 -0
  61. package/cypress/e2e/ILC/DrawingResponse/drawingResponseEditTabBasicSection.js +11 -3
  62. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/allOrNothingForAllViews.smoke.js +210 -0
  63. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/draggableOptions.js +2 -0
  64. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/editTabBasicSection.js +1 -1
  65. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/headerSection.js +3 -3
  66. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/previewContentsForAllViewInIncompleteAuthoring.smoke.js +7 -7
  67. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/previewContentsForAllViews.smoke.js +15 -16
  68. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editQuestion.smoke.js +40 -0
  69. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editTabBasicSection.js +1 -1
  70. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/headerSection.js +3 -3
  71. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/allOrNothingForAllViews.smoke.js +216 -0
  72. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/editTabBasicSection.js +2 -2
  73. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/headerSection.js +3 -3
  74. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editQuestion.smoke.js +45 -0
  75. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editTabBasicSection.js +1 -1
  76. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/headerSection.js +4 -4
  77. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/HeaderSection.js +4 -4
  78. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/editQuestion.smoke.js +1 -1
  79. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/responseAnswersAndAcceptedStudentInput.js +4 -0
  80. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/supportedFileTypes.js +3 -1
  81. package/cypress/e2e/ILC/FillInTheGapsTextNew/editTabBasicSection.js +1 -1
  82. package/cypress/e2e/ILC/FillInTheGapsTextNew/headerSection.js +3 -3
  83. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +73 -0
  84. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +38 -0
  85. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +38 -0
  86. package/cypress/e2e/ILC/Graphing/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +87 -0
  87. package/cypress/e2e/ILC/Graphing/allOrNothingForAllViews.smoke.js +213 -2
  88. package/cypress/e2e/ILC/Graphing/checkAddAlternativeButton.js +35 -0
  89. package/cypress/e2e/ILC/Graphing/editQuestion.smoke.js +28 -0
  90. package/cypress/e2e/ILC/Graphing/editTabBasicSection.js +38 -0
  91. package/cypress/e2e/ILC/Graphing/editTabScoringSection.js +1 -0
  92. package/cypress/e2e/ILC/Graphing/headerSection.js +37 -4
  93. package/cypress/e2e/ILC/Graphing/specifyCorrectAnswerSection.js +28 -0
  94. package/cypress/e2e/ILC/GridFill/addAlternateButton.js +40 -0
  95. package/cypress/e2e/ILC/GridFill/allOrNothingBasicForAllViews.smoke.js +210 -0
  96. package/cypress/e2e/ILC/GridFill/customizeLayoutFillImageBackgroundImage.js +2 -2
  97. package/cypress/e2e/ILC/GridFill/headerSection.js +4 -4
  98. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +39 -0
  99. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  100. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +39 -0
  101. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountAllOrNothingCorrectPointsGreaterThanAlternativePoints.js +37 -0
  102. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountallOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  103. package/cypress/e2e/ILC/GridFill/scoring/cellshadeCountAllOrNothingAlternativePointsGreaterThanCorrectPoints.js +36 -0
  104. package/cypress/e2e/ILC/GridFill/scoring/checkLabelSaveAsYouGo.js +75 -0
  105. package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +2 -1
  106. package/cypress/e2e/ILC/ImageHighlight/additionalSettingsBasic.js +1 -0
  107. package/cypress/e2e/ILC/ImageHighlight/allOrNothingForAllViews.smoke.js +212 -0
  108. package/cypress/e2e/ILC/ImageHighlight/customiseHighlightStyle.js +29 -0
  109. package/cypress/e2e/ILC/ImageHighlight/editTabBasicSection.js +1 -1
  110. package/cypress/e2e/ILC/ImageHighlight/headerSection.js +3 -3
  111. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +24 -0
  112. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +24 -0
  113. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +24 -0
  114. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +86 -0
  115. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/manuallyAndNonScored.js +2 -4
  116. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsBasic.js +1 -1
  117. package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +237 -1
  118. package/cypress/e2e/ILC/ListOrderingDropdown/checkAddAlternativeButton.js +35 -0
  119. package/cypress/e2e/ILC/ListOrderingDropdown/editTabBasicSection.js +26 -0
  120. package/cypress/e2e/ILC/ListOrderingDropdown/headerSection.js +108 -0
  121. package/cypress/e2e/ILC/ListOrderingDropdown/manuallyAndNonScoredEditTab.js +2 -1
  122. package/cypress/e2e/ILC/ListOrderingDropdown/previewContentsForAllViews.smoke.js +2 -4
  123. package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +7 -12
  124. package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js +10 -14
  125. package/cypress/e2e/ILC/ListOrderingNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +52 -0
  126. package/cypress/e2e/ILC/ListOrderingNew/allOrNothingForAllViews.smoke.js +215 -0
  127. package/cypress/e2e/ILC/ListOrderingNew/editTabBasicSection.js +23 -0
  128. package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +36 -9
  129. package/cypress/e2e/ILC/ListOrderingNew/manuallyAndNonScoredEditTab.js +2 -0
  130. package/cypress/e2e/ILC/ListOrderingNew/specifyCorrectAnswerSection.js +7 -23
  131. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +41 -0
  132. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +30 -0
  133. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +50 -0
  134. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +101 -0
  135. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/allOrNothingForAllViews.smoke.js +309 -0
  136. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/checkAddAlternativeButton.js +38 -0
  137. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabBasicSection.js +24 -0
  138. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabScoring.js +4 -1
  139. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/headerSection.js +38 -3
  140. package/cypress/e2e/ILC/Matching/Scoring/blankResponseScoring.js +38 -41
  141. package/cypress/e2e/ILC/Matching/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +98 -0
  142. package/cypress/e2e/ILC/Matching/allOrNothingScoringForAllViews.smoke.js +210 -0
  143. package/cypress/e2e/ILC/Matching/checkAlternativeButton.js +38 -0
  144. package/cypress/e2e/ILC/Matching/clickAndDrop.js +5 -5
  145. package/cypress/e2e/ILC/Matching/draggableOptions.js +7 -0
  146. package/cypress/e2e/ILC/Matching/editQuestion.smoke.js +3 -2
  147. package/cypress/e2e/ILC/Matching/editTabBasicSection.js +41 -0
  148. package/cypress/e2e/ILC/Matching/headerSection.js +38 -12
  149. package/cypress/e2e/ILC/Matching/questionInstructionsAndPromptSection.js +2 -15
  150. package/cypress/e2e/ILC/Matching/studentViewSettings.js +3 -1
  151. package/cypress/e2e/ILC/Matching/studentViewSettingsForGroupedLayout.js +1 -1
  152. package/cypress/e2e/ILC/MatchingDropdown/Scoring/blankResponseScoring.js +7 -6
  153. package/cypress/e2e/ILC/MatchingDropdown/Scoring/partialDifferentWeightsScoringBasic.js +6 -6
  154. package/cypress/e2e/ILC/MatchingDropdown/allOrNothingScoringForAllViews.smoke.js +208 -0
  155. package/cypress/e2e/ILC/MultipleSelection/allOrNothingBasicForAllViews.smoke.js +2 -1
  156. package/cypress/e2e/ILC/MultipleSelection/editTabBasicSection.js +1 -1
  157. package/cypress/e2e/ILC/MultipleSelection/headerSection.js +3 -3
  158. package/cypress/e2e/ILC/MultipleSelectionGridNew/Scoring/checkScoringLabelBannerAndCorrectAnswer.js +1 -0
  159. package/cypress/e2e/ILC/MultipleSelectionGridNew/editTabBasicSection.js +2 -2
  160. package/cypress/e2e/ILC/MultipleSelectionGridNew/headerSection.js +3 -3
  161. package/cypress/e2e/ILC/MultipleSelectionGridNew/previewContentsForAllViews.smoke.js +100 -69
  162. package/cypress/e2e/ILC/MultipleSelectionGridNew/styleAndLayoutCustomizationLayoutProperties.js +1 -0
  163. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +79 -0
  164. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +42 -0
  165. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +42 -0
  166. package/cypress/e2e/ILC/NumberLine/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +75 -0
  167. package/cypress/e2e/ILC/NumberLine/allOrNothingScoringForAllViews.smoke.js +213 -0
  168. package/cypress/e2e/ILC/NumberLine/checkAddAlternativeButton.js +32 -0
  169. package/cypress/e2e/ILC/NumberLine/editTabSection.js +38 -0
  170. package/cypress/e2e/ILC/NumberLine/headerSection.js +34 -4
  171. package/cypress/e2e/ILC/NumberLine/verticalNumberLine/allOrNothingScoringForAllViews.smoke.js +249 -0
  172. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +81 -0
  173. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +43 -0
  174. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +43 -0
  175. package/cypress/e2e/ILC/NumberLineLabel/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +76 -0
  176. package/cypress/e2e/ILC/NumberLineLabel/additionalSettingsBasic.js +0 -1
  177. package/cypress/e2e/ILC/NumberLineLabel/allOrNothingForAllViews.smoke.js +266 -0
  178. package/cypress/e2e/ILC/NumberLineLabel/checkAddAlternativeButton.js +34 -0
  179. package/cypress/e2e/ILC/NumberLineLabel/editTabSection.js +38 -0
  180. package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +37 -4
  181. package/cypress/e2e/ILC/NumberLineLabel/manuallyAndNonScoredEditTab.js +2 -1
  182. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/allOrNothingForAllViews.smoke.js +268 -0
  183. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/editQuestion.smoke.js +1 -1
  184. package/cypress/e2e/ILC/ShortTextResponseNew/allOrNothingBasicForAllViews.smoke.js +186 -0
  185. package/cypress/e2e/ILC/ShortTextResponseNew/editTabBasicSections.js +4 -3
  186. package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +2 -4
  187. package/cypress/e2e/ILC/SingleSelection/editTabBasicSection.js +1 -1
  188. package/cypress/e2e/ILC/SingleSelection/headerSection.js +2 -2
  189. package/cypress/e2e/ILC/SingleSelectionGridNew/editTabBasicSection.js +2 -2
  190. package/cypress/e2e/ILC/SingleSelectionGridNew/headerSection.js +3 -3
  191. package/cypress/e2e/ILC/SingleSelectionGridNew/previewContentsForAllViews.smoke.js +101 -70
  192. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +86 -0
  193. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +86 -0
  194. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  195. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +4 -2
  196. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  197. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  198. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsScoringBasic.js +9 -2
  199. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +4 -2
  200. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +3 -1
  201. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  202. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsScoringBasic.js +4 -0
  203. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +64 -0
  204. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAddEvaluation.js +2 -0
  205. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAlternateAnswer.js +2 -0
  206. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +64 -0
  207. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  208. package/cypress/e2e/ILC/TextEntryMath/Scoring/blankResponseScoring.js +2 -2
  209. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  210. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  211. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  212. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsScoringBasic.js +8 -0
  213. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  214. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  215. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  216. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasic.js +1 -0
  217. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasicForAlternateAnswer.js +2 -0
  218. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViews.smoke.js +263 -0
  219. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +219 -0
  220. package/cypress/e2e/ILC/TextEntryMath/editTabBasicSection.js +27 -3
  221. package/cypress/e2e/ILC/TextEntryMath/equationEditor.smoke.js +1 -1
  222. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodEquivalentStructures.smoke.js +3 -3
  223. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchValue.smoke.js +310 -1
  224. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodSymbolsAreEquivalent.smoke.js +205 -1
  225. package/cypress/e2e/ILC/TextEntryMath/headerSection.js +43 -0
  226. package/cypress/e2e/ILC/TextEntryMathWithImage/allOrNothingScoringForAllViews.smoke.js +263 -0
  227. package/cypress/e2e/ILC/TextEntryMathWithImage/backgroundImageAndCanvasProperties.js +0 -1
  228. package/cypress/e2e/ILC/TextEntryMathWithImage/styleAndLayoutCustomization.js +1 -1
  229. package/cypress/e2e/ILC/TextSelection/additionalSettings.js +1 -0
  230. package/cypress/e2e/ILC/TextSelection/allOrNothingScoringForAllViews.smoke.js +231 -0
  231. package/cypress/e2e/ILC/TextSelection/editTabBasicSection.js +2 -2
  232. package/cypress/e2e/ILC/TextSelection/headerSection.js +3 -3
  233. package/cypress/e2e/ILC/TextSelection/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -0
  234. package/cypress/e2e/ILC/TextSelection/textSelectionModesInSpecifyPossibleOptionsSection.js +1 -0
  235. package/cypress/e2e/ILC/ThinkSphere/createReviewItem.js +1 -1
  236. package/cypress/e2e/ILC/ThinkSphere/editTabBasicSection.js +1 -1
  237. package/cypress/e2e/ILC/ThinkSphere/editThinkSphereQuestion.smoke.js +145 -54
  238. package/cypress/e2e/ILC/ThinkSphere/equationEditorEditCategoryFlyOut.js +2 -0
  239. package/cypress/e2e/ILC/ThinkSphere/gradingViewPlanTabSection.js +334 -0
  240. package/cypress/e2e/ILC/ThinkSphere/gradingViewReviewTabSection.js +140 -0
  241. package/cypress/e2e/ILC/ThinkSphere/gradingViewSolveTabSection.js +65 -0
  242. package/cypress/e2e/ILC/ThinkSphere/planPhase.js +45 -5
  243. package/cypress/e2e/ILC/ThinkSphere/previewTabPlanSection.js +8 -8
  244. package/cypress/e2e/ILC/ThinkSphere/previewTabReviewSection.js +102 -0
  245. package/cypress/e2e/ILC/ThinkSphere/previewTabSolveSection.js +41 -0
  246. package/cypress/e2e/ILC/ThinkSphere/solvePhase.js +3 -3
  247. package/cypress/e2e/ILC/ThinkSphere/studentViewPlanTabSection.js +393 -0
  248. package/cypress/e2e/ILC/ThinkSphere/studentViewReviewTabSection.js +146 -0
  249. package/cypress/e2e/ILC/ThinkSphere/studentViewSolveSection.js +53 -0
  250. package/cypress/e2e/ILC/ToolAudioPlayerNew/headerSection.js +90 -2
  251. package/cypress/e2e/ILC/UploadResponse/editTabBasicSection.js +34 -0
  252. package/cypress/e2e/ILC/UploadResponse/headerSection.js +38 -1
  253. package/cypress/e2e/ILC/UploadResponse/uploadResponsePreview.js +50 -13
  254. package/cypress/e2e/ILC/VideoResponseNew/editTabBasicSection.js +14 -29
  255. package/cypress/e2e/ILC/chartsDotsPlot/allOrNothingForAllViews.smoke.js +248 -0
  256. package/cypress/e2e/ILC/chartsDotsPlot/headerSection.js +16 -1
  257. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsBasic.js +27 -28
  258. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithAlternativePointsGreaterThanCorrectPoints.js +31 -30
  259. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +24 -24
  260. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithCorrectPointsGreaterThanAlternativePoints.js +39 -37
  261. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsBasic.js +22 -23
  262. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +31 -30
  263. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +25 -24
  264. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +31 -31
  265. package/cypress/e2e/ILC/chartsDotsPlot/scoring/toleranceThresholdScoring.js +18 -19
  266. package/cypress/e2e/ILC/chartsDotsPlot/specifyCorrectAnswerSection.js +96 -0
  267. package/cypress/e2e/Sessions/fetchResponses.js +3 -3
  268. package/cypress/e2e/Sessions/saveResponseScores.js +2 -2
  269. package/cypress/fixtures/thinkSphereWhiteboardTools.js +66 -0
  270. package/cypress/pages/audioPlayerPage.js +25 -0
  271. package/cypress/pages/brainingCampManipulativePage.js +1 -1
  272. package/cypress/pages/chartsBarPage.js +45 -0
  273. package/cypress/pages/chartsDotPlotPage.js +25 -0
  274. package/cypress/pages/chartsLinePage.js +29 -2
  275. package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +5 -1
  276. package/cypress/pages/components/chartsCommonComponent.js +21 -2
  277. package/cypress/pages/components/ckEditorEquationEditorComponent.js +1 -0
  278. package/cypress/pages/components/ckEditorInsertImageComponent.js +3 -3
  279. package/cypress/pages/components/ckEditorInsertTableComponent.js +3 -3
  280. package/cypress/pages/components/ckEditorLinkComponent.js +8 -9
  281. package/cypress/pages/components/colorPopupComponent.js +6 -0
  282. package/cypress/pages/components/createQuestionBasePage.js +19 -6
  283. package/cypress/pages/components/desmosToolComponent.js +1 -1
  284. package/cypress/pages/components/draggableOptionsSectionComponent.js +2 -0
  285. package/cypress/pages/components/equationEditorSectionCommonComponent.js +4 -4
  286. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +31 -3
  287. package/cypress/pages/components/fillInTheGapsTextCommonComponent.js +1 -1
  288. package/cypress/pages/components/gridQuestionCommonComponent.js +55 -2
  289. package/cypress/pages/components/imageCanvasComponent.js +11 -5
  290. package/cypress/pages/components/playbackControlsBaseComponent.js +6 -3
  291. package/cypress/pages/components/questionInstructionsComponent.js +2 -0
  292. package/cypress/pages/components/scoringSectionBaseEditTab.js +3 -0
  293. package/cypress/pages/components/specifyRowsAndColumnsComponent.js +16 -0
  294. package/cypress/pages/contentBlocksPage.js +2 -0
  295. package/cypress/pages/desmos3DGraphingPage.js +149 -4
  296. package/cypress/pages/desmosGeometryPage.js +184 -4
  297. package/cypress/pages/drawingResponsePage.js +9 -2
  298. package/cypress/pages/fillInTheGapsDragAndDropPage.js +3 -8
  299. package/cypress/pages/gradingGridViewPage.js +64 -0
  300. package/cypress/pages/graphingPage.js +28 -5
  301. package/cypress/pages/gridFillPage.js +24 -9
  302. package/cypress/pages/imageHighlightPage.js +115 -15
  303. package/cypress/pages/index.js +1 -0
  304. package/cypress/pages/listOrderingPage.js +46 -2
  305. package/cypress/pages/matchingPage.js +29 -10
  306. package/cypress/pages/numberLineLabelPage.js +26 -0
  307. package/cypress/pages/numberLinePage.js +15 -0
  308. package/cypress/pages/singleSelectionPage.js +30 -1
  309. package/cypress/pages/textEntryMathPage.js +29 -10
  310. package/cypress/pages/textSelectionPage.js +2 -2
  311. package/cypress/pages/thinkSpherePage.js +1118 -87
  312. package/cypress/pages/uploadResponsePage.js +17 -1
  313. package/cypress/pages/videoResponsePage.js +3 -0
  314. package/cypress/support/commands.js +9 -0
  315. package/cypress/support/helpers/createItem.js +22 -3
  316. package/cypress/support/helpers/utilities.js +14 -1
  317. package/package.json +1 -1
  318. /package/cypress/e2e/ILC/{ChartsDotsPlot → chartsDotsPlot}/checkAnswerFunctionalityForAllViews.js +0 -0
  319. /package/cypress/e2e/ILC/{ChartsDotsPlot → chartsDotsPlot}/editQuestion.smoke.js +0 -0
@@ -0,0 +1,249 @@
1
+ import { chartsLinePage } from "../../../../pages";
2
+ import abortEarlySetup from "../../../../support/helpers/abortEarly";
3
+
4
+ describe('Create item page - Charts - Line: Partial equal weights scoring with alternative answer - When Correct answer points are more than alternative Answer points with locked Points', () => {
5
+ before(() => {
6
+ cy.loginAs('admin');
7
+ });
8
+
9
+ describe('Question Preview: AutoScored - Partial equal weights with alternative answer: When Correct Answer points are more than alternative Answer points with locked points', () => {
10
+ abortEarlySetup();
11
+ before(() => {
12
+ chartsLinePage.steps.navigateToCreateQuestion('charts');
13
+ cy.barsPreLoaderWait();
14
+ chartsLinePage.steps.selectLineButton();
15
+ chartsLinePage.steps.addTextInQuestionInstructionsInputField('Set the bar on the chart for the profits of the years');
16
+ chartsLinePage.steps.addBarOrPointInChartInSelectChartTypeSection();
17
+ chartsLinePage.steps.addBarOrPointInChartInSelectChartTypeSection();
18
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 0, value: 3, range: 10 });
19
+ chartsLinePage.steps.lockPoint(0);
20
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 1, value: 2, range: 10 });
21
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 3, value: 3, range: 10 });
22
+ chartsLinePage.steps.allotPoints(20);
23
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
24
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
25
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
26
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
27
+ chartsLinePage.steps.addAlternativeAnswerAccordion(1);
28
+ chartsLinePage.steps.allotPoints(12);
29
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 1, value: 2, range: 10 });
30
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 2, value: 3, range: 10 });
31
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 3, value: 1, range: 10 });
32
+ chartsLinePage.steps.selectAutoScoredScoringSubtype('Partial equal weights');
33
+ chartsLinePage.steps.switchToPreviewTab();
34
+ });
35
+
36
+ it('When the user selects \'Grading\' view without attempting the question, then user should be provided with 0 points, correct icon should be displayed for bar set to correct by default, incorrect icon should be displayed for incorrect graph, the correct accordion answer should be displayed in the correct answer section graph and incorrect status message should be displayed', () => {
37
+ chartsLinePage.steps.switchToGradingView();
38
+ chartsLinePage.steps.verifyPreviewScore(0, 20);
39
+ chartsLinePage.steps.verifyPointIsLockedInPreviewTab(0);
40
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
41
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
42
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'incorrect');
43
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
44
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
45
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
46
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
47
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
48
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
49
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
50
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
51
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
52
+ });
53
+
54
+ it('When the user incorrectly attempts the answer, then the user should be awarded with points for the correctly set points and on switching to grading view, correct/incorrect status message should not be displayed, incorrect icons should be displayed on the incorrect points and correct answer section should be displayed with the correct answers from the correct accordion', () => {
55
+ chartsLinePage.steps.resetQuestionPreview();
56
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 4, range: 10 });
57
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 1, range: 10 });
58
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 3, range: 10 });
59
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 1, range: 10 });
60
+ chartsLinePage.steps.verifyPreviewScore(10, 20);
61
+ chartsLinePage.steps.switchToGradingView();
62
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
63
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
64
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'incorrect');
65
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
66
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
67
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
68
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
69
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
70
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
71
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
72
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
73
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
74
+ });
75
+
76
+ it('When the user attempts the question with responses from the correct accordion, then the user should be awarded full points and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, correct/incorrect status message should not be displayed and correct answer section should not be displayed', () => {
77
+ chartsLinePage.steps.resetQuestionPreview();
78
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 4, range: 10 });
79
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 5, range: 10 });
80
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 6, range: 10 });
81
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 1, range: 10 });
82
+ chartsLinePage.steps.verifyPreviewScore(20, 20);
83
+ chartsLinePage.steps.switchToGradingView();
84
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
85
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
86
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
87
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'correct');
88
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
89
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
90
+ chartsLinePage.steps.verifyCorrectAnswerSectionNotExist();
91
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
92
+ });
93
+
94
+ it('When the user attempts the question with responses from the alternative accordion, then the user should be awarded with points specified for alternative accordion (less than full points) and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, correct/incorrect status message should not be displayed and correct answer section should not be displayed', () => {
95
+ chartsLinePage.steps.resetQuestionPreview();
96
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 2, range: 10 });
97
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 3, range: 10 });
98
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 1, range: 10 });
99
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 0, range: 10 });
100
+ chartsLinePage.steps.verifyPreviewScore(12, 20);
101
+ chartsLinePage.steps.switchToGradingView();
102
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
103
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
104
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
105
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'correct');
106
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
107
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
108
+ chartsLinePage.steps.verifyCorrectAnswerSectionNotExist();
109
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
110
+ });
111
+
112
+ it('When the user attempts the question with partially correct exclusively from the correct accordion, then the user should be awarded with points for the correctly set points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, incorrect icons should be displayed on the incorrect points, correct/incorrect status message should not be displayed and correct answer section should be displayed with the correct answers from the correct accordion', () => {
113
+ chartsLinePage.steps.resetQuestionPreview();
114
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 4, range: 10 });
115
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 5, range: 10 });
116
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 0, range: 10 });
117
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 1, range: 10 });
118
+ chartsLinePage.steps.verifyPreviewScore(15, 20);
119
+ chartsLinePage.steps.switchToGradingView();
120
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
121
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
122
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
123
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
124
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
125
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
126
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
127
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
128
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
129
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
130
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
131
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
132
+ });
133
+
134
+ it('When the user attempts the question with partially correct exclusively from the alternative accordion, then the user should be awarded with points for the correctly set points and on switching to \'Grading\' view, correct icon should be displayed besides the correct answer responses, incorrect icons should be displayed on the incorrect points correct/incorrect status message should not be displayed and correct answer section should be displayed with the correct answers from the correct accordion', () => {
135
+ chartsLinePage.steps.resetQuestionPreview();
136
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 2, range: 10 });
137
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 3, range: 10 });
138
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 0, range: 10 });
139
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 0, range: 10 });
140
+ chartsLinePage.steps.verifyPreviewScore(9, 20);
141
+ chartsLinePage.steps.switchToGradingView();
142
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
143
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
144
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
145
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
146
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
147
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
148
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
149
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
150
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
151
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
152
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
153
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
154
+ });
155
+
156
+ it('When the user attempts the question with more answers from the correct accordion than the alternate accordion, then the user should be awarded with points for the correctly set points from the correct accordion and on switching to \'Grading\' view, correct icon should be displayed besides the correct accordion responses, incorrect icons should be displayed on the alternate accordion responses, correct/incorrect status message should not be displayed and correct answer section should be displayed with the correct answers from the correct accordion', () => {
157
+ chartsLinePage.steps.resetQuestionPreview();
158
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 4, range: 10 });
159
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 5, range: 10 });
160
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 2, range: 10 });
161
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 1, range: 10 });
162
+ chartsLinePage.steps.verifyPreviewScore(15, 20);
163
+ chartsLinePage.steps.switchToGradingView();
164
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
165
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
166
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
167
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
168
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
169
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
170
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
171
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
172
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
173
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
174
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
175
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
176
+ });
177
+
178
+ it('When the user attempts the question with more answers from the alternate accordion than the correct accordion, then the user should be awarded with points for the correctly set points from the alternate accordion and on switching to \'Grading\' view, correct icon should be displayed besides the correct accordion responses, incorrect icons should be displayed on the alternate accordion responses, correct/incorrect status message should not be displayed and correct answer section should be displayed with the correct answers from the correct accordion', () => {
179
+ chartsLinePage.steps.resetQuestionPreview();
180
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 2, range: 10 });
181
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 5, range: 10 });
182
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 1, range: 10 });
183
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 0, range: 10 });
184
+ chartsLinePage.steps.verifyPreviewScore(9, 20);
185
+ chartsLinePage.steps.switchToGradingView();
186
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
187
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
188
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'incorrect');
189
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'correct');
190
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
191
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
192
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
193
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
194
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
195
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
196
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
197
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
198
+ });
199
+
200
+ it('When the user has attempted the question with equal number of correct responses from correct and alternative accordion, then the user should be awarded with points for the correctly set points and on switching to \'Grading\' view, correct icon should be displayed besides response field with correct answer responses, incorrect icon should be displayed beside responses from the alternative tab, correct/incorrect status message should not be displayed and correct answer section should be displayed with the correct answers from the correct accordion', () => {
201
+ chartsLinePage.steps.resetQuestionPreview();
202
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 4, range: 10 });
203
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 5, range: 10 });
204
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 1, range: 10 });
205
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 0, range: 10 });
206
+ chartsLinePage.steps.verifyPreviewScore(10, 20);
207
+ chartsLinePage.steps.switchToGradingView();
208
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
209
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'correct');
210
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
211
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
212
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'incorrect');
213
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
214
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
215
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
216
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
217
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
218
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
219
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
220
+ });
221
+
222
+ it('Overachiever case: When the user attempts the question with more number of correct responses from the alternative accordion than the correct accordion but the score of the individual response from the correct accordion overpowers the combined score of the alternative accordion answers then on switching to the \'Grading view\', then points awarded should be of the correct accordion, correct icons should be displayed for the correct accordion response, incorrect icon should be displayed for the alternative accordion responses, correct/incorrect status message should not be displayed and correct answer section with a preview of the entire grid with correct answers from the correct accordion should be displayed', () => {
223
+ cy.log('Pre-step: Switching to Edit tab and allotting points to correct and alternative accordion such that the difference between the points is substantial')
224
+ chartsLinePage.steps.switchToEditTab();
225
+ chartsLinePage.steps.expandCorrectAnswerAccordion();
226
+ chartsLinePage.steps.allotPoints(40);
227
+ chartsLinePage.steps.switchToPreviewTab();
228
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 1, value: 2, range: 10 });
229
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 3, range: 10 });
230
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 6, range: 10 });
231
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 8, range: 10 });
232
+ chartsLinePage.steps.verifyPreviewScore(10, 40);
233
+ chartsLinePage.steps.switchToGradingView();
234
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
235
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(1, 'incorrect');
236
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'incorrect');
237
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'correct');
238
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'incorrect');
239
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
240
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 1, value: 4, range: 10 });
241
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 5, range: 10 });
242
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 6, range: 10 });
243
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 1, range: 10 });
244
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
245
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
246
+ });
247
+ });
248
+ });
249
+
@@ -314,6 +314,253 @@ describe('Create item page - Charts - Line: All or nothing ', () => {
314
314
  });
315
315
  });
316
316
 
317
+ views.forEach((view) => {
318
+ describe(`${view}: Charts - Line: Manually scored`, { tags: 'smoke' }, () => {
319
+ abortEarlySetup();
320
+ before(() => {
321
+ switch (view) {
322
+ case 'Question preview':
323
+ chartsLinePage.steps.navigateToCreateQuestion('charts');
324
+ cy.barsPreLoaderWait();
325
+ chartsLinePage.steps.addTextInQuestionInstructionsInputField('Set the point on the chart for the profits of the years');
326
+ chartsLinePage.steps.selectLineButton();
327
+ chartsLinePage.steps.addBarOrPointInChartInSelectChartTypeSection();
328
+ chartsLinePage.steps.addBarOrPointInChartInSelectChartTypeSection();
329
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 0, value: 3, range: 10 });
330
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 1, value: 2, range: 10 });
331
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 3, value: 3, range: 10 });
332
+ chartsLinePage.steps.lockPoint(1);
333
+ chartsLinePage.steps.expandScoringTypeDropdown();
334
+ chartsLinePage.steps.selectOptionFromScoringTypeDropdown('Manually scored');
335
+ chartsLinePage.steps.allotPointsForManualScoring(20);
336
+ chartsLinePage.steps.switchToPreviewTab();
337
+ break;
338
+ case 'Item preview':
339
+ cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
340
+ itemPreviewPage.steps.switchToPreviewTab();
341
+ break;
342
+ case 'Grading view':
343
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
344
+ break;
345
+ }
346
+ });
347
+
348
+ beforeEach(() => {
349
+ switch (view) {
350
+ case 'Question preview':
351
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
352
+ chartsLinePage.steps.resetQuestionPreview();
353
+ break;
354
+ case 'Item preview':
355
+ itemPreviewPage.steps.switchToStudentView();
356
+ itemPreviewPage.steps.resetQuestionPreview();
357
+ break;
358
+ case 'Grading view':
359
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
360
+ break;
361
+ }
362
+ });
363
+
364
+ if (view === 'Question preview') {
365
+ after(() => {
366
+ chartsLinePage.steps.clickOnSaveQuestionButton();
367
+ utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
368
+ itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
369
+ });
370
+ }
371
+
372
+ it('Question instructions should be visible', () => {
373
+ chartsLinePage.steps.verifyQuestionInstructionsTextPreviewTab('Set the point on the chart for the profits of the years');
374
+ chartsLinePage.steps.verifyVisibityOfQuestionInstructionsText();
375
+ });
376
+
377
+ 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', () => {
378
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 0, value: 3, range: 10 });
379
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 6, range: 10 });
380
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 5, range: 10 });
381
+ if (view === 'Grading view') {
382
+ studentViewPage.steps.submitResponse();
383
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
384
+ studentViewPage.steps.clickOnGoToGradingViewButton();
385
+ gradingViewPage.steps.verifyGradingViewScore('', 20);
386
+ }
387
+ if (view === 'Question preview' || view === 'Item preview') {
388
+ chartsLinePage.steps.checkManuallyScoredScoringLabel();
389
+ }
390
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
391
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(2);
392
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(3);
393
+ chartsLinePage.steps.verifyCorrectAnswerSectionNotExist();
394
+ });
395
+ });
396
+ });
397
+
398
+ views.forEach((view) => {
399
+ describe(`${view}: Charts - Line: Non scored`, { tags: 'smoke' }, () => {
400
+ abortEarlySetup();
401
+ before(() => {
402
+ switch (view) {
403
+ case 'Question preview':
404
+ chartsLinePage.steps.navigateToCreateQuestion('charts');
405
+ cy.barsPreLoaderWait();
406
+ chartsLinePage.steps.addTextInQuestionInstructionsInputField('Set the point on the chart for the profits of the years');
407
+ chartsLinePage.steps.selectLineButton();
408
+ chartsLinePage.steps.addBarOrPointInChartInSelectChartTypeSection();
409
+ chartsLinePage.steps.addBarOrPointInChartInSelectChartTypeSection();
410
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 0, value: 3, range: 10 });
411
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 1, value: 2, range: 10 });
412
+ chartsLinePage.steps.setPointValueInSelectChartTypeSection({ pointIndex: 3, value: 3, range: 10 });
413
+ chartsLinePage.steps.lockPoint(1);
414
+ chartsLinePage.steps.expandScoringTypeDropdown();
415
+ chartsLinePage.steps.selectOptionFromScoringTypeDropdown('Non scored');
416
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
417
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 2, value: 6, range: 10 });
418
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({ pointIndex: 3, value: 5, range: 10 });
419
+ chartsLinePage.steps.switchToPreviewTab();
420
+ break;
421
+ case 'Item preview':
422
+ cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
423
+ itemPreviewPage.steps.switchToPreviewTab();
424
+ break;
425
+ case 'Grading view':
426
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
427
+ break;
428
+ }
429
+ });
430
+
431
+ beforeEach(() => {
432
+ switch (view) {
433
+ case 'Question preview':
434
+ chartsLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
435
+ chartsLinePage.steps.resetQuestionPreview();
436
+ break;
437
+ case 'Item preview':
438
+ itemPreviewPage.steps.switchToStudentView();
439
+ itemPreviewPage.steps.resetQuestionPreview();
440
+ break;
441
+ case 'Grading view':
442
+ cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
443
+ break;
444
+ }
445
+ });
446
+
447
+ if (view === 'Question preview') {
448
+ after(() => {
449
+ chartsLinePage.steps.clickOnSaveQuestionButton();
450
+ utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
451
+ itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
452
+ });
453
+ }
454
+
455
+ 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', () => {
456
+ if (view === 'Grading view') {
457
+ studentViewPage.steps.submitResponse();
458
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
459
+ studentViewPage.steps.clickOnGoToGradingViewButton();
460
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
461
+ };
462
+ if (view === 'Question preview' || view === 'Item preview') {
463
+ chartsLinePage.steps.checkNonScoredScoringLabel();
464
+ chartsLinePage.steps.switchToGradingView();
465
+ };
466
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(0);
467
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(1);
468
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(2);
469
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(3);
470
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(4);
471
+ chartsLinePage.steps.verifyCorrectIncorrectStatusMessageNotExists();
472
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
473
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 1, value: 2, range: 10 });
474
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 6, range: 10 });
475
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 5, range: 10 });
476
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 0, range: 10 });
477
+ });
478
+
479
+ it('When the user incorrectly sets a point which was correct by default, non-scoring label should be displayed and on switching to grading view, incorrect icons should be displayed on the incorrectly attempted points and correct answer section should be displayed with the correct answers', () => {
480
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 0, value: 5, range: 10 });
481
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 4, value: 2, range: 10 });
482
+ if (view === 'Grading view') {
483
+ studentViewPage.steps.submitResponse();
484
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
485
+ studentViewPage.steps.clickOnGoToGradingViewButton();
486
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
487
+ };
488
+ if (view === 'Question preview' || view === 'Item preview') {
489
+ chartsLinePage.steps.checkNonScoredScoringLabel();
490
+ chartsLinePage.steps.switchToGradingView();
491
+ };
492
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(0, 'incorrect');
493
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(1);
494
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'incorrect');
495
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
496
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'incorrect');
497
+ chartsLinePage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
498
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
499
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 1, value: 2, range: 10 });
500
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 6, range: 10 });
501
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 5, range: 10 });
502
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 0, range: 10 });
503
+ });
504
+
505
+ it('When the user attempts the question partially correct by setting all points correctly except one, non-scoring label should be displayed and on switching to grading view, correct icons should be displayed on the correct points, incorrect icon on the incorrect point, and correct answer section should be displayed', () => {
506
+ if (view === 'Grading view') {
507
+ studentViewPage.steps.clearResponses();
508
+ }
509
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 0, value: 3, range: 10 });
510
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 6, range: 10 });
511
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 2, range: 10 }); // incorrect
512
+ if (view === 'Grading view') {
513
+ studentViewPage.steps.submitResponse();
514
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
515
+ studentViewPage.steps.clickOnGoToGradingViewButton();
516
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
517
+ };
518
+ if (view === 'Question preview' || view === 'Item preview') {
519
+ chartsLinePage.steps.checkNonScoredScoringLabel();
520
+ chartsLinePage.steps.switchToGradingView();
521
+ };
522
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(0, 'correct');
523
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(1);
524
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
525
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'incorrect');
526
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
527
+ chartsLinePage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
528
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 0, value: 3, range: 10 });
529
+ chartsLinePage.steps.verifyLockedPointInCorrectAnswerSection({ pointIndex: 1, value: 2, range: 10 });
530
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 2, value: 6, range: 10 });
531
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 3, value: 5, range: 10 });
532
+ chartsLinePage.steps.verifyPointInCorrectAnswerSection({ pointIndex: 4, value: 0, range: 10 });
533
+ });
534
+
535
+ it('When the user attempts the question correctly, non-scoring label should be displayed, correct icons should be displayed for the correct points, a status message with text "Your answer is correct" should be displayed and correct answer section should not be displayed', () => {
536
+ if (view === 'Grading view') {
537
+ studentViewPage.steps.clearResponses();
538
+ }
539
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 2, value: 6, range: 10 });
540
+ chartsLinePage.steps.setPointValueInPreviewTab({ pointIndex: 3, value: 5, range: 10 });
541
+ if (view === 'Grading view') {
542
+ studentViewPage.steps.submitResponse();
543
+ utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
544
+ studentViewPage.steps.clickOnGoToGradingViewButton();
545
+ gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
546
+ } else {
547
+ chartsLinePage.steps.switchToGradingView();
548
+ };
549
+ if (view === 'Question preview' || view === 'Item preview') {
550
+ chartsLinePage.steps.checkNonScoredScoringLabel();
551
+ chartsLinePage.steps.switchToGradingView();
552
+ };
553
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(0, 'correct');
554
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconNotExistsInPreviewTab(1);
555
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(2, 'correct');
556
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(3, 'correct');
557
+ chartsLinePage.steps.verifyPointCorrectIncorrectIconInPreviewTab(4, 'correct');
558
+ chartsLinePage.steps.verifyCorrectIncorrectAnswerLabel('correct');
559
+ chartsLinePage.steps.verifyCorrectAnswerSectionNotExist();
560
+ });
561
+ });
562
+ });
563
+
317
564
  if (!grepTags || !grepTags.includes('smoke')) {
318
565
  describe('Question preview: Auto scored - All or nothing: Minimum scoring', () => {
319
566
  abortEarlySetup();
@@ -33,7 +33,9 @@ describe('Edit item - Charts -Line', () => {
33
33
 
34
34
  it('User should be able to edit correct answer and save the question', () => {
35
35
  chartsLinePage.steps.editItem();
36
- chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({pointIndex: 0, value: 2, range: 10 });
36
+ chartsLinePage.steps.lockPoint(2);
37
+ chartsLinePage.steps.unlockPoint(0);
38
+ chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({pointIndex: 0, value: 3, range: 10 });
37
39
  chartsLinePage.steps.setPointValueInSpecifyCorrectAnswerSection({pointIndex: 1, value: 6, range: 10 });
38
40
  chartsLinePage.steps.saveAQuestionAndVerifySnackbar();
39
41
  });
@@ -95,11 +95,28 @@ describe('Create item page - Charts - Bar: Header section and saving question',
95
95
  before(() => {
96
96
  chartsLinePage.steps.navigateToCreateQuestion('charts');
97
97
  cy.barsPreLoaderWait();
98
+ chartsLinePage.steps.selectLineButton();
98
99
  });
99
100
 
100
- chartsLinePage.tests.verifyCreateItemWrapperContentsA11y();
101
+ describe('Validation error messages', () => {
102
+ dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please set points.']);
103
+
104
+ it('Validation error messages should be displayed below required input fields', () => {
105
+ chartsLinePage.steps.verifyQuestionInstructionsErrorMessageIsNotDisplayed();
106
+ chartsLinePage.steps.verifyWarningIconOnRequiredFields(['Please set points.']);
107
+ chartsLinePage.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
108
+ });
109
+
110
+ it('Validation error messages should disappear when required input fields are filled', () => {
111
+ chartsLinePage.steps.allotPoints(10);
112
+ chartsLinePage.steps.verifyErrorMessageIsNotDisplayed();
113
+ });
114
+
115
+ chartsLinePage.tests.verifyCreateItemWrapperContentsA11y();
116
+ });
101
117
 
102
118
  describe('Saving a question', () => {
119
+
103
120
  it('When user clicks on "Save question" button, then the question should get saved and a snackbar with text \'Saved successfully!\' should be displayed', () => {
104
121
  chartsLinePage.steps.saveAQuestionAndVerifySnackbar();
105
122
  });