itemengine-cypress-automation 1.0.222 → 1.0.223

Sign up to get free protection for your applications and to get access to all the features.
Files changed (184) hide show
  1. package/cypress/e2e/ILC/AudioResponseNew/customizePlaybackControls.js +1 -1
  2. package/cypress/e2e/ILC/AudioResponseNew/studentViewSettings.js +12 -5
  3. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/allOrNothingScoringForAllViews.smoke.js +370 -0
  4. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/gradingViewAndCorrectAnswerView.smoke.js +285 -0
  5. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/previewContentsForAllViews.smoke.js +629 -0
  6. package/cypress/e2e/ILC/ChartsBar/Scoring/addAndDeleteBarAllOrNothingScoring.js +4 -2
  7. package/cypress/e2e/ILC/ChartsBar/Scoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +5 -4
  8. package/cypress/e2e/ILC/ChartsBar/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +2 -1
  9. package/cypress/e2e/ILC/ChartsBar/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +2 -1
  10. package/cypress/e2e/ILC/ChartsBar/Scoring/manuallyAndNonScored.js +2 -1
  11. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightBasic.js +2 -1
  12. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +11 -10
  13. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -1
  14. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -1
  15. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightBasic.js +2 -1
  16. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -1
  17. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +2 -1
  18. package/cypress/e2e/ILC/ChartsBar/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -1
  19. package/cypress/e2e/ILC/ChartsBar/Scoring/toleranceThresholdScoring.js +2 -1
  20. package/cypress/e2e/ILC/ChartsBar/allOrNothingScoringForAllViews.smoke.js +2 -1
  21. package/cypress/e2e/ILC/ChartsBar/gridSettings.js +8 -5
  22. package/cypress/e2e/ILC/ChartsBar/selectChartTypeSection.js +12 -12
  23. package/cypress/e2e/ILC/ChartsLine/editTabScoringSection.js +1 -1
  24. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/allOrNothingBasicForGroupedOptionsLayout.js +0 -1
  25. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionAlternativePointsGreaterThanCorrectPoints.js +3 -2
  26. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionBasic.js +2 -2
  27. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionCorrectPointsGreaterThanAlternativePoints.js +2 -2
  28. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/additionalSettings.js +4 -2
  29. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/additionalSettingsBasic.js +2 -1
  30. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/allOrNothingBasicForAllViews.smoke.js +2 -1
  31. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/clickAndDrop.js +2 -2
  32. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/draggableOptions.js +0 -2
  33. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/pagination.js +2 -2
  34. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/styleAndLayoutCustomizationDraggableOptionsPanel.js +6 -3
  35. package/cypress/e2e/ILC/DrawingResponse/drawingResponseEditTabBasicSection.js +7 -6
  36. package/cypress/e2e/ILC/EssayResponse/editCategoryFlyout.js +1 -1
  37. package/cypress/e2e/ILC/EssayResponse/essayResponseCustomizeFormattingOptions2.js +4 -0
  38. package/cypress/e2e/ILC/EssayResponse/essayResponseCustomizeFormattingOptions3.js +17 -11
  39. package/cypress/e2e/ILC/FeedbackScaleNew/additionalSettings.js +11 -11
  40. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +8 -8
  41. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +2 -2
  42. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +2 -2
  43. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/dropdownAndDropdownMenuSection.js +3 -4
  44. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/dropdownSettings.js +3 -1
  45. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -1
  46. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/Scoring/partialDifferentWeightsBasic.js +4 -4
  47. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +1 -1
  48. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/allOrNothingForAllViews.smoke.js +2 -1
  49. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -1
  50. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +1 -1
  51. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +2 -2
  52. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/dropdownAndDropdownMenuSection.js +2 -4
  53. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -1
  54. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/HeaderSection.js +1 -0
  55. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +1 -1
  56. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +6 -6
  57. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +1 -1
  58. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +1 -1
  59. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/additionalSettingsBasic.js +1 -0
  60. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/editTabScoringSection.js +3 -3
  61. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -1
  62. package/cypress/e2e/ILC/FillInTheGapsTextNew/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +6 -6
  63. package/cypress/e2e/ILC/FillInTheGapsTextNew/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +1 -1
  64. package/cypress/e2e/ILC/FillInTheGapsTextNew/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +1 -1
  65. package/cypress/e2e/ILC/FillInTheGapsTextNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -1
  66. package/cypress/e2e/ILC/Graphing/layoutAndGridOptions.js +53 -44
  67. package/cypress/e2e/ILC/Graphing/toolsControlsAndBackgroundSection.js +4 -6
  68. package/cypress/e2e/ILC/GridFill/customizeLayoutFillImageBackgroundImage.js +2 -2
  69. package/cypress/e2e/ILC/ImageHighlight/Scoring/manuallyAndNonScored.js +2 -1
  70. package/cypress/e2e/ILC/ImageHighlight/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -1
  71. package/cypress/e2e/ILC/ImageHighlight/Scoring/singleSelectionPreviewScoring.js +9 -9
  72. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +1 -1
  73. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +3 -1
  74. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +1 -1
  75. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +1 -1
  76. package/cypress/e2e/ILC/ListOrderingDropdown/minimumScoringPenaltyPointsAndRoundingDropdown.js +3 -3
  77. package/cypress/e2e/ILC/Matching/Scoring/partialDifferentWeightsScoringBasic.js +6 -6
  78. package/cypress/e2e/ILC/Matching/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +1 -1
  79. package/cypress/e2e/ILC/Matching/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +1 -1
  80. package/cypress/e2e/ILC/Matching/additionalSettings.js +1 -0
  81. package/cypress/e2e/ILC/Matching/maximumCapacityPerDropzoneSection.js +8 -56
  82. package/cypress/e2e/ILC/Matching/minimumScoringPenaltyPointsAndRoundingDropdown.js +4 -4
  83. package/cypress/e2e/ILC/Matching/specifyCorrectAnswerSection.js +2 -1
  84. package/cypress/e2e/ILC/Matching/toolSettings.js +1 -1
  85. package/cypress/e2e/ILC/MultipleSelection/editTabScoringSection.js +1 -1
  86. package/cypress/e2e/ILC/MultipleSelection/minimumScoringPenaltyPointsAndRoundingDropdown.js +4 -4
  87. package/cypress/e2e/ILC/MultipleSelection/partialDifferentWeightsBasic.js +6 -6
  88. package/cypress/e2e/ILC/MultipleSelection/partialDifferentWeightsWithAlternativeAnswer.js +1 -0
  89. package/cypress/e2e/ILC/MultipleSelection/partialEqualWeightsWithAlternativeAnswer.js +12 -12
  90. package/cypress/e2e/ILC/MultipleSelection/previewContentsForAllViews.smoke.js +1 -1
  91. package/cypress/e2e/ILC/MultipleSelectionGridNew/allOrNothingBasicForAllViews.smoke.js +48 -48
  92. package/cypress/e2e/ILC/MultipleSelectionGridNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +2 -2
  93. package/cypress/e2e/ILC/NumberLine/LayoutSection.js +22 -25
  94. package/cypress/e2e/ILC/NumberLine/additionalSettings.js +23 -3
  95. package/cypress/e2e/ILC/NumberLine/editTabScoringSection.js +96 -7
  96. package/cypress/e2e/ILC/NumberLine/lineSettingsSection.js +12 -2
  97. package/cypress/e2e/ILC/NumberLine/numberLineSection.js +4 -6
  98. package/cypress/e2e/ILC/NumberLine/specifyCorrectAnswerSection.js +1 -2
  99. package/cypress/e2e/ILC/NumberLine/studentViewSettings.js +3 -2
  100. package/cypress/e2e/ILC/NumberLine/toolSettings.js +1 -1
  101. package/cypress/e2e/ILC/NumberLine/verticalNumberLine/layoutSection.js +3 -5
  102. package/cypress/e2e/ILC/NumberLine/verticalNumberLine/numberLineSection.js +12 -3
  103. package/cypress/e2e/ILC/NumberLineLabel/specifyCorrectAnswerSection.js +1 -1
  104. package/cypress/e2e/ILC/NumberLineLabel/toolSettings.js +1 -1
  105. package/cypress/e2e/ILC/ShortTextResponseNew/allOrNothingBasicForAllViews.smoke.js +2 -1
  106. package/cypress/e2e/ILC/SingleSelection/allOrNothingBasicForAllViews.smoke.js +2 -1
  107. package/cypress/e2e/ILC/SingleSelection/allOrNothingWithAlternativeAnswer.js +9 -9
  108. package/cypress/e2e/ILC/SingleSelection/manuallyAndNonScoredScoring.js +2 -0
  109. package/cypress/e2e/ILC/SingleSelection/previewContents.smoke.js +1 -1
  110. package/cypress/e2e/ILC/SingleSelectionGridNew/editTabBasicSection.js +3 -3
  111. package/cypress/e2e/ILC/SingleSelectionGridNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +2 -2
  112. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchValue.js +20 -0
  113. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodSymbolsAreEquivalent.js +214 -0
  114. package/cypress/e2e/ILC/TextEntryMath/specifyCorrectAnswerSection.js +2 -1
  115. package/cypress/e2e/ILC/TextSelection/textSelectionModesInSpecifyCorrectAnswerSection.js +1 -6
  116. package/cypress/e2e/ILC/TextSelection/textSelectionModesInSpecifyPossibleOptionsSection.js +1 -2
  117. package/cypress/e2e/ILC/{AudioPlayerNew → ToolAudioPlayerNew}/audioOverviewAndTranscript.js +3 -2
  118. package/cypress/e2e/ILC/{AudioPlayerNew → ToolAudioPlayerNew}/customizePlayerLayoutSettings.js +2 -2
  119. package/cypress/e2e/ILC/{AudioPlayerNew → ToolAudioPlayerNew}/standardAudioPlayerStyle.js +3 -3
  120. package/cypress/e2e/ILC/VideoResponseNew/studentViewSettingsCompactRecorderStyle.js +3 -1
  121. package/cypress/e2e/ILC/chartsDotsPlot/additionalSettings.js +6 -6
  122. package/cypress/e2e/ILC/chartsDotsPlot/editTabScoring.js +4 -4
  123. package/cypress/e2e/ILC/chartsDotsPlot/minimumScoringPenaltyPointsAndRoundingDropdown.js +5 -5
  124. package/cypress/e2e/ILC/chartsDotsPlot/scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +3 -1
  125. package/cypress/e2e/ILC/chartsDotsPlot/scoring/allOrNothingWithCorrectPointsEqualToAlternativePoints.js +4 -2
  126. package/cypress/e2e/ILC/chartsDotsPlot/scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +3 -1
  127. package/cypress/e2e/ILC/chartsDotsPlot/scoring/manualAndNonScoredScoring.js +9 -7
  128. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsBasic.js +62 -60
  129. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithAlternativePointsGreaterThanCorrectPoints.js +29 -27
  130. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +45 -45
  131. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialDifferentWeightsWithCorrectPointsGreaterThanAlternativePoints.js +28 -28
  132. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsBasic.js +48 -34
  133. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +41 -38
  134. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +26 -26
  135. package/cypress/e2e/ILC/chartsDotsPlot/scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +41 -38
  136. package/cypress/e2e/ILC/chartsDotsPlot/scoring/toleranceThresholdScoring.js +7 -5
  137. package/cypress/pages/audioPlayerPage.js +2 -2
  138. package/cypress/pages/audioResponsePage.js +1 -0
  139. package/cypress/pages/chartsBarPage.js +177 -76
  140. package/cypress/pages/chartsDotPlotPage.js +28 -43
  141. package/cypress/pages/components/additionalSettingsPanel.js +5 -2
  142. package/cypress/pages/components/barAndLineChartComponent.js +1 -1
  143. package/cypress/pages/components/chartsCommonComponent.js +28 -0
  144. package/cypress/pages/components/colorPopupComponent.js +2 -0
  145. package/cypress/pages/components/createQuestionBasePage.js +1 -0
  146. package/cypress/pages/components/draggableOptionsSectionComponent.js +1 -0
  147. package/cypress/pages/components/editCategoryFlyout.js +6 -4
  148. package/cypress/pages/components/essayResponseCommonComponents.js +1 -1
  149. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +3 -0
  150. package/cypress/pages/components/gridQuestionCommonComponent.js +2 -4
  151. package/cypress/pages/components/imageCanvasComponent.js +7 -5
  152. package/cypress/pages/components/layoutSectionComponent.js +4 -3
  153. package/cypress/pages/components/numberLineCommonComponent.js +38 -21
  154. package/cypress/pages/components/opacityComponent.js +1 -0
  155. package/cypress/pages/components/optionsWrapperComponent.js +1 -0
  156. package/cypress/pages/components/questionInstructionsComponent.js +1 -1
  157. package/cypress/pages/components/responseAreaSettingsPopupComponent.js +8 -0
  158. package/cypress/pages/components/scoringSectionBaseEditTab.js +5 -2
  159. package/cypress/pages/components/toolSettingsComponent.js +1 -0
  160. package/cypress/pages/contentBlocksPage.js +1 -0
  161. package/cypress/pages/dragAndDropIntoCategoriesPage.js +9 -2
  162. package/cypress/pages/fillInTheGapsDropdownPage.js +16 -1
  163. package/cypress/pages/fillInTheGapsOverImageDropdownPage.js +16 -1
  164. package/cypress/pages/fillInTheGapsOverImageTextPage.js +20 -1
  165. package/cypress/pages/graphingPage.js +43 -10
  166. package/cypress/pages/gridFillPage.js +11 -3
  167. package/cypress/pages/matchingPage.js +2 -0
  168. package/cypress/pages/numberLineLabelPage.js +1 -1
  169. package/cypress/pages/numberLinePage.js +25 -24
  170. package/cypress/pages/readingRulerPage.js +6 -2
  171. package/cypress/pages/rulerPage.js +1 -0
  172. package/cypress/pages/shortTextResponsePage.js +3 -1
  173. package/cypress/pages/singleSelectionPage.js +25 -2
  174. package/cypress/pages/textSelectionPage.js +1 -1
  175. package/cypress/pages/videoResponsePage.js +7 -2
  176. package/package.json +1 -1
  177. /package/cypress/e2e/ILC/{AudioPlayerNew → ToolAudioPlayerNew}/allSupportedFileTypes.js +0 -0
  178. /package/cypress/e2e/ILC/{AudioPlayerNew → ToolAudioPlayerNew}/barAudioPlayerStyle.js +0 -0
  179. /package/cypress/e2e/ILC/{AudioPlayerNew → ToolAudioPlayerNew}/compactAudioPlayerStyle.js +0 -0
  180. /package/cypress/e2e/ILC/{AudioPlayerNew → ToolAudioPlayerNew}/headerSection.js +0 -0
  181. /package/cypress/e2e/ILC/{AudioPlayerNew → ToolAudioPlayerNew}/previewContents.smoke.js +0 -0
  182. /package/cypress/e2e/ILC/{AudioPlayerNew → ToolAudioPlayerNew}/studentViewSettings.js +0 -0
  183. /package/cypress/e2e/ILC/{AudioPlayerNew → ToolAudioPlayerNew}/uploadAndAddAudioFile.js +0 -0
  184. /package/cypress/fixtures/uploads/{sample10Sec.mp3 → sampleAudio.mp3} +0 -0
