itemengine-cypress-automation 1.0.194-packageUpdate1-2424cfe.0 → 1.0.194

Sign up to get free protection for your applications and to get access to all the features.
Files changed (181) hide show
  1. package/cypress/e2e/ILC/AudioPlayerNew/audioOverviewAndTranscript.js +6 -6
  2. package/cypress/e2e/ILC/AudioPlayerNew/barAudioPlayerStyle.js +4 -4
  3. package/cypress/e2e/ILC/AudioPlayerNew/compactAudioPlayerStyle.js +4 -4
  4. package/cypress/e2e/ILC/AudioPlayerNew/customizePlayerLayoutSettings.js +27 -12
  5. package/cypress/e2e/ILC/AudioPlayerNew/standardAudioPlayerStyle.js +7 -7
  6. package/cypress/e2e/ILC/AudioPlayerNew/uploadAndAddAudioFile.js +1 -1
  7. package/cypress/e2e/ILC/AudioResponseNew/customizePlaybackControls.js +2 -2
  8. package/cypress/e2e/ILC/ChartsBar/previewContentsForAllViews.smoke.js +9 -8
  9. package/cypress/e2e/ILC/ChartsLine/previewContentsForAllViews.smoke.js +1 -1
  10. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/studentViewSettings.js +7 -7
  11. package/cypress/e2e/ILC/DrawingResponse/drawingResponseAdditionalSettings.js +2 -2
  12. package/cypress/e2e/ILC/DrawingResponse/drawingResponseCustomizeAdditionalOptions.js +2 -2
  13. package/cypress/e2e/ILC/EssayResponse/editCategoryFlyout.js +11 -9
  14. package/cypress/e2e/ILC/EssayResponse/equationEditor.smoke.js +0 -1
  15. package/cypress/e2e/ILC/EssayResponse/essayResponseCustomizeFormattingOptions1.smoke.js +1 -0
  16. package/cypress/e2e/ILC/EssayResponse/previewHyperlink.js +1 -1
  17. package/cypress/e2e/ILC/FeedbackScaleNew/numbersFeedbackScaleStyle.js +2 -2
  18. package/cypress/e2e/ILC/FeedbackScaleNew/textFeedbackScaleStyle.js +4 -6
  19. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/dropdownSettings.js +3 -0
  20. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editTabBasicSection.js +1 -1
  21. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/backgroundImageAndCanvasProperties.js +11 -11
  22. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/clickAndDrop.js +1 -1
  23. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/studentViewSettings.js +4 -4
  24. package/cypress/e2e/ILC/FillInTheGapsTextNew/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -1
  25. package/cypress/e2e/ILC/FillInTheGapsTextNew/Scoring/responseLevelAlternateAnswersBasicScoring.js +6 -4
  26. package/cypress/e2e/ILC/Graphing/allOrNothingForAllViews.smoke.js +6 -3
  27. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +2 -1
  28. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +2 -1
  29. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +2 -1
  30. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountAllOrNothingCorrectPointsGreaterThanAlternativePoints.js +2 -1
  31. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountPartialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +7 -1
  32. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountallOrNothingCorrectPointsEqualToAlternativePoints.js +2 -1
  33. package/cypress/e2e/ILC/GridFill/scoring/cellshadeCountAllOrNothingAlternativePointsGreaterThanCorrectPoints.js +2 -1
  34. package/cypress/e2e/ILC/GridFill/scoring/matchExactAndCellShadeCountCombinedScoring.js +2 -1
  35. package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +1 -3
  36. package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +1 -3
  37. package/cypress/e2e/ILC/ImageHighlight/Scoring/partialDifferentWeightsScoring.js +4 -3
  38. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +6 -5
  39. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +6 -5
  40. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +2 -1
  41. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/manuallyAndNonScored.js +2 -1
  42. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -2
  43. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +3 -2
  44. package/cypress/e2e/ILC/ListOrderingDropdown/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -1
  45. package/cypress/e2e/ILC/ListOrderingDropdown/previewContentsForAllViews.smoke.js +3 -3
  46. package/cypress/e2e/ILC/Matching/Scoring/allOrNothingWithCorrectPointsEqualToAlternativePoints.js +4 -4
  47. package/cypress/e2e/ILC/Matching/Scoring/partialDifferentWeightsWithAlternativePointsGreaterThanCorrectPoints.js +4 -4
  48. package/cypress/e2e/ILC/Matching/Scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +4 -4
  49. package/cypress/e2e/ILC/Matching/Scoring/partialDifferentWeightsWithCorrectPointsGreaterThanAlternativePoints.js +4 -4
  50. package/cypress/e2e/ILC/Matching/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +4 -4
  51. package/cypress/e2e/ILC/Matching/Scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +4 -4
  52. package/cypress/e2e/ILC/Matching/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +4 -4
  53. package/cypress/e2e/ILC/Matching/additionalSettings.js +4 -4
  54. package/cypress/e2e/ILC/Matching/draggableOptions.js +1 -1
  55. package/cypress/e2e/ILC/Matching/specifyCorrectAnswerSection.js +1 -1
  56. package/cypress/e2e/ILC/Matching/studentViewSettings.js +3 -3
  57. package/cypress/e2e/ILC/Matching/studentViewSettingsForGroupedLayout.js +4 -4
  58. package/cypress/e2e/ILC/MultipleSelection/allOrNothingBasicForAllViews.smoke.js +0 -4
  59. package/cypress/e2e/ILC/MultipleSelection/allOrNothingWithAlternativeAnswer.js +78 -86
  60. package/cypress/e2e/ILC/MultipleSelection/checkAnswerFunctionalityForAllViews.smoke.js +1 -6
  61. package/cypress/e2e/ILC/MultipleSelectionGridNew/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +12 -12
  62. package/cypress/e2e/ILC/MultipleSelectionGridNew/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +9 -5
  63. package/cypress/e2e/ILC/MultipleSelectionGridNew/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -2
  64. package/cypress/e2e/ILC/NumberLine/toolsAndControls.js +9 -21
  65. package/cypress/e2e/ILC/NumberLineLabel/editTabBasicSection.js +6 -5
  66. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/numberLineSection.js +2 -2
  67. package/cypress/e2e/ILC/Ruler/rulerEditTabBasicsSection.js +5 -5
  68. package/cypress/e2e/ILC/Ruler/rulerEditTabFunctionality.js +2 -2
  69. package/cypress/e2e/ILC/Ruler/rulerHeaderSection.js +12 -21
  70. package/cypress/e2e/ILC/ShortTextResponseNew/responseAnswersAndAcceptedStudentInput.js +13 -13
  71. package/cypress/e2e/ILC/ShortTextResponseNew/studentViewSettings.js +5 -5
  72. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodEquivalentStructures.js +7 -7
  73. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchExact.js +3 -3
  74. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchValue.js +5 -4
  75. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodSymbolsAreEquivalent.js +5 -5
  76. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodValueIsEquivalent.js +5 -5
  77. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodsWithoutSetResponse.js +1 -1
  78. package/cypress/e2e/ILC/TextEntryMathWithImage/backgroundImageAndCanvasProperties.js +30 -30
  79. package/cypress/e2e/ILC/TextSelection/Scoring/allOrNothingAlternatePointsMoreThanCorrectPoints.js +2 -2
  80. package/cypress/e2e/ILC/TextSelection/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +1 -1
  81. package/cypress/e2e/ILC/TextSelection/Scoring/allOrNothingCorrectPointsMoreThanAlternatePoints.js +1 -1
  82. package/cypress/e2e/ILC/TextSelection/Scoring/basicScoringForAllTextSelectionTypes.smoke.js +1 -1
  83. package/cypress/e2e/ILC/TextSelection/Scoring/manuallyAndNonScored.js +1 -1
  84. package/cypress/e2e/ILC/TextSelection/Scoring/partialDifferentWeightsBasic.js +1 -1
  85. package/cypress/e2e/ILC/TextSelection/Scoring/partialDifferentWeightsWithAlternativePointsGreaterThanCorrectPoints.js +1 -1
  86. package/cypress/e2e/ILC/TextSelection/Scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +1 -1
  87. package/cypress/e2e/ILC/TextSelection/Scoring/partialDifferentWeightsWithCorrectPointsGreaterThanAlternativePoints.js +1 -1
  88. package/cypress/e2e/ILC/TextSelection/Scoring/partialEqualWeightsBasic.js +1 -1
  89. package/cypress/e2e/ILC/TextSelection/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +1 -1
  90. package/cypress/e2e/ILC/TextSelection/Scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +1 -1
  91. package/cypress/e2e/ILC/TextSelection/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +1 -1
  92. package/cypress/e2e/ILC/TextSelection/headerSection.js +0 -2
  93. package/cypress/e2e/ILC/TextSelection/studentViewSettings.js +9 -9
  94. package/cypress/e2e/ILC/ToolSettings/toolSettingsContent.js +4 -5
  95. package/cypress/e2e/ILC/UploadResponse/studentViewSettingsSection.js +1 -1
  96. package/cypress/e2e/ILC/VideoResponseNew/compactRecorderStyle.smoke.js +19 -19
  97. package/cypress/e2e/ILC/VideoResponseNew/customizePlaybackControlsCompactRecorderStyle.js +1 -1
  98. package/cypress/e2e/ILC/VideoResponseNew/customizePlaybackControlsStandardRecorderStyle.js +8 -8
  99. package/cypress/e2e/ILC/VideoResponseNew/editTabBasicSection.js +3 -3
  100. package/cypress/e2e/ILC/VideoResponseNew/previewContentsForAllViews.smoke.js +3 -3
  101. package/cypress/e2e/ILC/VideoResponseNew/standardRecorderStyle.js +2 -2
  102. package/cypress/e2e/ThirdPartyQuestions/Desmos/desmosFourFunctionCalculatorPreviewContents.smoke.js +1 -1
  103. package/cypress/e2e/ThirdPartyQuestions/Desmos/desmosGraphingCalculatorPreviewContents.smoke.js +1 -1
  104. package/cypress/e2e/ThirdPartyQuestions/Desmos/desmosMatrixCalculatorPreviewContents.smoke.js +1 -1
  105. package/cypress/e2e/ThirdPartyQuestions/Desmos/desmosScientificCalculatorEditTabBasicSection.js +6 -6
  106. package/cypress/e2e/ThirdPartyQuestions/Desmos/desmosScientificCalculatorPreviewContents.smoke.js +1 -1
  107. package/cypress/e2e/ThirdPartyQuestions/DesmosGraphing/additionalSettings.js +5 -7
  108. package/cypress/e2e/ThirdPartyQuestions/DesmosGraphing/studentViewSettings.js +6 -33
  109. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/3DGraphingCalculatorEditTabBasicSection.js +3 -3
  110. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/3DGraphingCalculatorPreviewTabContents.smoke.js +2 -2
  111. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/casCalculatorEditTabBasicSection.js +3 -3
  112. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/casCalculatorPreviewTabContents.smoke.js +1 -1
  113. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/geometryCalculatorEditTabBasicSection.js +4 -4
  114. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/geometryCalculatorPreviewTabContents.smoke.js +2 -2
  115. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/graphingCalculatorEditTabBasicSection.js +3 -3
  116. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/graphingCalculatorPreviewTabContents.smoke.js +2 -2
  117. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/probablityCalculatorEditTabBasicSection.js +3 -3
  118. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/probablityCalculatorPreviewTabContents.smoke.js +1 -1
  119. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/scientificCalculatorEditTabBasicSection.js +3 -3
  120. package/cypress/e2e/ThirdPartyQuestions/GeoGebra/scientificCalculatorPreviewTabContents.smoke.js +2 -2
  121. package/cypress/e2e/ThirdPartyQuestions/GeogebraActivity/additionalSettings.js +4 -4
  122. package/cypress/e2e/ThirdPartyQuestions/GeogebraActivity/headerSection.js +0 -2
  123. package/cypress/e2e/ThirdPartyQuestions/GeogebraActivity/insertResourceLink.js +1 -1
  124. package/cypress/fixtures/drawingToolbarOptionsAdditionalOptionsAndSpecialAndMathCharacters.js +1 -1
  125. package/cypress/fixtures/theme/ilc.json +8 -2
  126. package/cypress/fixtures/uploads/sample1.txt +4 -0
  127. package/cypress/fixtures/uploads/sample2.txt +13 -0
  128. package/cypress/fixtures/uploads/sample300kb.txt +1 -0
  129. package/cypress/pages/audioPlayerPage.js +3 -2
  130. package/cypress/pages/chartsLinePage.js +2 -1
  131. package/cypress/pages/components/ariaLabelSectionComponent.js +1 -0
  132. package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +2 -2
  133. package/cypress/pages/components/colorPopupComponent.js +1 -1
  134. package/cypress/pages/components/draggableOptionContainer.js +2 -2
  135. package/cypress/pages/components/editCategoryFlyout.js +26 -17
  136. package/cypress/pages/components/enableOuterBorderComponent.js +5 -5
  137. package/cypress/pages/components/fillInTheGapsTextCommonComponent.js +2 -1
  138. package/cypress/pages/components/imageCanvasComponent.js +14 -8
  139. package/cypress/pages/components/layoutSectionComponent.js +1 -1
  140. package/cypress/pages/components/maximumCapacityPerDropzoneComponent.js +1 -1
  141. package/cypress/pages/components/numberLineCommonComponent.js +2 -2
  142. package/cypress/pages/components/questionInputFieldComponent.js +1 -1
  143. package/cypress/pages/components/specifyRowsAndColumnsComponent.js +1 -0
  144. package/cypress/pages/desmosGraphingPage.js +1 -1
  145. package/cypress/pages/desmosToolPage.js +16 -4
  146. package/cypress/pages/drawingResponsePage.js +3 -3
  147. package/cypress/pages/essayResponsePage.js +1 -0
  148. package/cypress/pages/feedbackScalePage.js +13 -3
  149. package/cypress/pages/fillInTheGapsOverImageDragAndDropPage.js +19 -11
  150. package/cypress/pages/geoGebraActivityPage.js +12 -3
  151. package/cypress/pages/geoGebraToolsPage.js +1 -1
  152. package/cypress/pages/graphingPage.js +7 -8
  153. package/cypress/pages/matchingPage.js +8 -12
  154. package/cypress/pages/multipleSelectionPage.js +35 -1
  155. package/cypress/pages/numberLineLabelPage.js +1 -1
  156. package/cypress/pages/numberLinePage.js +36 -8
  157. package/cypress/pages/rulerPage.js +0 -6
  158. package/cypress/pages/selectQuestionResourceToolPage.js +0 -4
  159. package/cypress/pages/singleSelectionPage.js +1 -2
  160. package/cypress/pages/uploadResponsePage.js +2 -2
  161. package/cypress/pages/videoResponsePage.js +11 -11
  162. package/package.json +1 -1
  163. package/cypress/e2e/ILC/ChartsLine/allOrNothingScoringForAllViews.smoke.js +0 -366
  164. package/cypress/e2e/ILC/UploadResponse/uploadResponseAdditionalSettings.js +0 -41
  165. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/allOrNothingForAllViews.smoke.js +0 -0
  166. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/allOrNothingGroupedScoring.js +0 -0
  167. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +0 -0
  168. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/allOrNothingWithCorrectPointsEqualToAlternativePoints.js +0 -0
  169. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +0 -0
  170. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/manuallyAndNonScored.js +0 -0
  171. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +0 -0
  172. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/partialDifferentWeightsBasic.js +0 -0
  173. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +0 -0
  174. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/partialDifferentWeightsWithCorrectPointsGreaterThanAlternativePoints.js +0 -0
  175. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/partialEqualWeightsBasic.js +0 -0
  176. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +0 -0
  177. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +0 -0
  178. /package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/{FillInTheGapsOverImageDragAndDropScoring → Scoring}/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +0 -0
  179. /package/cypress/e2e/ILC/UploadResponse/{uploadResponseEditTabBasicSections.js → editTabBasicSection.js} +0 -0
  180. /package/cypress/e2e/ILC/UploadResponse/{uploadResponseHeaderSection.js → headerSection.js} +0 -0
  181. /package/cypress/e2e/ILC/UploadResponse/{uplodResponsePreviewUploadedFileProperties.js → uploadedFileProperties.js} +0 -0