@@ -50,7 +50,7 @@ const selectors = {
50
50
  atIntervalRadioButton: () => cy.get('[data-value="atInterval"] input'),
51
51
  atIntervalLabel: () => cy.get('[data-value="atInterval"] .ngie-radio-label'),
52
52
  xAxisCoordinateSelectChartType: () => cy.get('[class*="Chartsstyles__ChartsQuestionWrapper"] [class*="ChartGridstyle__HorizontalNameDiv"]'),
53
- barLabelHorizontalSelectChartType: () => cy.get('[class*="Chartsstyles__ChartsQuestionWrapper"] [class*="ChartGridstyle__ValueDiv"]'),
53
+ barLabelHorizontalSelectChartType: () => cy.get('[class*="Chartsstyles__ChartsQuestionWrapper"] [class*="ChartGridstyle__ValueDiv"][aria-hidden]'),
54
54
  selectChartTypeMaxXAndYLabel: () => cy.get('[class*="ChartsPreviewstyles__CustomInputFieldLabel"]'),
55
55
  selectChartTypeMaxXAndYInputField: () => cy.get('[class*="ChartsPreviewstyles__CustomInputFieldWrapper"] input'),
56
56
  colorBlockBarTooltipSelectChartType: () => cy.get('[class*="Chartsstyles__ChartsQuestionWrapper"] [class*="ChartTooltipstyles__ColorBox"]'),
@@ -62,7 +62,7 @@ const selectors = {
62
62
  colorBlockBarTooltipSpecifyCorrectAnswer: () => cy.get('.ngie-accordion [class*="ChartTooltipstyles__ColorBox"]'),
63
63
  barLabelBarToolTipSpecifyCorrectAnswer: () => cy.get('.ngie-accordion [class*="ChartTooltipstyles__Label"]'),
64
64
  xAxisCoordinateSpecifyCorrectAnswer: () => cy.get('.ngie-accordion [class*="ChartGridstyle__HorizontalNameDiv"]'),
65
- barLabelHorizontalSpecifyCorrectAnswer: () => cy.get('.ngie-accordion [class*="ChartGridstyle__ValueDiv"]'),
65
+ barLabelHorizontalSpecifyCorrectAnswer: () => cy.get('.ngie-accordion [class*="ChartGridstyle__ValueDiv"][aria-hidden]'),
66
66
 
67
67
  //Preview tab
68
68
  previewTabBarDragHandle: () => cy.get('[class*="question-preview-wrapper"] [class*="ChartsPreviewstyles__PreviewWrapper"] .bar-drag-handle'),
@@ -70,7 +70,7 @@ const selectors = {
70
70
  previewTabBarLabel: () => cy.get('[class*="question-preview-wrapper"] [class*="ChartsPreviewstyles__PreviewWrapper"] [class*="ChartGridstyle__NameDiv-"]'),
71
71
  previewTabBarTooltipColorBlock: () => cy.get('[class*="question-preview-wrapper"] [class*="ChartsPreviewstyles__PreviewWrapper"] [class*="ChartTooltipstyles__ColorBox"]'),
72
72
  xAxisCoordinatePreviewTab: () => cy.get('[class*="question-preview-wrapper"] [class*="ChartsPreviewstyles__PreviewWrapper"] [class*="ChartGridstyle__HorizontalNameDiv"]'),
73
- barLabelHorizontalPreviewTab: () => cy.get('[class*="question-preview-wrapper"] [class*="ChartsPreviewstyles__PreviewWrapper"] [class*="ChartGridstyle__ValueDiv"]'),
73
+ barLabelHorizontalPreviewTab: () => cy.get('[class*="question-preview-wrapper"] [class*="ChartsPreviewstyles__PreviewWrapper"] [class*="ChartGridstyle__ValueDiv"][aria-hidden]'),
74
74
  previewTabToolsAddBarButton: () => cy.get('[class*="question-preview-wrapper"] [class*="ChartsPreviewstyles__PreviewWrapper"] [class*="ChartToolsstyles__ChartToolsWrapper"] button[aria-label="Add bar"]'),
75
75
  }
76
76
 
@@ -96,25 +96,43 @@ const steps = {
96
96
  * @param {number} barProperties.barIndex index of the bar
97
97
  * @param {number} barProperties.value value by which the bar height is to be increased as per Y axis
98
98
  * @param {number} barProperties.range Maximum value of the axis on which bar value is determined
99
+ * @param {("vertical"|"horizontal")} orientation orientation of the chart
99
100
  */
100
- setBarValueInSelectChartTypeSection: ({ barIndex, value, range }) => {
101
+ setBarValueInSelectChartTypeSection: ({ barIndex, value, range }, orientation = 'vertical') => {
101
102
  utilities.getNthElement(chartsBarPage.selectChartTypeBar(), barIndex)
102
103
  .invoke('attr', 'height')
103
104
  .then((barValue) => {
104
105
  let updatedBarValue = value / range
105
106
  let originalBarValue = parseFloat(barValue)
106
107
  let unitChange = 1 / range
107
- if (originalBarValue < updatedBarValue) {
108
- for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
109
- utilities.getNthElement(chartsBarPage.selectChartTypeBarDragHandle(), barIndex)
110
- .focus()
111
- .type('{upArrow}');
108
+ if (orientation === 'vertical') {
109
+ if (originalBarValue < updatedBarValue) {
110
+ for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
111
+ utilities.getNthElement(chartsBarPage.selectChartTypeBarDragHandle(), barIndex)
112
+ .focus()
113
+ .type('{upArrow}');
114
+ }
115
+ } else if (originalBarValue > updatedBarValue) {
116
+ for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
117
+ utilities.getNthElement(chartsBarPage.selectChartTypeBarDragHandle(), barIndex)
118
+ .focus()
119
+ .type('{downArrow}');
120
+ }
112
121
  }
113
- } else if (originalBarValue > updatedBarValue) {
114
- for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
115
- utilities.getNthElement(chartsBarPage.selectChartTypeBarDragHandle(), barIndex)
116
- .focus()
117
- .type('{downArrow}');
122
+ }
123
+ else if (orientation === 'horizontal') {
124
+ if (originalBarValue < updatedBarValue) {
125
+ for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
126
+ utilities.getNthElement(chartsBarPage.selectChartTypeBarDragHandle(), barIndex)
127
+ .focus()
128
+ .type('{rightArrow}');
129
+ }
130
+ } else if (originalBarValue > updatedBarValue) {
131
+ for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
132
+ utilities.getNthElement(chartsBarPage.selectChartTypeBarDragHandle(), barIndex)
133
+ .focus()
134
+ .type('{leftArrow}');
135
+ }
118
136
  }
119
137
  }
120
138
  utilities.getNthElement(chartsBarPage.selectChartTypeBar(), barIndex)
@@ -125,8 +143,9 @@ const steps = {
125
143
  /**
126
144
  * @description updates height of bar once
127
145
  * @param {number} barIndex index of bar
146
+ * @param {('vertical'|'horizontal')} orientation orientation of the chart
128
147
  */
129
- incrementBarValueUsingUpArrowSelectChartType: (barIndex) => {
148
+ increaseBarValueUsingUpArrowSelectChartType: (barIndex) => {
130
149
  utilities.getNthElement(chartsBarPage.selectChartTypeBarDragHandle(), barIndex)
131
150
  .focus()
132
151
  .type('{upArrow}');
@@ -183,9 +202,24 @@ const steps = {
183
202
  },
184
203
 
185
204
  /**
186
- * Verify locked bar is uneditable
187
- * @param {number} barIndex index of the bar
188
- */
205
+ * Verify the bar is locked in correct answer section
206
+ * @param {number} barIndex index of the bar
207
+ */
208
+ verifyBarIsLockedInSelectChartType: (barIndex) => {
209
+ chartsBarPage.chartContainerSelectChartType()
210
+ .within(() => {
211
+ utilities.getNthElement(chartsBarPage.bar(), barIndex)
212
+ .within(() => {
213
+ utilities.verifyElementVisibilityState(chartsBarPage.barLockIcon(), 'visible');
214
+ utilities.verifyElementVisibilityState(chartsBarPage.barDragHandle().find('svg'), 'notExist');
215
+ });
216
+ });
217
+ },
218
+
219
+ /**
220
+ * Verify locked bar is uneditable
221
+ * @param {number} barIndex index of the bar
222
+ */
189
223
  verifyLockedBarIsNotEditableInSelectChartType: (barIndex) => {
190
224
  utilities.getNthElement(chartsBarPage.selectChartTypeBar(), barIndex)
191
225
  .invoke('attr', 'height')
@@ -200,7 +234,7 @@ const steps = {
200
234
  /**
201
235
  * @param {number} barIndex index of the bar
202
236
  */
203
- decrementBarValueUsingDownArrowSelectChartType: (barIndex) => {
237
+ decreaseBarValueUsingDownArrowSelectChartType: (barIndex) => {
204
238
  utilities.getNthElement(chartsBarPage.selectChartTypeBarDragHandle(), barIndex)
205
239
  .focus()
206
240
  .type('{downArrow}');
@@ -223,25 +257,43 @@ const steps = {
223
257
  * @param {number} barProperties.barIndex index of the bar
224
258
  * @param {number} barProperties.value value by which the bar height is to be increased as per Y axis
225
259
  * @param {number} barProperties.range Maximum value of the axis on which bar value is determined
260
+ * @param {("vertical"|"horizontal")} orientation orientation of the chart
226
261
  */
227
- setBarValueInSpecifyCorrectAnswerSection: ({ barIndex, value, range }) => {
262
+ setBarValueInSpecifyCorrectAnswerSection: ({ barIndex, value, range }, orientation = 'vertical') => {
228
263
  utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBar(), barIndex)
229
264
  .invoke('attr', 'height')
230
265
  .then((barValue) => {
231
266
  let updatedBarValue = value / range
232
267
  let originalBarValue = parseFloat(barValue)
233
268
  let unitChange = 1 / range
234
- if (originalBarValue < updatedBarValue) {
235
- for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
236
- utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBarDragHandle(), barIndex)
237
- .focus()
238
- .type('{upArrow}');
269
+ if (orientation === 'vertical') {
270
+ if (originalBarValue < updatedBarValue) {
271
+ for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
272
+ utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBarDragHandle(), barIndex)
273
+ .focus()
274
+ .type('{upArrow}');
275
+ }
276
+ } else if (originalBarValue > updatedBarValue) {
277
+ for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
278
+ utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBarDragHandle(), barIndex)
279
+ .focus()
280
+ .type('{downArrow}');
281
+ }
239
282
  }
240
- } else if (originalBarValue > updatedBarValue) {
241
- for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
242
- utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBarDragHandle(), barIndex)
243
- .focus()
244
- .type('{downArrow}');
283
+ }
284
+ else if (orientation === 'horizontal') {
285
+ if (originalBarValue < updatedBarValue) {
286
+ for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
287
+ utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBarDragHandle(), barIndex)
288
+ .focus()
289
+ .type('{rightArrow}');
290
+ }
291
+ } else if (originalBarValue > updatedBarValue) {
292
+ for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
293
+ utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBarDragHandle(), barIndex)
294
+ .focus()
295
+ .type('{leftArrow}');
296
+ }
245
297
  }
246
298
  }
247
299
  utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBar(), barIndex)
@@ -490,25 +542,43 @@ const steps = {
490
542
  * @param {number} barProperties.barIndex index of the bar
491
543
  * @param {number} barProperties.value value by which the bar height is to be increased as per Y axis
492
544
  * @param {number} barProperties.range Maximum value of the axis on which bar value is determined
545
+ * @param {('vertical'|'horizontal')} orientation orientation of the chart
493
546
  */
494
- setBarValueInPreviewTab: ({ barIndex, value, range }) => {
547
+ setBarValueInPreviewTab: ({ barIndex, value, range }, orientation = 'vertical') => {
495
548
  utilities.getNthElement(chartsBarPage.previewTabBar(), barIndex)
496
549
  .invoke('attr', 'height')
497
550
  .then((barValue) => {
498
551
  let updatedBarValue = value / range
499
552
  let originalBarValue = parseFloat(barValue)
500
553
  let unitChange = 1 / range
501
- if (originalBarValue < updatedBarValue) {
502
- for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
503
- utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
504
- .focus()
505
- .type('{upArrow}');
554
+ if (orientation === 'vertical') {
555
+ if (originalBarValue < updatedBarValue) {
556
+ for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
557
+ utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
558
+ .focus()
559
+ .type('{upArrow}');
560
+ }
561
+ } else if (originalBarValue > updatedBarValue) {
562
+ for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
563
+ utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
564
+ .focus()
565
+ .type('{downArrow}');
566
+ }
506
567
  }
507
- } else if (originalBarValue > updatedBarValue) {
508
- for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
509
- utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
510
- .focus()
511
- .type('{downArrow}');
568
+ }
569
+ else if (orientation === 'horizontal') {
570
+ if (originalBarValue < updatedBarValue) {
571
+ for (let i = originalBarValue; i < updatedBarValue; i = parseFloat((i + unitChange).toFixed(2))) {
572
+ utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
573
+ .focus()
574
+ .type('{rightArrow}');
575
+ }
576
+ } else if (originalBarValue > updatedBarValue) {
577
+ for (let i = originalBarValue; i > updatedBarValue; i = parseFloat((i - unitChange).toFixed(2))) {
578
+ utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
579
+ .focus()
580
+ .type('{leftArrow}');
581
+ }
512
582
  }
513
583
  }
514
584
  utilities.getNthElement(chartsBarPage.previewTabBar(), barIndex)
@@ -516,16 +586,40 @@ const steps = {
516
586
  });
517
587
  },
518
588
 
519
- increaseBarValueUsingUpArrowInPreviewTab: (barIndex) => {
520
- utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
521
- .focus()
522
- .type('{upArrow}');
589
+ /**
590
+ * Increases the bar value at the specified index in the preview tab using the up arrow key.
591
+ * @param {number} barIndex - Index of the bar to increase
592
+ * @param {('vertical'|'horizontal')} orientation orientation of the chart
593
+ */
594
+ increaseBarValueUsingUpArrowInPreviewTab: (barIndex, orientation = 'vertical') => {
595
+ if (orientation === 'vertical') {
596
+ utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
597
+ .focus()
598
+ .type('{upArrow}');
599
+ }
600
+ else if (orientation === 'horizontal') {
601
+ utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
602
+ .focus()
603
+ .type('{rightArrow}');
604
+ }
523
605
  },
524
606
 
525
- decreaseBarValueUsingDownArrowInPreviewTab: (barIndex) => {
526
- utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
527
- .focus()
528
- .type('{downArrow}');
607
+ /**
608
+ * Decreases the bar value at the specified index in the preview tab using the down arrow key.
609
+ * @param {number} barIndex - Index of the bar to decrease.
610
+ * @param {('vertical'|'horizontal')} orientation orientation of the chart
611
+ */
612
+ decreaseBarValueUsingDownArrowInPreviewTab: (barIndex, orientation='vertical') => {
613
+ if (orientation === 'vertical') {
614
+ utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
615
+ .focus()
616
+ .type('{downArrow}');
617
+ }
618
+ else if (orientation === 'horizontal') {
619
+ utilities.getNthElement(chartsBarPage.previewTabBarDragHandle(), barIndex)
620
+ .focus()
621
+ .type('{leftArrow}');
622
+ }
529
623
  },
530
624
 
531
625
  /**
@@ -543,6 +637,23 @@ const steps = {
543
637
  utilities.verifyInnerText(utilities.getNthElement(chartsBarPage.previewTabBarLabel(), barIndex), barLabel);
544
638
  },
545
639
 
640
+ /**
641
+ * @description Edit bar label in preview tab chart
642
+ * @param {number} barIndex Index of the bar to be edited
643
+ * @param {string} barLabel Label to be given to the bar
644
+ */
645
+ editBarLabelHorizontalInPreviewTab: (barIndex, barLabel) => {
646
+ utilities.triggerMouseover(utilities.getNthElement(chartsBarPage.previewTabBar(), barIndex))
647
+ chartsBarPage.barAndPointTooltipLabelButton()
648
+ .click();
649
+ chartsBarPage.titlePopupAddLabelInputField()
650
+ .clear()
651
+ .type(barLabel);
652
+ chartsBarPage.steps.saveGraphLabelPopup();
653
+ utilities.triggerMouseout(utilities.getNthElement(chartsBarPage.previewTabBar(), barIndex));
654
+ utilities.verifyInnerText(utilities.getNthElement(chartsBarPage.barLabelHorizontalPreviewTab(), barIndex), barLabel);
655
+ },
656
+
546
657
  /**
547
658
  * @description Delete bar in preview tab
548
659
  *@param {number} barIndex Index of the bar to be deleted
@@ -716,22 +827,6 @@ const steps = {
716
827
  utilities.verifyInnerText(utilities.getNthElement(chartsBarPage.specifyCorrectAnswerBarLabel(), index), label);
717
828
  },
718
829
 
719
- /**
720
- * @param {("correct" | "incorrect")} answerStatus - The status of the answer.
721
- * @description Verifies the visibility and content of the correct/incorrect answer label block.
722
- * If the answer is correct, it also verifies the visibility of the correct icon;
723
- * otherwise, it verifies the visibility of the incorrect icon.
724
- */
725
- verifyCorrectIncorrectAnswerLabel: (answerStatus) => {
726
- utilities.verifyElementVisibilityState(correctIncorrectAnswerLabelComponent.correctIncorrectAnswerBlock(), 'exist');
727
- utilities.verifyInnerText(correctIncorrectAnswerLabelComponent.correctIncorrectStatusMessageText(), `Your answer is${answerStatus}`)
728
- if (answerStatus === 'correct') {
729
- utilities.verifyElementVisibilityState(autoScoredScoringPreviewTab.correctIcon(), 'visible');
730
- } else {
731
- utilities.verifyElementVisibilityState(autoScoredScoringPreviewTab.incorrectIcon(), 'visible');
732
- }
733
- },
734
-
735
830
  /**
736
831
  * Verifies labels in the y-axis of the select chart type chart.
737
832
  * @param {number} max - The maximum value.
@@ -1104,33 +1199,39 @@ const steps = {
1104
1199
  },
1105
1200
 
1106
1201
  /**
1107
- * Verify bar labels in the horizontal specify correct answer chart.
1108
- * @param {string[]} values - Array of expected label values.
1202
+ * Verifies the text values of bar labels in the horizontal bar
1203
+ * @param {string[]} values - Array of objects where each object contains
1204
+ * @param {number} values.index - Position of the bar label to verify.
1205
+ * @param {string} values.value - Expected text of the bar label at that index.
1109
1206
  */
1110
1207
  verifyBarLabelHorizontalSpecifyCorrectAnswer: (values) => {
1111
- values.forEach((value, index) => {
1208
+ values.forEach(([index, value]) => {
1112
1209
  utilities.getNthElement(chartsBarPage.barLabelHorizontalSpecifyCorrectAnswer(), index)
1113
1210
  .should('have.text', value);
1114
1211
  });
1115
1212
  },
1116
1213
 
1117
1214
  /**
1118
- * Verify bar labels in the horizontal select chart type chart.
1119
- * @param {string[]} values - Array of expected label values.
1120
- */
1215
+ * Verifies the text values of bar labels in the horizontal bar
1216
+ * @param {string[]} values - Array of objects where each object contains
1217
+ * @param {number} values.index - Position of the bar label to verify.
1218
+ * @param {string} values.value - Expected text of the bar label at that index.
1219
+ */
1121
1220
  verifyBarLabelHorizontalSelectChartType: (values) => {
1122
- values.forEach((value, index) => {
1221
+ values.forEach(([index, value]) => {
1123
1222
  utilities.getNthElement(chartsBarPage.barLabelHorizontalSelectChartType(), index)
1124
1223
  .should('have.text', value);
1125
1224
  });
1126
1225
  },
1127
1226
 
1128
1227
  /**
1129
- * Verify bar labels in the horizontal preview tab chart.
1130
- * @param {string[]} values - Array of expected label values.
1228
+ * Verifies the text values of bar labels in the horizontal bar chart
1229
+ * @param {string[]} valuePairs - Array of objects where each object contains
1230
+ * @param {number} valuePairs.index - Position of the bar label to verify.
1231
+ * @param {string} valuePairs.value - Expected text of the bar label at that index.
1131
1232
  */
1132
- verifyBarLabelHorizontalPreviewTab: (values) => {
1133
- values.forEach((value, index) => {
1233
+ verifyBarLabelHorizontalPreviewTab: (valuePairs) => {
1234
+ valuePairs.forEach(([index, value]) => {
1134
1235
  utilities.getNthElement(chartsBarPage.barLabelHorizontalPreviewTab(), index)
1135
1236
  .should('have.text', value);
1136
1237
  });
@@ -90,9 +90,7 @@ const selectors = {
90
90
  labelsNumberLineAxisPreviewTab: () => cy.get('[class*="question-preview-wrapper"] [class*="DotPlotChartstyles__BottomWrapper"]').eq(0).find('.label-wrapper [class*="DotPlotChartstyles__Label"]'),
91
91
  correctAnswersLabel: () => cy.get('[class*="Chartsstyle__CorrectAnswerHeader"]'),
92
92
  //Correct answer section
93
- correctIcon: () => cy.get('.icon-correct'),
94
- incorrectIcon: () => cy.get('.icon-incorrect'),
95
- correctIncorrectAnswerTextWrapper: () => cy.get('[class*="AnswerStatusWrapper"]'),
93
+ correctAnswersLabel: () => cy.get('[class*="CorrectAnswerHeader"]:visible'),
96
94
  dotPlotChartCorrectAnswerSection: () => cy.get('[class*="question-preview-wrapper"] [class*="DotPlotChartstyles__ChartWrapper"]').eq(1),
97
95
  dotColumnCorrectAnswerSection: () => cy.get('.ngie-chart-point'),
98
96
  dotIconCorrectAnswerSection: () => cy.get('.dot-icon'),
@@ -245,8 +243,8 @@ const steps = {
245
243
  },
246
244
 
247
245
  /**
248
- * @description Lock the bar in select chart type section
249
- * @param {number} index Index of the bar to be locked
246
+ * @description Lock the dot column in select chart type section
247
+ * @param {number} index Index of the dot column to be locked
250
248
  */
251
249
  lockDotColumn: ({ point, min, interval }) => {
252
250
  const index = Math.round((point - min) / interval);
@@ -502,8 +500,8 @@ const steps = {
502
500
  },
503
501
 
504
502
  /**
505
- * @description Unlock the bar in select chart type section
506
- * @param {number} index Index of the bar to be locked
503
+ * @description Unlock the dot column in select chart type section
504
+ * @param {number} index Index of the dot column to be locked
507
505
  */
508
506
  unlockDotColumn: ({ point, min, interval }) => {
509
507
  const index = Math.round((point - min) / interval);
@@ -520,8 +518,8 @@ const steps = {
520
518
  },
521
519
 
522
520
  /**
523
- * Verify the bar is unlocked
524
- * @param {number} index index of the bar
521
+ * Verify the dot column is unlocked
522
+ * @param {number} index index of the dot column
525
523
  */
526
524
  verifyDotColumnIsUnlockedInSelectChartType: ({ point, min, interval }) => {
527
525
  const index = Math.round((point - min) / interval);
@@ -858,8 +856,8 @@ const steps = {
858
856
  },
859
857
 
860
858
  /**
861
- * Verify the bar is unlocked
862
- * @param {number} index index of the bar
859
+ * Verify the dot column is unlocked
860
+ * @param {number} index index of the dot column
863
861
  */
864
862
  verifyDotColumnIsUnlockedInSpecifyCorrectAnswer: ({ point, min, interval }) => {
865
863
  const index = Math.round((point - min) / interval);
@@ -1054,8 +1052,8 @@ const steps = {
1054
1052
  },
1055
1053
 
1056
1054
  /**
1057
- * Verify the bar is locked in preview tab
1058
- * @param {number} index index of the bar
1055
+ * Verify the dot column is locked in preview tab
1056
+ * @param {number} index index of the dot column
1059
1057
  */
1060
1058
  verifyDotColumnIsLockedInPreviewTab: ({ point, min, interval }) => {
1061
1059
  const index = Math.round((point - min) / interval);
@@ -1069,8 +1067,8 @@ const steps = {
1069
1067
  },
1070
1068
 
1071
1069
  /**
1072
- * Verify the bar is unlocked in preview tab
1073
- * @param {number} index index of the bar
1070
+ * Verify the dot column is unlocked in preview tab
1071
+ * @param {number} index index of the dot column
1074
1072
  */
1075
1073
  verifyDotColumnIsUnlockedInPreviewTab: ({ point, min, interval }) => {
1076
1074
  const index = Math.round((point - min) / interval);
@@ -1396,36 +1394,10 @@ const steps = {
1396
1394
  },
1397
1395
 
1398
1396
  //correct answer section
1399
- /**
1400
- * @param {("correct" | "incorrect")} answerStatus - The status of the answer.
1401
- * @description Verifies the visibility and content of the correct/incorrect answer label block.
1402
- * If the answer is correct, it also verifies the visibility of the correct icon;
1403
- * otherwise, it verifies the visibility of the incorrect icon.
1404
- */
1405
- verifyCorrectIncorrectAnswerLabel: (answerStatus) => {
1406
- utilities.verifyInnerText(chartsDotPlotPage.correctIncorrectAnswerTextWrapper(), `Your answer is${answerStatus}`)
1407
- chartsDotPlotPage.correctIncorrectAnswerTextWrapper()
1408
- .within(() => {
1409
- if (answerStatus === 'correct') {
1410
- utilities.verifyElementVisibilityState(chartsDotPlotPage.correctIcon(), 'visible');
1411
- } else {
1412
- utilities.verifyElementVisibilityState(chartsDotPlotPage.incorrectIcon(), 'visible');
1413
- }
1414
- });
1415
- },
1416
-
1417
- verifyCorrectIncorrectAnswerLabelNotExists: () => {
1418
- utilities.verifyElementVisibilityState(chartsDotPlotPage.correctIncorrectAnswerTextWrapper(), `notExist`);
1419
- },
1420
-
1421
1397
  verifyCorrectAnswerSectionNotExists: () => {
1422
1398
  utilities.verifyElementVisibilityState(chartsDotPlotPage.dotPlotChartCorrectAnswerSection(), 'notExist');
1423
1399
  },
1424
1400
 
1425
- verifyCorrectIncorrectStatusMessageNotExists: () => {
1426
- utilities.verifyElementVisibilityState(chartsDotPlotPage.correctIncorrectAnswerTextWrapper(), 'notExist');
1427
- },
1428
-
1429
1401
  /**
1430
1402
  * Verifies that the correct dot column
1431
1403
  * @param {object} options - The options object containing point, min, and interval.
@@ -1525,8 +1497,8 @@ const steps = {
1525
1497
  },
1526
1498
 
1527
1499
  /**
1528
- * Verify the bar is locked in preview tab
1529
- * @param {number} index index of the bar
1500
+ * Verify the dot column is locked in preview tab
1501
+ * @param {number} index index of the dot column
1530
1502
  */
1531
1503
  verifyDotColumnIsLockedInCorrectAnswerSection: ({ point, min, interval }) => {
1532
1504
  const index = Math.round((point - min) / interval);
@@ -1628,6 +1600,7 @@ const steps = {
1628
1600
  .clear()
1629
1601
  .type(`${points}`)
1630
1602
  .blur();
1603
+ cy.wait(1000);
1631
1604
  scoringSectionBaseEditTab.pointsInputField()
1632
1605
  .eq(0)
1633
1606
  .should('have.value', points)
@@ -1645,6 +1618,18 @@ const steps = {
1645
1618
  chartsDotPlotPage.toleranceThresholdInputField()
1646
1619
  .focus()
1647
1620
  .blur();
1621
+ },
1622
+ /**
1623
+ * @param {number} points - The expected points value to be verified.
1624
+ * @description Verifies the partial equal weights points per response score for a specific option in the specify correct answer section for a multi-response type question.
1625
+ */
1626
+ verifyPartialEqualWeightsPointsPerResponseScore: (points) => {
1627
+ utilities.verifyInnerText(autoScoredScoringSectionMultiResponseType.partialEqualWeightsPointsPerResponseScore(), points.toString());
1628
+ },
1629
+
1630
+ verifyPointsPerResponseLabel: () => {
1631
+ utilities.verifyInnerText(autoScoredScoringSectionMultiResponseType.pointsPerResponseLabel(), 'Points per response:\n-');
1632
+ utilities.verifyElementVisibilityState(autoScoredScoringSectionMultiResponseType.pointsPerResponseLabel(), 'visible');
1648
1633
  }
1649
1634
  }
1650
1635
 
@@ -2,8 +2,6 @@ import utilities from "../../support/helpers/utilities";
2
2
  import { commonComponents } from "./commonComponents";
3
3
  const css = Cypress.env('css');
4
4
 
5
- const fontSizesOptions = ['Tiny', 'Small', 'Default', 'Normal', 'Big', 'Huge'];
6
-
7
5
  const selectors = {
8
6
  //Comment: added .first() because in fill in the gap questions, multiple accordions are created inside additional settings panel according to number of responses
9
7
  additionalSettingsPanel: () => cy.get('.additional-settings-container .MuiAccordionSummary-root').eq(0),
@@ -40,8 +38,11 @@ const steps = {
40
38
  //V3 - Need to be updated in all files
41
39
  selectFontSizeOptionFromFontSizeDropdown: (dropdownOption) => {
42
40
  additionalSettingsPanel.steps.expandFontSizeDropdown();
41
+ utilities.verifyElementVisibilityState(commonComponents.dropdownList(), 'visible');
43
42
  additionalSettingsPanel.fontSizeListOptions(dropdownOption)
44
43
  .click();
44
+ cy.wait(1000);
45
+ utilities.verifyElementVisibilityState(commonComponents.dropdownList(), 'notExist');
45
46
  },
46
47
 
47
48
  enterTextInTeacherGuidelinesInputField: (teacherGuidelinesText) => {
@@ -170,6 +171,8 @@ const tests = {
170
171
  it(`Clicking on \'Font size\' dropdown should open a list of ${Object.keys(fontSizes).length} options - ${Object.keys(fontSizes).join(',')}`, () => {
171
172
  commonComponents.steps.verifyDropdownIsCollapsed();
172
173
  additionalSettingsPanel.steps.expandFontSizeDropdown();
174
+ cy.log('Adding wait for the dropdown to open');
175
+ cy.wait(2000);
173
176
  utilities.verifyElementVisibilityState(commonComponents.dropdownList(), 'visible');
174
177
  Object.keys(fontSizes).forEach((size, index) => {
175
178
  utilities.verifyInnerText(utilities.getNthElement(additionalSettingsPanel.fontSizeListOptionLabels(), index), size);
@@ -342,7 +342,7 @@ const steps = {
342
342
  },
343
343
 
344
344
  /**
345
- * @description verifies ock unlock icon
345
+ * @description verifies lock unlock icon
346
346
  * @param {('Locked'|'Unlocked')} action
347
347
  */
348
348
  verifyLockUnlockButtonIcon: (action) => {
@@ -40,6 +40,12 @@ const selectors = {
40
40
  xAxisLabelCorrectAnswerSection: () => cy.get('[class*="question-preview-wrapper"] .chart-bottom-wrapper .title-container').eq(1),
41
41
  partialDifferentWeightsPointsInputFieldLabel: () => cy.get('[class*="Chartsstyles__PartialPointsWrapper"] .partial-points-input-label'),
42
42
 
43
+ //correct answer section
44
+ correctAnswersLabel: () => cy.get('[class*="CorrectAnswerHeader"]:visible'),
45
+ correctIcon: () => cy.get('.icon-correct'),
46
+ incorrectIcon: () => cy.get('.icon-incorrect'),
47
+ correctIncorrectAnswerTextWrapper: () => cy.get('[class*="AnswerStatusWrapper"]'),
48
+
43
49
  //scoring section
44
50
  toleranceThresholdLabel: () => cy.get('[class*="AllocatedPointsstyles__PointsWrapper"] .points-label'),
45
51
  toleranceThresholdInputField: () => cy.get('[class*="AllocatedPointsstyles__PointsWrapper"] input')
@@ -236,6 +242,28 @@ const steps = {
236
242
  .trigger('mouseout', { force: true });
237
243
  },
238
244
 
245
+ /**
246
+ * @param {("correct" | "incorrect")} answerStatus - The status of the answer.
247
+ * @description Verifies the visibility and content of the correct/incorrect answer label block.
248
+ * If the answer is correct, it also verifies the visibility of the correct icon;
249
+ * otherwise, it verifies the visibility of the incorrect icon.
250
+ */
251
+ verifyCorrectIncorrectAnswerLabel: (answerStatus) => {
252
+ utilities.verifyInnerText(chartsCommonComponent.correctIncorrectAnswerTextWrapper(), `Your answer is${answerStatus}`)
253
+ chartsCommonComponent.correctIncorrectAnswerTextWrapper()
254
+ .within(() => {
255
+ if (answerStatus === 'correct') {
256
+ utilities.verifyElementVisibilityState(chartsCommonComponent.correctIcon(), 'visible');
257
+ } else {
258
+ utilities.verifyElementVisibilityState(chartsCommonComponent.incorrectIcon(), 'visible');
259
+ }
260
+ });
261
+ },
262
+
263
+ verifyCorrectIncorrectStatusMessageNotExists: () => {
264
+ utilities.verifyElementVisibilityState(chartsCommonComponent.correctIncorrectAnswerTextWrapper(), 'notExist');
265
+ },
266
+
239
267
  verifyPointsPerResponseLabel: () => {
240
268
  utilities.verifyInnerText(autoScoredScoringSectionMultiResponseType.pointsPerResponseLabel(), 'Points per response:\n-');
241
269
  utilities.verifyElementVisibilityState(autoScoredScoringSectionMultiResponseType.pointsPerResponseLabel(), 'visible');
@@ -130,6 +130,8 @@ const steps = {
130
130
  addInputToOpacityInputField: (value) => {
131
131
  colorPopupComponent.opacityInputField()
132
132
  .clear()
133
+ cy.wait(2000);
134
+ colorPopupComponent.opacityInputField()
133
135
  .type(value, { delay: 0 })
134
136
  },
135
137
 
@@ -97,6 +97,7 @@ const steps = {
97
97
  },
98
98
 
99
99
  clickOnCancelButton: () => {
100
+ cy.wait(2000);
100
101
  createQuestionBasePage.cancelButton()
101
102
  .click();
102
103
  }
@@ -60,6 +60,7 @@ const steps = {
60
60
  addGroup: () => {
61
61
  draggableOptionsSectionComponent.addGroupButton()
62
62
  .click();
63
+ cy.wait(1000);
63
64
  },
64
65
 
65
66
  /**