@@ -327,9 +327,9 @@ const steps = {
327
327
 
328
328
  /**
329
329
  * @description Verify compact player option button is selected
330
- * @param {string} toggleButton button label
330
+ * @param {string} button button label
331
331
  */
332
- selectCompactPlayerOptionButton: (toggleButton) => {
332
+ selectCompactPlayerOptionButton: (button) => {
333
333
  switch (button) {
334
334
  case 'Default':
335
335
  audioPlayerPage.defaultPlayerOptionButton()
@@ -850,6 +850,7 @@ const steps = {
850
850
  audioPlayerPage.transcriptInputTypeFile()
851
851
  .attachFile(filePath);
852
852
  utilities.verifyElementVisibilityState(audioPlayerPage.transcriptFileUploadProgressBar(), 'hidden');
853
+ audioPlayerPage.steps.addWaitToPlayAudio(1000);
853
854
  },
854
855
 
855
856
  /**
@@ -1,5 +1,5 @@
1
1
  import utilities from "../support/helpers/utilities";
2
- import { autoScoredScoringPreviewTab, autoScoredStudentViewSettings, barAndLineChartComponent, chartsCommonComponent, commonComponents, createQuestionBasePage, questionInstructionsComponent, resetPopupComponent } from "./components";
2
+ import { autoScoredScoringPreviewTab, autoScoredStudentViewSettings, barAndLineChartComponent, chartsCommonComponent, commonComponents, createQuestionBasePage, questionInstructionsComponent, resetPopupComponent, scoringSectionBaseEditTab } from "./components";
3
3
  import { dialogBoxBase } from "./dialogBoxBase";
4
4
  const css = Cypress.env('css');
5
5
 
@@ -32,6 +32,7 @@ const steps = {
32
32
  ...resetPopupComponent.steps,
33
33
  ...autoScoredScoringPreviewTab.steps,
34
34
  ...autoScoredStudentViewSettings.steps,
35
+ ...scoringSectionBaseEditTab.steps,
35
36
  ...chartsCommonComponent.steps,
36
37
  /**
37
38
  * @description set the point height/value in the select chart type section chart
@@ -32,6 +32,7 @@ const steps = {
32
32
  .eq(inputFieldIndex)
33
33
  .type(text)
34
34
  .should('have.value', text)
35
+ .blur();
35
36
  },
36
37
 
37
38
  /**
@@ -300,8 +300,8 @@ const tests = {
300
300
  it('\'+ Add alternative answer\' button should be present', () => {
301
301
  utilities.verifyInnerText(autoScoredSpecifyCorrectAnswerSection.alternativeAnswerButton(), 'Add alternative answer');
302
302
  utilities.verifyElementVisibilityState(autoScoredSpecifyCorrectAnswerSection.alternativeAnswerButton(), 'visible');
303
- autoScoredSpecifyCorrectAnswerSection.alternativeAnswerButton()
304
- .verifyPseudoClassBeforeProperty('content', '""');
303
+ // autoScoredSpecifyCorrectAnswerSection.alternativeAnswerButton()
304
+ // .verifyPseudoClassBeforeProperty('content', '""');
305
305
  });
306
306
 
307
307
  it('CSS of \'Add Alternative answer\' button', { tags: 'css' }, () => {
@@ -288,7 +288,7 @@ const tests = {
288
288
  utilities.verifyElementVisibilityState(colorPopupComponent.setToNoColorButton(), 'visible');
289
289
  utilities.verifyInnerText(colorPopupComponent.cancelButton(), 'Cancel');
290
290
  utilities.verifyElementVisibilityState(colorPopupComponent.cancelButton(), 'visible');
291
- utilities.verifyInnerText(colorPopupComponent.okButton(), 'OK');
291
+ utilities.verifyInnerText(colorPopupComponent.okButton(), 'Ok');
292
292
  utilities.verifyElementVisibilityState(colorPopupComponent.okButton(), 'visible');
293
293
  });
294
294
 
@@ -17,7 +17,7 @@ const selectors = {
17
17
  groupedOptionsContainerPreviewTab: () => cy.get('[class*="question-preview-wrapper"] [class*="GroupDiv"]'),
18
18
  groupedOptionsTitlePreviewTab: () => cy.get('[class*="question-preview-wrapper"] [class*="GroupTitleWrapper"]'),
19
19
  groupedOptionsGridPreviewTab: () => cy.get('[class*="question-preview-wrapper"] [class*="DraggableGroupsGrid"]'),
20
- draggableOptionText: () => cy.get('.icon-container-wrapper [class*="DraggableItemsstyle__QuestionTextWrapper"]:visible'),
20
+ draggableOptionText: () => cy.get('.icon-container-wrapper [class*="__QuestionTextWrapper"]:visible'),
21
21
  optionContainerItemListPreviewTab: () => cy.get('[class*="question-preview-wrapper"] .item-list'),
22
22
  optionContainerItemListSpecifyCorrectAnswerSection: () => cy.get('.item-list'),
23
23
  draggableOptionDragIcon: () => cy.get('.drag-icon-button')
@@ -470,7 +470,7 @@ const tests = {
470
470
 
471
471
  it('When the user enters text in options input fields then the entered text should be displayed in the respective draggable options in a group in the options container of the specify correct answer section', () => {
472
472
  optionsWrapperComponent.steps.addInputToOptionsInputField(options);
473
- cy.wait(200) //Added wait as this is failing due to page updating
473
+ cy.wait(2000) //Added wait as this is failing due to page updating
474
474
  draggableOptionContainer.steps.verifyGroupedContainerContentsInSpecifyCorrectAnswerSection(0, options);
475
475
  });
476
476
 
@@ -67,10 +67,11 @@ const steps = {
67
67
  selectCategoryCharactersUsingIndex: (index) => {
68
68
  editCategoryFlyout.categoryCharacters()
69
69
  .eq(index)
70
+ .click()
70
71
  .should('have.class', 'Mui-selected');
71
72
  },
72
73
 
73
- deselectCategoryCharacters: (characterAriaLabel) => {
74
+ deselectCategoryCharacter: (characterAriaLabel) => {
74
75
  editCategoryFlyout.categoryCharacters(characterAriaLabel)
75
76
  .click();
76
77
  },
@@ -161,36 +162,44 @@ const steps = {
161
162
  .should('have.class', 'Mui-selected')
162
163
  .invoke('attr', 'aria-label')
163
164
  .then((ariaLabel) => {
164
- const expectedValue = `${arrayOfSymbolsAriaLabel[index + 1].ariaLabel} selected`;
165
+ const expectedValue = `${arrayOfSymbolsAriaLabel[index].ariaLabel} selected`;
165
166
  expect(ariaLabel.toLowerCase()).to.equal(expectedValue.toLowerCase())
166
167
  });
167
168
  }
168
169
  });
169
170
  },
170
171
 
172
+
171
173
  /**
172
- * @description this function verifies the drag icon of category characters along with its title and text element
173
- * @param {string[]} symbolsArray array of aria label of category characters
174
- */
175
- verifyCategoryCharactersDragIconAndTitle: (symbolsArray) => {
174
+ * @description this function verifies the aria label of category characters along with its selected state
175
+ * @param {string[]} symbolsArray array of aria label of category characters
176
+ */
177
+ verifyCategoryCharactersAndSelectedStateForEditedCategory: (arrayOfSymbolsAriaLabel) => {
178
+ editCategoryFlyout.categoryCharacters()
179
+ .then(($symbols) => {
180
+ for (let index = 0; index < $symbols.length - 1; index++) {
181
+ editCategoryFlyout.categoryCharacters()
182
+ .eq(index)
183
+ .should('have.class', 'Mui-selected')
184
+ .invoke('attr', 'aria-label')
185
+ .then((ariaLabel) => {
186
+ const expectedValue = `${arrayOfSymbolsAriaLabel[index + 1].ariaLabel} selected`;
187
+ expect(ariaLabel.toLowerCase()).to.equal(expectedValue.toLowerCase())
188
+ });
189
+ }
190
+ });
191
+ },
192
+
193
+ verifyCategoryCharactersDragIcon: () => {
176
194
  editCategoryFlyout.categoryCharacters()
177
- .each(($el, index) => {
195
+ .each(($el) => {
178
196
  cy.wrap($el)
179
197
  .within(() => {
180
198
  editCategoryFlyout.characterDragIcon()
181
199
  .should('be.visible')
182
200
  editCategoryFlyout.characterTickIcon()
183
201
  .should('not.have.attr', 'aria-checked', 'false');
184
- })
185
- if (symbolsArray[index].title) {
186
- cy.wrap($el)
187
- .find('title')
188
- .should('have.text', symbolsArray[index].title);
189
- }
190
- if (symbolsArray[index].textElement) {
191
- cy.wrap($el)
192
- .verifyInnerText(symbolsArray[index].textElement)
193
- }
202
+ });
194
203
  });
195
204
  }
196
205
  }
@@ -2,8 +2,8 @@ import utilities from "../../support/helpers/utilities";
2
2
  const css = Cypress.env('css');
3
3
 
4
4
  const selectors = {
5
- enableOuterBorderLabel: () => cy.get('[data-ngie-testid="enable-outer-border-checkbox"] .MuiFormControlLabel-label'),
6
- enableOuterBorderCheckbox: () => cy.get('[data-ngie-testid="enable-outer-border-checkbox"] input'),
5
+ enableOuterBorderLabel: () => cy.get('[data-ngie-testid="enable-outer-border-for-question-checkbox"] .MuiFormControlLabel-label'),
6
+ enableOuterBorderCheckbox: () => cy.get('[data-ngie-testid="enable-outer-border-for-question-checkbox"] input'),
7
7
  }
8
8
 
9
9
  const steps = {
@@ -32,14 +32,14 @@ const steps = {
32
32
 
33
33
  const tests = {
34
34
  verifyEnableOuterBorderContents: () => {
35
- it('\'Enable outer border\' label and checkbox should be displayed. By default, \'Enable outer border\' checkbox should be in checked state', () => {
36
- utilities.verifyInnerText(enableOuterBorderComponent.enableOuterBorderLabel(), 'Enable outer border');
35
+ it('\'Enable outer border for question\' label and checkbox should be displayed. By default, \'Enable outer border for question\' checkbox should be in checked state', () => {
36
+ utilities.verifyInnerText(enableOuterBorderComponent.enableOuterBorderLabel(), 'Enable outer border for question');
37
37
  utilities.verifyElementVisibilityState(enableOuterBorderComponent.enableOuterBorderLabel(), 'visible');
38
38
  utilities.verifyElementVisibilityState(enableOuterBorderComponent.enableOuterBorderCheckbox(), 'exist');
39
39
  enableOuterBorderComponent.steps.verifyEnableOuterBorderCheckboxCheckedState();
40
40
  });
41
41
 
42
- it('CSS of \'Enable outer border\' label and checkbox - checked state', { tags: 'css' }, () => {
42
+ it('CSS of \'Enable outer border for question\' label and checkbox - checked state', { tags: 'css' }, () => {
43
43
  utilities.verifyCSS(enableOuterBorderComponent.enableOuterBorderLabel(), {
44
44
  'color': css.color.labelText,
45
45
  'font-size': css.fontSize.normal,
@@ -104,7 +104,7 @@ const steps = {
104
104
  responses.forEach(({ responseIndex, responseText }) => {
105
105
  utilities.getNthElement(fillInTheGapsTextCommonComponent.answerInputFieldSpecifyCorrectAnswerSection(), responseIndex)
106
106
  .clear()
107
- .type(responseText)
107
+ .type(responseText, { delay: 500 })
108
108
  .blur();
109
109
  });
110
110
  },
@@ -1516,6 +1516,7 @@ const tests = {
1516
1516
 
1517
1517
  it('When user adds alternate answer input field, then accepted student input should be applied on both the response answer input fields in the response accordion', () => {
1518
1518
  fillInTheGapsTextCommonComponent.steps.addAlternateAnswerInResponseAccordion(0);
1519
+ fillInTheGapsTextCommonComponent.steps.enterTextInAnswerInputFieldsSpecifyCorrectAnswerSection([{ responseIndex: 0, responseText: 'Hi12' }]);
1519
1520
  fillInTheGapsTextCommonComponent.steps.enterTextInAnswerInputFieldsSpecifyCorrectAnswerSection([{ responseIndex: 1, responseText: 'Hi12' }]);
1520
1521
  fillInTheGapsTextCommonComponent.steps.verifyTextInResponseAccordionAnswerInputField([{ responseIndex: 1, responseText: 'Hi12' }]);
1521
1522
  });
@@ -24,7 +24,7 @@ const selectors = {
24
24
  clearAllButton: () => cy.get('[aria-label="clear all"]'),
25
25
  canvasSelectedMenuText: () => cy.get('[class*="Canvasstyle__CanvasSelectedMenuTxt"]'),
26
26
  responseAreaWrapper: () => cy.get('[class*="Canvasstyle__ResponseDiv"]'),
27
- responseAreaPointer: () => cy.get('[class*="Canvasstyle__PointerWrapper"]'),
27
+ responseAreaPointer: () => cy.get('[class*="__PointerWrapper"]'),
28
28
  responseArea: () => cy.get('[class*="Canvasstyle__DropZone"]'),
29
29
  textBoxInPreviewTab: () => cy.get('[class*="PreviewTabstyles__ContentWrapper"] textarea[class*="TextBox"]'),
30
30
  removeResponseAreaButton: () => cy.get('.remove-button'),
@@ -251,7 +251,7 @@ const steps = {
251
251
 
252
252
  verifyNoImageAlternativeTextPresentInPreviewTab: () => {
253
253
  imageCanvasComponent.canvasImageInPreviewTab()
254
- .should('have.attr', 'alt', 'highlightImage.jpg');
254
+ .should('have.attr', 'alt', '');
255
255
  },
256
256
 
257
257
  verifyNoImageAlternativeTextPresentInEditTab: () => {
@@ -456,10 +456,13 @@ const steps = {
456
456
  }
457
457
  const expectedPosition = getPosition(style);
458
458
  if (style == 'left' || style == 'bottom left') {
459
- imageCanvasComponent.responseAreaPointer()
459
+ imageCanvasComponent.responseAreaWrapper()
460
460
  .eq(responseAreaIndex)
461
- .should('have.css', 'bottom', expectedPosition.bottom)
462
- .and('have.css', 'left', expectedPosition.left);
461
+ .within(() => {
462
+ imageCanvasComponent.responseAreaPointer()
463
+ .should('have.css', 'bottom', expectedPosition.bottom)
464
+ .and('have.css', 'left', expectedPosition.left);
465
+ })
463
466
  }
464
467
  else if (style == 'none') {
465
468
  imageCanvasComponent.responseArea()
@@ -467,10 +470,13 @@ const steps = {
467
470
  .should('not.contain', '[class*="Canvasstyle__PointerWrapper"]');
468
471
  }
469
472
  else {
470
- imageCanvasComponent.responseAreaPointer()
473
+ imageCanvasComponent.responseAreaWrapper()
471
474
  .eq(responseAreaIndex)
472
- .should('have.css', 'top', expectedPosition.top)
473
- .and('have.css', 'left', expectedPosition.left);
475
+ .within(() => {
476
+ imageCanvasComponent.responseAreaPointer()
477
+ .should('have.css', 'top', expectedPosition.top)
478
+ .and('have.css', 'left', expectedPosition.left);
479
+ });
474
480
  }
475
481
  },
476
482
 
@@ -533,7 +533,7 @@ const steps = {
533
533
  layoutSectionComponent.numberLineNumberLineSection()
534
534
  .parents('.ngie-jxgbox')
535
535
  .find('.number-line-tick-font')
536
- .should('not.exist');
536
+ .should('be.hidden');
537
537
  },
538
538
 
539
539
  /**
@@ -5,7 +5,7 @@ const selectors = {
5
5
  maxCapacityPerDropzoneDropdown: () => cy.get('#Maximum-capacity-per-dropzone-select'),
6
6
  maxCapacityPerDropzoneDropdownListOptions: (ariaLabel = null) => {
7
7
  if (ariaLabel) {
8
- return cy.get(`[aria-labelledby*="Maximum-capacity-per-dropzone-dropdown-label"] [role="option"][aria-label*="${ariaLabel}"]`)
8
+ return cy.get(`[aria-labelledby*="Maximum-capacity-per-dropzone-dropdown-label"] [role="option"][aria-label="${ariaLabel}"]`)
9
9
  } else {
10
10
  return cy.get('[aria-labelledby*="Maximum-capacity-per-dropzone-dropdown-label"] [role="option"]')
11
11
  }
@@ -122,7 +122,7 @@ const steps = {
122
122
  numberLineCommonComponent.numberLineSpecifyCorrectAnswer()
123
123
  .parents('.ngie-jxgbox')
124
124
  .find('.number-line-tick-font')
125
- .should('not.exist');
125
+ .should('be.hidden');
126
126
  },
127
127
 
128
128
  /**
@@ -247,7 +247,7 @@ const steps = {
247
247
  numberLineCommonComponent.numberLinePreviewTab()
248
248
  .parents('.ngie-jxgbox')
249
249
  .find('.number-line-tick-font')
250
- .should('not.exist');
250
+ .should('be.hidden');
251
251
  },
252
252
 
253
253
  /**
@@ -42,7 +42,7 @@ const steps = {
42
42
  utilities.verifyInnerText(questionInputFieldComponent.responseAreaNumeration(), `${responseAreaIndex + 1}`);
43
43
  utilities.verifyElementVisibilityState(questionInputFieldComponent.responseAreaNumeration(), 'visible');
44
44
  utilities.verifyElementVisibilityState(questionInputFieldComponent.responseAreaCloseButton(), 'visible');
45
- utilities.verifyElementVisibilityState(questionInputFieldComponent.responseAreaSettingsButton(), 'visible');
45
+ utilities.verifyElementVisibilityState(questionInputFieldComponent.responseAreaSettingsButton(), 'notExist');
46
46
  });
47
47
  },
48
48
 
@@ -1,4 +1,5 @@
1
1
  import utilities from "../../support/helpers/utilities";
2
+ const css = Cypress.env('css');
2
3
 
3
4
  const selectors = {
4
5
  //Specify columns and rows
@@ -69,7 +69,7 @@ const steps = {
69
69
  commonComponents.previewTabQuestionWrapper()
70
70
  .within(() => {
71
71
  desmosGraphingPage.desmosGraphingToolExpressionPanel()
72
- .should('have.attr', 'style', 'transform:translate(-100%, 0)');
72
+ .should('not.exist');
73
73
  });
74
74
  },
75
75
 
@@ -17,7 +17,7 @@ const selectors = {
17
17
  heightInputField: () => cy.get('.text-input-field input').eq(1),
18
18
  previewTabDesmosToolVisibilityButton: () => cy.get('.desmos-tool-visibility-button'),
19
19
  previewTabDesmosToolVisibleImage: () => cy.get('.desmos-tool-visibility-button svg'),
20
- previewTabDesmosToolHideImage: () => cy.get('.desmos-tool-visibility-button #Hide_cell'),
20
+ previewTabDesmosToolHideImage: () => cy.get('.desmos-tool-visibility-button [data-name="Hide cell"]'),
21
21
  }
22
22
 
23
23
  const steps = {
@@ -79,7 +79,11 @@ const steps = {
79
79
  * @param {string} desmosName name of the desmos
80
80
  */
81
81
  verifyPreviewTabDesmosToolVisibilityButtonLabel: (visibility, desmosName) => {
82
- utilities.verifyInnerText(desmosToolPage.previewTabDesmosToolVisibilityButton(), `${visibility} Desmos ${desmosName}`)
82
+ if (desmosName === 'Scientific calculator') {
83
+ utilities.verifyInnerText(desmosToolPage.previewTabDesmosToolVisibilityButton(), `${visibility} ${desmosName}`)
84
+ } else {
85
+ utilities.verifyInnerText(desmosToolPage.previewTabDesmosToolVisibilityButton(), `${visibility} Desmos ${desmosName}`)
86
+ }
83
87
  if (visibility == 'Hide') {
84
88
  utilities.verifyElementVisibilityState(desmosToolPage.previewTabDesmosToolHideImage(), 'visible');
85
89
  } else {
@@ -108,7 +112,11 @@ const tests = {
108
112
  */
109
113
  verifyEditTabContents: (desmosTool) => {
110
114
  it(`\'Desmos - ${desmosTool} visibility\' label should be displayed on the edit tab`, () => {
111
- desmosToolPage.steps.verifyDesmosVisibilityLabel(`Desmos ${desmosTool} visibility`);
115
+ if (desmosTool === 'Scientific calculator') {
116
+ desmosToolPage.steps.verifyDesmosVisibilityLabel(`${desmosTool} visibility`);
117
+ } else {
118
+ desmosToolPage.steps.verifyDesmosVisibilityLabel(`Desmos ${desmosTool} visibility`);
119
+ }
112
120
  });
113
121
 
114
122
  it('\'Width (px)\' and \'Height (px)\' labels with input fields should be displayed and by default it would be set to 600px by 400 px respectively', () => {
@@ -127,7 +135,11 @@ const tests = {
127
135
 
128
136
  it(`When the user checks the \'Add show/hide button\' checkbox then \'Launch the Desmos - ${desmosTool} by default\' checkbox and label should be displayed and by default it should be unchecked`, () => {
129
137
  desmosToolPage.steps.checkAddShowHideButtonCheckbox();
130
- toolVisibilityComponent.steps.verifyLaunchToolByDefaultLabel(`Desmos ${desmosTool}`);
138
+ if (desmosTool === 'Scientific calculator') {
139
+ desmosToolPage.steps.verifyLaunchToolByDefaultLabel(`${desmosTool}`);
140
+ } else {
141
+ toolVisibilityComponent.steps.verifyLaunchToolByDefaultLabel(`Desmos ${desmosTool}`);
142
+ }
131
143
  toolVisibilityComponent.steps.verifyLaunchToolByDefaultCheckboxUnchecked();
132
144
  });
133
145
 
@@ -19,9 +19,9 @@ const selectors = {
19
19
  customizeToolbarOptionsAndControlsLabel: () => cy.get('.customized-options-label'),
20
20
  toolbarOptionsAndControlsFormattingOptionsTiles: (toolbarOptionTitle = null) => {
21
21
  if (toolbarOptionTitle) {
22
- return cy.get(`.icon-button-custom-format[aria-label*="${toolbarOptionTitle}"]`)
22
+ return cy.get(`[class*="CustomizedOptionsToolBarstyles__DragAndDropWrapper"] .icon-button-custom-format[aria-label*="${toolbarOptionTitle}"]`)
23
23
  } else {
24
- return cy.get('.icon-button-custom-format')
24
+ return cy.get('[class*="CustomizedOptionsToolBarstyles__DragAndDropWrapper"] .icon-button-custom-format')
25
25
  }
26
26
  },
27
27
  toolBarOptionsLabel: () => cy.get('[class*="ToolbarLabel"]').eq(0),
@@ -637,7 +637,7 @@ const steps = {
637
637
  verifySecondaryPopupLineType: (lineType, index) => {
638
638
  drawingResponsePage.previewTabSecondaryOptionPopupOptions()
639
639
  .eq(index)
640
- .should('have.attr', 'aria-label', `Line type ${lineType}`);
640
+ .should('have.attr', 'aria-label', `Line Type ${lineType}`);
641
641
  },
642
642
 
643
643
  /**
@@ -106,6 +106,7 @@ const tableDialogBox = {
106
106
  }
107
107
 
108
108
  const hyperlinkDialogBox = {
109
+ hyperlinkDialogBoxWrapper: () => cy.get('.cke_dialog_body'),
109
110
  hyperlinkDialogBox: () => cy.get('.cke_dialog_body').contains('Hyperlink').parents('.cke_dialog_body'),
110
111
  hyperlinkDialogBoxTitle: () => essayResponsePage.hyperlinkDialogBox().find('.cke_dialog_title'),
111
112
  hyperlinkDialogboxDisplayTextLabel: () => essayResponsePage.hyperlinkDialogBox().find('.cke_dialog_ui_labeled_label').eq(0),
@@ -318,7 +318,7 @@ const steps = {
318
318
  */
319
319
  verifyLegendTextInputFieldPlaceholder: (optionAccordionIndex) => {
320
320
  utilities.getNthElement(feedbackScalePage.legendTextInputField(), optionAccordionIndex)
321
- .should('have.attr', 'placeholder', 'Enter legend text');
321
+ .should('have.attr', 'data-cke-editorplaceholder', 'Enter legend text');
322
322
  },
323
323
 
324
324
  /**
@@ -327,7 +327,7 @@ const steps = {
327
327
  */
328
328
  verifyLegendTextInputFieldPlaceholderNotExists: (optionAccordionIndex) => {
329
329
  utilities.getNthElement(feedbackScalePage.legendTextInputField(), optionAccordionIndex)
330
- .should('not.have.attr', 'placeholder');
330
+ .should('not.have.attr', 'data-cke-editorplaceholder');
331
331
  },
332
332
 
333
333
  /**
@@ -971,7 +971,17 @@ const steps = {
971
971
  default:
972
972
  throw new Error('Invalid radio button');
973
973
  }
974
- }
974
+ },
975
+
976
+ /**
977
+ * Verifies the selected state color of a number feedback button.
978
+ * @param {number} buttonIndex - The index of the number feedback button.
979
+ * @param {string} colorBlock - The expected background color of the number feedback button.
980
+ */
981
+ verifyFeedbackNumberButtonSelectedStateColor: (buttonIndex, colorBlock) => {
982
+ utilities.getNthElement(feedbackScalePage.feedbackNumberButton(), buttonIndex)
983
+ .should('have.css', 'background-color', colorBlock);
984
+ },
975
985
  }
976
986
 
977
987
  const tests = {
@@ -47,7 +47,8 @@ const selectors = {
47
47
  maxLimitInEachDropzoneHelpText: () => cy.get('[class*="Canvasstyle__LimitWrapper"]'),
48
48
  textAreaImageCanvas: () => cy.get('.drag-and-drop-canvas textarea'),
49
49
  textAreaPreviewTab: () => cy.get('.drag-and-drop-layout-wrapper textarea'),
50
- dropzonePointerInPreviewTab: () => cy.get('.preview-content-wrapper [class*="PointerWrapper"]'),
50
+ dropzoneWrapperPreviewTab: () => cy.get('.preview-content-wrapper [class*="Canvasstyle__ResponseDiv"]'),
51
+ dropzonePointerInPreviewTab: () => cy.get('[class*="PointerWrapper"]'),
51
52
  canvasInPreviewTab: () => cy.get('[class*="PreviewTabstyles__ContentWrapper"] [class*="Canvasstyle__DragAndDropCanvas"]'),
52
53
  tickIconWrapper: () => cy.get('.tick-icon-wrapper g[id*="Rectangle"]')
53
54
  }
@@ -179,7 +180,6 @@ const steps = {
179
180
  .contains(optionText)
180
181
  .click({ force: true });
181
182
  draggableOptionContainer.groupedOptionsContainerSpecifyCorrectAnswerSection()
182
- .find('[class*="DraggableGroupItemsstyle__DraggableWrapper"]')
183
183
  .eq(0)
184
184
  .click({ position: 'right' });
185
185
  },
@@ -500,22 +500,30 @@ const steps = {
500
500
  }
501
501
  const expectedPosition = getPosition(style);
502
502
  if (style == 'left' || style == 'bottom left') {
503
- fillInTheGapsOverImageDragAndDropPage.dropzonePointerInPreviewTab()
503
+ fillInTheGapsOverImageDragAndDropPage.dropzoneWrapperPreviewTab()
504
504
  .eq(dropzoneIndex)
505
- .should('have.css', 'bottom', expectedPosition.bottom)
506
- .and('have.css', 'left', expectedPosition.left);
505
+ .within(() => {
506
+ fillInTheGapsOverImageDragAndDropPage.dropzonePointerInPreviewTab()
507
+ .should('have.css', 'bottom', expectedPosition.bottom)
508
+ .and('have.css', 'left', expectedPosition.left);
509
+ });
507
510
  }
508
511
  else if (style == 'none') {
509
- fillInTheGapsOverImageDragAndDropPage.dropzonePointerInPreviewTab()
512
+ fillInTheGapsOverImageDragAndDropPage.dropzoneWrapperPreviewTab()
510
513
  .eq(dropzoneIndex)
511
- .should('not.have.css', 'bottom')
512
- .and('not.have.css', 'left');
514
+ .within(() => {
515
+ fillInTheGapsOverImageDragAndDropPage.dropzonePointerInPreviewTab()
516
+ .should('not.exist')
517
+ });
513
518
  }
514
519
  else {
515
- fillInTheGapsOverImageDragAndDropPage.dropzonePointerInPreviewTab()
520
+ fillInTheGapsOverImageDragAndDropPage.dropzoneWrapperPreviewTab()
516
521
  .eq(dropzoneIndex)
517
- .should('have.css', 'top', expectedPosition.top)
518
- .and('have.css', 'left', expectedPosition.left);
522
+ .within(() => {
523
+ fillInTheGapsOverImageDragAndDropPage.dropzonePointerInPreviewTab()
524
+ .should('have.css', 'top', expectedPosition.top)
525
+ .and('have.css', 'left', expectedPosition.left);
526
+ });
519
527
  }
520
528
  },
521
529
 
@@ -22,7 +22,7 @@ const selectors = {
22
22
 
23
23
  //preview tab
24
24
  geoGebraCanvasWrapperPreviewTab: () => cy.get('[id*="geogebra-activity-app-preview"]'),
25
- geoGebraCanvasPreviewTab: () => cy.get('.geogebra-preview-applet-wrapper canvas[data-test="euclidianView"]'),
25
+ geoGebraCanvasPreviewTab: () => cy.get('.geogebra-preview-applet-wrapper canvas[data-test="euclidianView"]').eq(0),
26
26
  geoGebraResourceFullScreenButtonPreviewTab: () => cy.get('.geogebra-preview-applet-wrapper [data-title="Fullscreen"]'),
27
27
  geoGebraResourceToolbarToolPreviewTab: () => cy.get('.geogebra-preview-applet-wrapper .toolbar_button'),
28
28
  geoGebraResource2EquationPanelPreviewTab: () => cy.get('.geogebra-preview-applet-wrapper .algebraPanel'),
@@ -41,9 +41,10 @@ const steps = {
41
41
  */
42
42
  addInputToInsertResourceLinkInputField: (inputURL) => {
43
43
  geoGebraActivityPage.insertResourceLinkInputField()
44
+ .focus()
44
45
  .clear()
45
- .type(`${inputURL}`)
46
- .blur();
46
+ .type(`${inputURL}`);
47
+ utilities.hoverAwayFromElement();
47
48
  },
48
49
 
49
50
  clearInputToInsertResourceLinkInputField: () => {
@@ -153,6 +154,14 @@ const steps = {
153
154
  geoGebraActivityPage.resetButton()
154
155
  .click();
155
156
  },
157
+
158
+ verifyPointsFieldErrorMessageIsNotDisplayed: () => {
159
+ geoGebraActivityPage.pointsInputField()
160
+ .parents('.points-wrapper')
161
+ .within(() => {
162
+ utilities.verifyElementVisibilityState(scoringSectionBaseEditTab.pleaseEnterPointsErrorMessage(), 'notExist');
163
+ });
164
+ },
156
165
  }
157
166
 
158
167
  const tests = {
@@ -12,7 +12,7 @@ const selectors = {
12
12
  geoGebraToolPreviewTab: () => cy.get('[id*="geogebra-tool"]'),
13
13
  geoGebraToolVisibilityButtonPreviewTab: () => cy.get('button.geogebra-tool-visibility-button'),
14
14
  geoGebraToolVisibleImagePreviewTab: () => cy.get('button.geogebra-tool-visibility-button svg'),
15
- geoGebraToolHideImagePreviewTab: () => cy.get('button.geogebra-tool-visibility-button #Hide_cell'),
15
+ geoGebraToolHideImagePreviewTab: () => cy.get('button.geogebra-tool-visibility-button [data-name="Hide cell"]'),
16
16
  geoGebraToolKeypadKeysPreviewTab: (ariaLabel = null) => {
17
17
  if (ariaLabel) {
18
18
  return cy.get(`.KeyBoardButton[aria-label*="${ariaLabel}"]:visible`)
@@ -30,8 +30,8 @@ const selectors = {
30
30
  yMaxInputField: () => cy.get('[class*="GraphHeaderFooter"] input').eq(0),
31
31
  yMinLabel: () => cy.get('[class*="GraphHeaderFooter"] [class*="CustomInputFieldLabel"]').eq(1),
32
32
  yMinInputField: () => cy.get('[class*="GraphHeaderFooter"] input').eq(1),
33
- titlePopupAddLabelLabel: () => cy.get('[aria-labelledby="alert-dialog-title"] .inline-text-property-label'),
34
- titlePopupAddLabelInputField: () => cy.get('[aria-labelledby="alert-dialog-title"] input'),
33
+ titlePopupAddLabelLabel: () => cy.get('[aria-labelledby="alert-dialog-title"] .additional-settings-label'),
34
+ titlePopupAddLabelInputField: () => cy.get('[aria-labelledby="alert-dialog-title"] [role="textbox"]'),
35
35
  titlePopupCancelButton: () => cy.get('.compact-popup-action-button-wrapper button').eq(0),
36
36
  titlePopupSaveButton: () => cy.get('.compact-popup-action-button-wrapper button').eq(1),
37
37
  graphImageEditTab: () => cy.get('.ngie-jxgbox .JXGimage'),
@@ -109,9 +109,9 @@ const selectors = {
109
109
  addBackgroundShapesLabel: () => cy.get('[class*="Graphingstyles__BackgroundShapeLabelWrapper"]'),
110
110
  //Preview tab graph
111
111
  graphPreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg'),
112
- graphTitlePreviewTab: () => cy.get('[class*="GraphingQuestion"] [class*="__GraphHeader"] .title-container'),
113
- xAxisLabelGraphPreviewTab: () => cy.get('[class*="GraphingQuestion"] .graph-left-wrapper .title-container'),
114
- yAxisLabelGraphPreviewTab: () => cy.get('[class*="GraphingQuestion"] .graph-footer .title-container'),
112
+ graphTitlePreviewTab: () => cy.get('[class*="GraphingQuestion"] [class*="__GraphHeader"] .question-text-wrapper').eq(0),
113
+ xAxisLabelGraphPreviewTab: () => cy.get('[class*="GraphingQuestion"] .graph-left-wrapper .question-text-wrapper'),
114
+ yAxisLabelGraphPreviewTab: () => cy.get('[class*="GraphingQuestion"] .graph-footer .question-text-wrapper').eq(1),
115
115
  xAxisGraphPreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg line[stroke-linecap="butt"]').eq(0),
116
116
  yAxisGraphPreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg line[stroke-linecap="butt"]').eq(1),
117
117
  graphLinePreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg').eq(0).find('line[tabindex="null"]'),
@@ -128,7 +128,6 @@ const selectors = {
128
128
  graphSineAndParabolaPreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg').eq(0).find('path[stroke-linecap="butt"][stroke-opacity="1"]'),
129
129
  repeatedPointsSwitch: () => cy.get('.repeated-points-wrapper .MuiSwitch-input'),
130
130
  graphLabelInputField: () => cy.get('.label-tool:visible'),
131
- yAxisLabelGraphPreviewTab: () => cy.get('[class*="GraphingQuestion"] .graph-footer .title-container'),
132
131
 
133
132
  //Background
134
133
  imagePropertiesLabel: () => cy.get('[class*="ImageProperties"] .settings-label'),
@@ -586,12 +585,12 @@ const steps = {
586
585
  graphingPage.titlePopupAddLabelInputField()
587
586
  .clear()
588
587
  .type(text)
589
- .should('have.value', text);
588
+ .should('have.text', text);
590
589
  },
591
590
 
592
591
  verifyTextInTitlePopupAddLabelInputField: (text) => {
593
592
  graphingPage.titlePopupAddLabelInputField()
594
- .should('have.value', text);
593
+ .should('have.text', text);
595
594
  },
596
595
 
597
596
  clickOnTitlePopupCancelButton: () => {