itemengine-cypress-automation 1.0.223-minorFix-f2741aa.0 → 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 +2 -2
  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
@@ -67,7 +67,7 @@ describe('Create item page - Fill in the gaps over image with text: Minimum scor
67
67
 
68
68
  it('When the user adds a new option, then \'points for each incorrect text container\' should get updated accordingly', () => {
69
69
  fillInTheGapsOverImageTextPage.steps.insertResponseArea(30);
70
- fillInTheGapsOverImageTextPage.steps.verifyPenaltyPointsForEachIncorrectTextContainer(1.67);
70
+ fillInTheGapsOverImageTextPage.steps.verifyPenaltyPointsForEachIncorrectTextContainer(1.6667);
71
71
  });
72
72
 
73
73
  it('When the user deletes an option, then \'points for each incorrect text container\' should get updated accordingly', () => {
@@ -202,19 +202,19 @@ describe('Create item page - Fill in the gaps with text: Partial different weigh
202
202
  fillInTheGapsTextPage.steps.allotTotalPenaltyPoints(4);
203
203
  fillInTheGapsTextPage.steps.switchToPreviewTab();
204
204
  fillInTheGapsTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Roots' }]);
205
- fillInTheGapsTextPage.steps.verifyPreviewScore(-3.99, 20);
205
+ fillInTheGapsTextPage.steps.verifyPreviewScore(-4, 20);
206
206
  });
207
207
 
208
208
  it('When the user attempts the question correctly along with an incorrect option, then penalty points should get deducted from the awarded points', () => {
209
209
  fillInTheGapsTextPage.steps.resetQuestionPreview();
210
210
  fillInTheGapsTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 1, responseText: 'Leaf' }, { responseIndex: 2, responseText: 'Roots' }]);
211
- fillInTheGapsTextPage.steps.verifyPreviewScore(13.67, 20);
211
+ fillInTheGapsTextPage.steps.verifyPreviewScore(13.6667, 20);
212
212
  });
213
213
 
214
214
  it('When the user attempts the question correctly along with multiple incorrect options, then Penalty points for each incorrect text container should get deducted from the awarded points', () => {
215
215
  fillInTheGapsTextPage.steps.resetQuestionPreview();
216
216
  fillInTheGapsTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 1, responseText: 'Seed' }, { responseIndex: 2, responseText: 'Branch' }]);
217
- fillInTheGapsTextPage.steps.verifyPreviewScore(6.34, 20);
217
+ fillInTheGapsTextPage.steps.verifyPreviewScore(6.3333, 20);
218
218
  });
219
219
 
220
220
  it('When the user has defined penalty points and also sets minimum scoring to \'Award minimum score only if attempted\' and allots minimum points, then on attempting the question incorrectly, minimum points should be awarded', () => {
@@ -273,19 +273,19 @@ describe('Create item page - Fill in the gaps with text: Partial different weigh
273
273
  fillInTheGapsTextPage.steps.checkAutomaticallySetPenaltyPointsCheckbox();
274
274
  fillInTheGapsTextPage.steps.switchToPreviewTab();
275
275
  fillInTheGapsTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Roots' }]);
276
- fillInTheGapsTextPage.steps.verifyPreviewScore(-20.01, 20);
276
+ fillInTheGapsTextPage.steps.verifyPreviewScore(-20, 20);
277
277
  });
278
278
 
279
279
  it('When the user attempts the question correctly along with an incorrect option, then penalty points should get deducted from the awarded points', () => {
280
280
  fillInTheGapsTextPage.steps.resetQuestionPreview();
281
281
  fillInTheGapsTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 1, responseText: 'Leaf' }, { responseIndex: 2, responseText: 'Roots' }]);
282
- fillInTheGapsTextPage.steps.verifyPreviewScore(8.33, 20);
282
+ fillInTheGapsTextPage.steps.verifyPreviewScore(8.3333, 20);
283
283
  });
284
284
 
285
285
  it('When the user attempts the question correctly along with multiple incorrect options, then penalty points for each incorrect option should get deducted from the awarded points', () => {
286
286
  fillInTheGapsTextPage.steps.resetQuestionPreview();
287
287
  fillInTheGapsTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 1, responseText: 'Branch' }, { responseIndex: 2, responseText: 'Roots' }]);
288
- fillInTheGapsTextPage.steps.verifyPreviewScore(-4.34, 20);
288
+ fillInTheGapsTextPage.steps.verifyPreviewScore(-4.3333, 20);
289
289
  });
290
290
 
291
291
  it('When the user has defined penalty points and also sets minimum scoring to \'Award minimum score only if attempted\' and allots minimum points, then on attempting the question incorrectly, minimum points should be awarded', () => {
@@ -177,7 +177,7 @@ describe('Create item page - Fill in the gaps with text: Partial equal weights w
177
177
  fillInTheGapsTextPage.steps.allotPoints(5);
178
178
  fillInTheGapsTextPage.steps.switchToPreviewTab();
179
179
  fillInTheGapsTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 1, responseText: 'Leaf' }, { responseIndex: 2, responseText: 'Branch' }]);
180
- fillInTheGapsTextPage.steps.verifyPreviewScore(7.67, 23);
180
+ fillInTheGapsTextPage.steps.verifyPreviewScore(7.6667, 23);
181
181
  fillInTheGapsTextPage.steps.switchToGradingView();
182
182
  fillInTheGapsTextPage.steps.verifyIncorrectOptionIcon(0);
183
183
  fillInTheGapsTextPage.steps.verifyIncorrectOptionIcon(1);
@@ -177,7 +177,7 @@ describe('Create item page - Fill in the gaps with text: Partial equal weights w
177
177
  fillInTheGapsTextPage.steps.allotPoints(23);
178
178
  fillInTheGapsTextPage.steps.switchToPreviewTab();
179
179
  fillInTheGapsTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Petals' }, { responseIndex: 1, responseText: 'Leaf' }, { responseIndex: 2, responseText: 'Branch' }]);
180
- fillInTheGapsTextPage.steps.verifyPreviewScore(7.67, 23);
180
+ fillInTheGapsTextPage.steps.verifyPreviewScore(7.6667, 23);
181
181
  fillInTheGapsTextPage.steps.switchToGradingView();
182
182
  fillInTheGapsTextPage.steps.verifyIncorrectOptionIcon(0);
183
183
  fillInTheGapsTextPage.steps.verifyCorrectOptionIcon(1);
@@ -64,7 +64,7 @@ describe('Create item page - Fill in the gaps with text: Minimum scoring, Penalt
64
64
 
65
65
  it('When the user adds a new option, then \'points for each incorrect text container\' should get updated accordingly', () => {
66
66
  fillInTheGapsTextPage.steps.addResponseArea();
67
- fillInTheGapsTextPage.steps.verifyPenaltyPointsForEachIncorrectTextContainer(1.67);
67
+ fillInTheGapsTextPage.steps.verifyPenaltyPointsForEachIncorrectTextContainer(1.6667);
68
68
  });
69
69
 
70
70
  it('When the user deletes an option, then \'points for each incorrect text container\' should get updated accordingly', () => {
@@ -351,7 +351,7 @@ describe('Graphing: Layout section - Edit tab and preview tab tool options', ()
351
351
  });
352
352
  });
353
353
 
354
- describe('Grid options: Edit tab functionality', () => {
354
+ describe('Grid options: Edit tab functionality - X axis', () => {
355
355
  abortEarlySetup();
356
356
  before(() => {
357
357
  graphingPage.steps.navigateToCreateQuestion('Graphing');
@@ -420,11 +420,11 @@ describe('Graphing: Layout section - Edit tab and preview tab tool options', ()
420
420
  });
421
421
 
422
422
  it('When user updates X grid spacing then on the x axis user should be able to plot only on the grid lines after a those many intervals', () => {
423
- graphingPage.steps.enterTextInXGridSpacingInputFieldValue(3)
424
- graphingPage.steps.plotPointsOnGraphEditTab([{ x: 2, xRange: 20, y: 1, yRange: 20 }]);
425
- graphingPage.steps.verifyPointsPlottedOnEditTabGraph([{ x: 3, xRange: 20, y: 1, yRange: 20 }]);
426
- graphingPage.steps.plotPointsOnGraphSpecifyCorrectAnswerSection([{ x: -2, xRange: 20, y: 1, yRange: 20 }]);
427
- graphingPage.steps.verifyPointsPlottedOnSpecifyCorrectAnswerSection([{ x: -3, xRange: 20, y: 1, yRange: 20 }]);
423
+ graphingPage.steps.enterTextInXGridSpacingInputFieldValue(3);
424
+ graphingPage.steps.plotPointsOnGraphEditTab([{ x: -2, xRange: 20, y: 1, yRange: 20 }]);
425
+ graphingPage.steps.verifyPointsPlottedOnEditTabGraph([{ x: -3, xRange: 20, y: 1, yRange: 20 }]);
426
+ graphingPage.steps.plotPointsOnGraphSpecifyCorrectAnswerSection([{ x: -4, xRange: 20, y: 2, yRange: 20 }]);
427
+ graphingPage.steps.verifyPointsPlottedOnSpecifyCorrectAnswerSection([{ x: -3, xRange: 20, y: 2, yRange: 20 }]);
428
428
  });
429
429
 
430
430
  //Note: Update once https://redmine.zeuslearning.com/issues/564975 is resolved
@@ -437,17 +437,15 @@ describe('Graphing: Layout section - Edit tab and preview tab tool options', ()
437
437
  });
438
438
 
439
439
  it('When the user has checked the \'Display axis label\' checkbox then the X axis label should be displayed', () => {
440
- graphingPage.steps.verifyXDisplayAxisCheckboxChecked();
441
- utilities.verifyElementVisibilityState(graphingPage.xAxisLabelGraphEditTab(), 'visible');
442
- utilities.verifyInnerText(graphingPage.xAxisLabelGraphEditTab(), 'X axis label');
443
- utilities.verifyElementVisibilityState(graphingPage.xAxisLabelGraphSpecifyCorrectAnswerSection(), 'visible');
444
- utilities.verifyInnerText(graphingPage.xAxisLabelGraphSpecifyCorrectAnswerSection(), 'X axis label');
440
+ graphingPage.steps.checkXDisplayAxisCheckbox();
441
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('X'), 'exist');
442
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('X'), 'exist');
445
443
  });
446
444
 
447
445
  it('When the user unchecks the \'Display axis label\' checkbox then the X axis label should not be displayed', () => {
448
446
  graphingPage.steps.uncheckXDisplayAxisCheckbox();
449
- utilities.verifyElementVisibilityState(graphingPage.xAxisLabelGraphEditTab(), 'notExist');
450
- utilities.verifyElementVisibilityState(graphingPage.xAxisLabelGraphSpecifyCorrectAnswerSection(), 'hidden');
447
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('X'), 'notExist');
448
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('X'), 'notExist');
451
449
  });
452
450
 
453
451
  //Note: Update once https://redmine.zeuslearning.com/issues/564975 is resolved
@@ -509,20 +507,30 @@ describe('Graphing: Layout section - Edit tab and preview tab tool options', ()
509
507
 
510
508
  //Failing due to https://redmine.zeuslearning.com/issues/563533
511
509
  it('When the user has checked the \'Display comma for thousand separator\' checkbox comma separators should be displayed', () => {
510
+ graphingPage.steps.checkXShowTicksLabelCheckbox();
512
511
  graphingPage.steps.verifyXDisplayCommaForThousandSeparatorCheckboxChecked();
512
+ graphingPage.steps.enterTextInXMinInputField(9000)
513
513
  graphingPage.steps.enterTextInXMaxInputField(10000);
514
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9,999'), 'visible');
515
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9998'), 'notExist');
516
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9,999'), 'visible');
517
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9998'), 'notExist');
514
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9,900'), 'exist');
515
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9900'), 'notExist');
516
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9,900'), 'exist');
517
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9900'), 'notExist');
518
518
  });
519
519
 
520
520
  it('When the user unchecks the \'Display comma for thousand separator\' checkbox comma separators should not be displayed', () => {
521
521
  graphingPage.steps.uncheckXDisplayCommaForThousandSeparatorCheckbox();
522
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9,999'), 'notExist');
523
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9998'), 'visible');
524
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9,999'), 'notExist');
525
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9998'), 'visible');
522
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9,900'), 'notExist');
523
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9900'), 'exist');
524
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9,900'), 'notExist');
525
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9900'), 'exist');
526
+ });
527
+ });
528
+
529
+ describe('Grid options: Edit tab functionality - Y axis', () => {
530
+ abortEarlySetup();
531
+ before(() => {
532
+ graphingPage.steps.navigateToCreateQuestion('Graphing');
533
+ cy.barsPreLoaderWait();
526
534
  });
527
535
 
528
536
  //Y axis
@@ -551,17 +559,15 @@ describe('Graphing: Layout section - Edit tab and preview tab tool options', ()
551
559
  });
552
560
 
553
561
  it('When the user has checked the \'Display axis label\' checkbox then the Y axis label should be displayed', () => {
554
- graphingPage.steps.verifyYDisplayAxisCheckboxChecked();
555
- utilities.verifyElementVisibilityState(graphingPage.yAxisLabelGraphEditTab(), 'visible');
556
- utilities.verifyInnerText(graphingPage.yAxisLabelGraphEditTab(), 'Y axis label');
557
- utilities.verifyElementVisibilityState(graphingPage.yAxisLabelGraphSpecifyCorrectAnswerSection(), 'visible');
558
- utilities.verifyInnerText(graphingPage.yAxisLabelGraphSpecifyCorrectAnswerSection(), 'Y axis label');
562
+ graphingPage.steps.checkYDisplayAxisCheckbox();
563
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('Y'), 'exist');
564
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('Y'), 'exist');
559
565
  });
560
566
 
561
567
  it('When the user unchecks the \'Display axis label\' checkbox then the Y axis label should not be displayed', () => {
562
568
  graphingPage.steps.uncheckYDisplayAxisCheckbox();
563
- utilities.verifyElementVisibilityState(graphingPage.yAxisLabelGraphEditTab(), 'notExist');
564
- utilities.verifyElementVisibilityState(graphingPage.yAxisLabelGraphSpecifyCorrectAnswerSection(), 'hidden');
569
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('Y'), 'notExist');
570
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('Y'), 'notExist');
565
571
  });
566
572
 
567
573
  //Note: Update once https://redmine.zeuslearning.com/issues/564975 is resolved
@@ -583,9 +589,10 @@ describe('Graphing: Layout section - Edit tab and preview tab tool options', ()
583
589
 
584
590
  it('When the user unchecks the \'Show tick labels\' checkbox then the Y axis ticks label should not be displayed', () => {
585
591
  graphingPage.steps.uncheckYShowTicksLabelCheckbox();
586
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab(), 'notExist');
587
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection(), 'hidden');
588
- graphingPage.steps.checkXShowTicksLabelCheckbox();
592
+ utilities.verifyElementCount(graphingPage.textOnGraphEditTab('2'), '1');
593
+ utilities.verifyElementCount(graphingPage.textOnGraphEditTab('4'), '1');
594
+ utilities.verifyElementCount(graphingPage.textOnGraphSpecifyCorrectAnswerSection('2'), '1');
595
+ utilities.verifyElementCount(graphingPage.textOnGraphSpecifyCorrectAnswerSection('4'), '1');
589
596
  });
590
597
 
591
598
  it('When the user has checked the \'Min arrow\' checkbox then the negative Y axis arrow should be displayed', () => {
@@ -623,19 +630,20 @@ describe('Graphing: Layout section - Edit tab and preview tab tool options', ()
623
630
  //Failing due to https://redmine.zeuslearning.com/issues/563533
624
631
  it('When the user has checked the \'Display comma for thousand separator\' checkbox comma separators should be displayed', () => {
625
632
  graphingPage.steps.verifyYDisplayCommaForThousandSeparatorCheckboxChecked();
633
+ graphingPage.steps.enterTextInYMinInputField(9000);
626
634
  graphingPage.steps.enterTextInYMaxInputField(10000);
627
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9,999'), 'visible');
628
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9998'), 'notExist');
629
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9,999'), 'visible');
630
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9998'), 'notExist');
635
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9,900'), 'visible');
636
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9900'), 'notExist');
637
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9,900'), 'visible');
638
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9900'), 'notExist');
631
639
  });
632
640
 
633
641
  it('When the user unchecks the \'Display comma for thousand separator\' checkbox comma separators should not be displayed', () => {
634
642
  graphingPage.steps.uncheckYDisplayCommaForThousandSeparatorCheckbox();
635
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9,999'), 'notExist');
636
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9998'), 'visible');
637
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9,999'), 'notExist');
638
- utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9998'), 'visible');
643
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9,900'), 'notExist');
644
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphEditTab('9900'), 'visible');
645
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9,900'), 'notExist');
646
+ utilities.verifyElementVisibilityState(graphingPage.textOnGraphSpecifyCorrectAnswerSection('9900'), 'visible');
639
647
  });
640
648
  });
641
649
 
@@ -648,17 +656,18 @@ describe('Graphing: Layout section - Edit tab and preview tab tool options', ()
648
656
  });
649
657
 
650
658
  //Snap to grid
651
- it('When snap to grid is unchecked user should be able to plot decimal points on the graph in preview tab', () => {
659
+ it('When snap to grid is checked user should not be able to plot decimal points on the graph in preview tab', () => {
652
660
  graphingPage.steps.plotPointsOnGraphPreviewTab([{ x: 2.5, xRange: 20, y: 1, yRange: 20 }]);
653
- graphingPage.steps.verifyPointsPlottedOnPreviewTab([{ x: 2.5, xRange: 20, y: 1, yRange: 20 }]);
661
+ graphingPage.steps.verifyPointsPlottedOnPreviewTab([{ x: 3, xRange: 20, y: 1, yRange: 20 }]);
654
662
  });
655
663
 
656
664
  it('When the user checks snap to grid checkbox then the X and Y tolerance should become disabled and the user should not be able to plot decimal points', () => {
657
665
  graphingPage.steps.switchToEditTab();
658
- graphingPage.steps.checkSnapToGridCheckbox();
666
+ graphingPage.steps.uncheckSnapToGridCheckbox();
659
667
  graphingPage.steps.switchToPreviewTab();
660
- graphingPage.steps.plotPointsOnGraphPreviewTab([{ x: 2.25, xRange: 20, y: 1, yRange: 20 }]);
661
- graphingPage.steps.verifyPointsPlottedOnPreviewTab([{ x: 2, xRange: 20, y: 1, yRange: 20 }]);
668
+ graphingPage.steps.plotPointsOnGraphPreviewTab([{ x: 2.5, xRange: 20, y: 1, yRange: 20 }]);
669
+ graphingPage.steps.verifyPointsPlottedNotExistOnPreviewTab([{ x: 2, xRange: 20, y: 1, yRange: 20 }]);
670
+ graphingPage.steps.verifyPointsPlottedNotExistOnPreviewTab([{ x: 3, xRange: 20, y: 1, yRange: 20 }]);
662
671
  });
663
672
 
664
673
  //Origin option
@@ -75,24 +75,23 @@ describe('Graphing: Tools and controls - Edit tab and preview tab tool options',
75
75
  graphingPage.steps.verifyToolOptionNotSelectedSpecifyCorrectAnswerSection(toolOptions.slice(1, 6));
76
76
  });
77
77
 
78
- it('When the user de-selects an selected option it should be removed from the \'Specify correct answer\' section, \'Default tool\' but all the options should be displayed in the background graph section', () => {
78
+ it('When the user de-selects an selected option it should be removed from the \'Specify correct answer\' section, but all the options should be displayed in the background graph section', () => {
79
79
  graphingPage.steps.deselectToolOptions(['Point']);
80
80
  selectedToolOption.slice(1, selectedToolOption.length).forEach((toolOption) => {
81
81
  utilities.verifyElementVisibilityState(graphingPage.graphToolOptionSpecifyCorrectAnswer(`${toolOption}`), 'visible');
82
82
  });
83
- graphingPage.steps.verifyToolOptionSelectedSpecifyCorrectAnswerSection(toolOptions[1]);
84
83
  toolOptions.forEach((toolOption) => {
85
84
  utilities.verifyElementVisibilityState(graphingPage.graphToolOptionEditTab(`${toolOption}`), 'visible');
86
85
  });
87
86
  graphingPage.steps.verifyToolOptionSelectedEditTab(toolOptions[0]);
88
87
  graphingPage.steps.expandDefaultToolDropdown();
89
- selectedToolOption.slice(1, selectedToolOption.length).forEach((dropdownOption) => {
88
+ toolOptions.forEach((dropdownOption) => {
90
89
  utilities.verifyElementVisibilityState(graphingPage.defaultToolDropdownOptions(dropdownOption), 'exist');
91
90
  });
92
91
  graphingPage.steps.selectOptionFromDefaultToolDropdown('Line');
93
92
  });
94
93
 
95
- it('When user selects any of the default unselected options it should be added to the \'Specify correct answer\' section, \'Default tool\' and all the options should be displayed in the background graph section', () => {
94
+ it('When user selects any of the default unselected options it should be added to the \'Specify correct answer\' section, and all the options should be displayed in the background graph section', () => {
96
95
  graphingPage.steps.selectToolOptions(['Circle']);
97
96
  toolOptions.slice(1, 6).forEach((toolOption) => {
98
97
  utilities.verifyElementVisibilityState(graphingPage.graphToolOptionSpecifyCorrectAnswer(`${toolOption}`), 'visible');
@@ -101,7 +100,7 @@ describe('Graphing: Tools and controls - Edit tab and preview tab tool options',
101
100
  utilities.verifyElementVisibilityState(graphingPage.graphToolOptionEditTab(`${toolOption}`), 'visible');
102
101
  });
103
102
  graphingPage.steps.expandDefaultToolDropdown();
104
- toolOptions.slice(1, 6).forEach((dropdownOption) => {
103
+ toolOptions.forEach((dropdownOption) => {
105
104
  utilities.verifyElementVisibilityState(graphingPage.defaultToolDropdownOptions(dropdownOption), 'exist');
106
105
  });
107
106
  graphingPage.steps.selectOptionFromDefaultToolDropdown('Line');
@@ -195,7 +194,6 @@ describe('Graphing: Tools and controls - Edit tab and preview tab tool options',
195
194
  selectedToolOption.slice(1, selectedToolOption.length).forEach((toolOption) => {
196
195
  utilities.verifyElementVisibilityState(graphingPage.graphToolOptionPreviewTab(`${toolOption}`), 'visible');
197
196
  });
198
- graphingPage.steps.verifyToolOptionSelectedPreviewTab(toolOptions[1]);
199
197
  });
200
198
 
201
199
  it('When user selects any of the default unselected options it should be added to the preview tab tool options', () => {
@@ -73,8 +73,8 @@ describe('Create item page - Grid fill: Customize layout section - \'Fill Image\
73
73
  it('\'File name\' label should be displayed and by default \'No file chosen\' text should be displayed below the \'File name\' label.', () => {
74
74
  utilities.verifyInnerText(gridFillPage.filledImageFileNameLabel(), 'File name');
75
75
  utilities.verifyElementVisibilityState(gridFillPage.filledImageFileNameLabel(), 'visible');
76
- utilities.verifyInnerText(gridFillPage.filledImageNoFileChosenLabel(), 'No file chosen');
77
- utilities.verifyElementVisibilityState(gridFillPage.filledImageNoFileChosenLabel(), 'visible');
76
+ utilities.verifyInnerText(gridFillPage.noFileChosenLabel(), 'No file chosen');
77
+ utilities.verifyElementVisibilityState(gridFillPage.noFileChosenLabel(), 'visible');
78
78
  });
79
79
 
80
80
  it('CSS of upload section', { tags: 'css' }, () => {
@@ -1,5 +1,6 @@
1
1
  import { imageHighlightPage } from "../../../../pages";
2
2
  import abortEarlySetup from "../../../../support/helpers/abortEarly";
3
+ import utilities from "../../../../support/helpers/utilities";
3
4
 
4
5
  const flowerHighlightRegion = [[40, 6], [40, 20], [55, 20], [55, 6]];
5
6
  const branchesHighlightRegion = [[50, 30], [50, 42], [65, 42], [65, 30]];
@@ -73,7 +74,7 @@ describe('Create Item page - Matching: Manually and non scored', () => {
73
74
  imageHighlightPage.steps.verifyCorrectHighlightRegionNotAttemptedGradingView(1);
74
75
  imageHighlightPage.steps.verifyCorrectHighlightRegionNotAttemptedGradingView(2);
75
76
  imageHighlightPage.steps.verifyDefaultHighlightRegion(3);
76
- imageHighlightPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
77
+ utilities.verifyElementVisibilityState(imageHighlightPage.correctIncorrectAnswerTextWrapper(), 'notExist');
77
78
  imageHighlightPage.steps.verifyCorrectAnswerContainerContents(['Option 1', 'Option 2', 'Option 3'], [1, 2, 3]);
78
79
  imageHighlightPage.steps.switchToStudentView();
79
80
  });
@@ -268,7 +268,7 @@ describe('Create Item page - Image highlight: Partial different weights with alt
268
268
  imageHighlightPage.steps.verifyCorrectHighlightRegionNotAttemptedGradingView(1);
269
269
  imageHighlightPage.steps.verifyIncorrectHighlightRegion(2);
270
270
  imageHighlightPage.steps.verifyIncorrectHighlightRegion(3);
271
- imageHighlightPage.steps.verifyCorrectAnswerContainerContents(['Option 2', 'Option 3'], [1, 2]);
271
+ imageHighlightPage.steps.verifyCorrectAnswerContainerContents(['Option 1', 'Option 2'], [1, 2]);
272
272
  imageHighlightPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
273
273
 
274
274
  /*cy.log('Overachiever case: When the user clicks on \'Check answer\' button, green check-mark icons should be displayed for the correct tab option, red cross-mark icon should be displayed for the alternate tab options, correct answers container should not be displayed and correct/incorrect answer label and its border should not be displayed')
@@ -34,11 +34,11 @@ describe('Create Item page - Image highlight: Alternative answer with single sel
34
34
  imageHighlightPage.steps.switchToPreviewTab();
35
35
  });
36
36
 
37
- it('When the user switches to \'Grading view\' without attempting the question then the no regions should be highlighted, \'Your answer is incorrect\' label should be displayed and the correct answer section with the answers of the correct accordion should be displayed', () => {
37
+ it('When the user switches to \'Grading view\' without attempting the question then the no regions should be highlighted, \'Your answer is incorrect\' label should not be displayed and the correct answer section with the answers of the correct accordion should be displayed', () => {
38
38
  imageHighlightPage.steps.verifyPreviewScore(0, 20);
39
39
  imageHighlightPage.steps.switchToGradingView();
40
40
  imageHighlightPage.steps.verifyHighlightRegionNumerationPreviewTab();
41
- imageHighlightPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
41
+ utilities.verifyElementVisibilityState(imageHighlightPage.correctIncorrectAnswerTextWrapper(), 'notExist');
42
42
  imageHighlightPage.steps.verifyCorrectHighlightRegionNotAttemptedGradingView(0);
43
43
  imageHighlightPage.steps.verifyDefaultHighlightRegion(1);
44
44
  imageHighlightPage.steps.verifyCorrectAnswerContainerContents(['Option 1'], [1]);
@@ -107,7 +107,7 @@ describe('Create Item page - Image highlight: Alternative answer with single sel
107
107
  imageHighlightPage.steps.verifyCorrectAnswerSectionNotExists();
108
108
  });
109
109
 
110
- it('When user attempts the question with incorrect highlight region then no points should be given and on switching to \'Grading\' view, incorrect icon should be displayed beside the wrong response, a status message with text \'Your answer is incorrect\' should be displayed and correct answer section should be displayed', () =>{
110
+ it('When user attempts the question with incorrect highlight region then no points should be given and on switching to \'Grading\' view, incorrect icon should be displayed beside the wrong response, a status message with text \'Your answer is incorrect\' should be displayed and correct answer section should be displayed', () => {
111
111
  imageHighlightPage.steps.switchToPreviewTab();
112
112
  imageHighlightPage.steps.resetQuestionPreview();
113
113
  imageHighlightPage.steps.highlightARegionInPreviewTab(2);
@@ -143,11 +143,11 @@ describe('Create Item page - Image highlight: Alternative answer with single sel
143
143
  imageHighlightPage.steps.switchToPreviewTab();
144
144
  });
145
145
 
146
- it('When the user switches to \'Grading view\' without attempting the question then the no regions should be highlighted, \'Your answer is incorrect\' label should be displayed and the correct answer section with the answers of the correct accordion should be displayed', () => {
146
+ it('When the user switches to \'Grading view\' without attempting the question then the no regions should be highlighted, \'Your answer is incorrect\' label should not be displayed and the correct answer section with the answers of the correct accordion should be displayed', () => {
147
147
  imageHighlightPage.steps.verifyPreviewScore(0, 20);
148
148
  imageHighlightPage.steps.switchToGradingView();
149
149
  imageHighlightPage.steps.verifyHighlightRegionNumerationPreviewTab();
150
- imageHighlightPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
150
+ utilities.verifyElementVisibilityState(imageHighlightPage.correctIncorrectAnswerTextWrapper(), 'notExist');
151
151
  imageHighlightPage.steps.verifyCorrectHighlightRegionNotAttemptedGradingView(0);
152
152
  imageHighlightPage.steps.verifyDefaultHighlightRegion(1);
153
153
  imageHighlightPage.steps.verifyCorrectAnswerContainerContents(['Option 1'], [1]);
@@ -175,7 +175,7 @@ describe('Create Item page - Image highlight: Alternative answer with single sel
175
175
  imageHighlightPage.steps.verifyCorrectAnswerSectionNotExists();
176
176
  });
177
177
 
178
- it('When user attempts the question with incorrect highlight region then no points should be given and on switching to \'Grading\' view, incorrect icon should be displayed beside the wrong response, a status message with text \'Your answer is incorrect\' should be displayed and correct answer section should be displayed', () =>{
178
+ it('When user attempts the question with incorrect highlight region then no points should be given and on switching to \'Grading\' view, incorrect icon should be displayed beside the wrong response, a status message with text \'Your answer is incorrect\' should be displayed and correct answer section should be displayed', () => {
179
179
  imageHighlightPage.steps.switchToPreviewTab();
180
180
  imageHighlightPage.steps.resetQuestionPreview();
181
181
  imageHighlightPage.steps.highlightARegionInPreviewTab(2);
@@ -210,11 +210,11 @@ describe('Create Item page - Image highlight: Alternative answer with single sel
210
210
  imageHighlightPage.steps.switchToPreviewTab();
211
211
  });
212
212
 
213
- it('When the user switches to \'Grading view\' without attempting the question then the no regions should be highlighted, \'Your answer is incorrect\' label should be displayed and the correct answer section with the answers of the correct accordion should be displayed', () => {
213
+ it('When the user switches to \'Grading view\' without attempting the question then the no regions should be highlighted, \'Your answer is incorrect\' label should not be displayed and the correct answer section with the answers of the correct accordion should be displayed', () => {
214
214
  imageHighlightPage.steps.verifyPreviewScore(0, 10);
215
215
  imageHighlightPage.steps.switchToGradingView();
216
216
  imageHighlightPage.steps.verifyHighlightRegionNumerationPreviewTab();
217
- imageHighlightPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
217
+ utilities.verifyElementVisibilityState(imageHighlightPage.correctIncorrectAnswerTextWrapper(), 'notExist');
218
218
  imageHighlightPage.steps.verifyCorrectHighlightRegionNotAttemptedGradingView(0);
219
219
  imageHighlightPage.steps.verifyDefaultHighlightRegion(1);
220
220
  imageHighlightPage.steps.verifyCorrectAnswerContainerContents(['Option 1'], [1]);
@@ -242,7 +242,7 @@ describe('Create Item page - Image highlight: Alternative answer with single sel
242
242
  imageHighlightPage.steps.verifyCorrectAnswerSectionNotExists();
243
243
  });
244
244
 
245
- it('When user attempts the question with incorrect highlight region then no points should be given and on switching to \'Grading\' view, incorrect icon should be displayed beside the wrong response, a status message with text \'Your answer is incorrect\' should be displayed and correct answer section should be displayed', () =>{
245
+ it('When user attempts the question with incorrect highlight region then no points should be given and on switching to \'Grading\' view, incorrect icon should be displayed beside the wrong response, a status message with text \'Your answer is incorrect\' should be displayed and correct answer section should be displayed', () => {
246
246
  imageHighlightPage.steps.switchToPreviewTab();
247
247
  imageHighlightPage.steps.resetQuestionPreview();
248
248
  imageHighlightPage.steps.highlightARegionInPreviewTab(2);
@@ -37,7 +37,7 @@ describe('Create Item page - List ordering: All or nothing scoring with alternat
37
37
  utilities.verifyInnerText(listOrderingPage.correctAnswersLabel(), 'Correct answers');
38
38
  listOrderingPage.steps.verifyCorrectIncorrectAnswerLabelNotExist();
39
39
  listOrderingPage.steps.verifyOptionsPositionInCorrectAnswerSection(options, ['2', '3', '4', '1']);
40
- listOrderingPage.steps.verifyCorrectOptionIconsDropdownLayoutCorrectAnswersSectionNotExists();
40
+ listOrderingPage.steps.verifyCorrectOptionIconsDropdownLayoutCorrectAnswersSection();
41
41
  });
42
42
 
43
43
  it('CSS of correct answer section', { tags: 'css' }, () => {
@@ -35,7 +35,7 @@ describe('Create Item page - List ordering: Partial different weights scoring wi
35
35
  listOrderingPage.steps.verifyCorrectIncorrectOptionIconDropdownLayoutNotExists(3);
36
36
  listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
37
37
  listOrderingPage.steps.verifyOptionsPositionInCorrectAnswerSection(options, ['2', '3', '4', '1']);
38
- listOrderingPage.steps.verifyCorrectOptionIconsDropdownLayoutCorrectAnswersSectionNotExists();
38
+ listOrderingPage.steps.verifyCorrectOptionIconsDropdownLayoutCorrectAnswersSection();
39
39
  });
40
40
 
41
41
  it('When the user attempts the question with responses from the correct accordion, then the user should be awarded full points and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, correct/incorrect status message and correct answer section should not be displayed', () => {
@@ -221,6 +221,8 @@ describe('Create Item page - List ordering: Partial different weights scoring wi
221
221
  listOrderingPage.steps.addOption();
222
222
  listOrderingPage.steps.enterTextInOptionInputField(4, 'fruit');
223
223
  listOrderingPage.steps.deleteAlternativeAnswerAccordion(0);
224
+ cy.log('Adding a wait to delete alternate accordion');
225
+ cy.wait(1000);
224
226
  listOrderingPage.steps.selectPositionForAllOptionsSpecifyCorrectAnswerSection([{ optionIndex: 0, position: '2' }, { optionIndex: 1, position: '3' }, { optionIndex: 2, position: '4' }, { optionIndex: 3, position: '1' }, { optionIndex: 4, position: '5' }]);
225
227
  listOrderingPage.steps.allotPartialDifferentWeightsPoints({ 0: 24.5, 1: 1.5, 2: 4.5, 3: 1.5, 4: 3.5 });
226
228
  listOrderingPage.steps.addAlternativeAnswerAccordion(1);
@@ -35,7 +35,7 @@ describe('Create Item page - List ordering: Partial different weights scoring wi
35
35
  listOrderingPage.steps.verifyCorrectIncorrectOptionIconDropdownLayoutNotExists(3);
36
36
  listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
37
37
  listOrderingPage.steps.verifyOptionsPositionInCorrectAnswerSection(options, ['2', '3', '4', '1']);
38
- listOrderingPage.steps.verifyCorrectOptionIconsDropdownLayoutCorrectAnswersSectionNotExists();
38
+ listOrderingPage.steps.verifyCorrectOptionIconsDropdownLayoutCorrectAnswersSection();
39
39
  });
40
40
 
41
41
  it('When the user attempts the question with responses from the correct accordion, then the user should be awarded full points and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, correct/incorrect status message and correct answer section should not be displayed', () => {
@@ -35,7 +35,7 @@ describe('Create Item page - List ordering: Partial equal weights scoring with a
35
35
  listOrderingPage.steps.verifyCorrectIncorrectOptionIconDropdownLayoutNotExists(3);
36
36
  listOrderingPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
37
37
  listOrderingPage.steps.verifyOptionsPositionInCorrectAnswerSection(options, ['2', '3', '4', '1']);
38
- listOrderingPage.steps.verifyCorrectOptionIconsDropdownLayoutCorrectAnswersSectionNotExists();
38
+ listOrderingPage.steps.verifyCorrectOptionIconsDropdownLayoutCorrectAnswersSection();
39
39
  });
40
40
 
41
41
  it('When the user attempts the question with responses from the correct accordion, then the user should be awarded full points and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, correct/incorrect status message and correct answer section should not be displayed', () => {
@@ -65,7 +65,7 @@ describe('Create item page - List ordering: Minimum scoring, Penalty scoring, Ro
65
65
 
66
66
  it('When the user deletes an option, then \'points for each incorrect option\' should get updated accordingly', () => {
67
67
  listOrderingPage.steps.deleteOption(0);
68
- listOrderingPage.steps.verifyPenaltyPointsForEachIncorrectOption(1.67);
68
+ listOrderingPage.steps.verifyPenaltyPointsForEachIncorrectOption(1.6667);
69
69
  });
70
70
 
71
71
  it('When the user adds a new option, then \'points for each incorrect option\' should get updated accordingly', () => {
@@ -175,8 +175,8 @@ describe('Create item page - List ordering: Minimum scoring, Penalty scoring, Ro
175
175
  listOrderingPage.steps.checkAutomaticallySetPenaltyPointsCheckbox();
176
176
  listOrderingPage.steps.verifySpecifyTotalPenaltyPointsDisabledState();
177
177
  listOrderingPage.steps.verifySpecifyPointsForEachIncorrectOptionRadioButtonSelectedAndDisabledState();
178
- utilities.verifyInnerText(utilities.getNthElement(listOrderingPage.penaltyPointsDetailsSectionAllottedPointsLabel(), 0), 'Penalty points for each incorrect option: 3.33');
179
- utilities.verifyInnerText(utilities.getNthElement(listOrderingPage.penaltyPointsDetailsSectionAllottedPointsLabel(), 1), 'Total penalty points: 9.99');
178
+ utilities.verifyInnerText(utilities.getNthElement(listOrderingPage.penaltyPointsDetailsSectionAllottedPointsLabel(), 0), 'Penalty points for each incorrect option: 2.5');
179
+ utilities.verifyInnerText(utilities.getNthElement(listOrderingPage.penaltyPointsDetailsSectionAllottedPointsLabel(), 1), 'Total penalty points: 10');
180
180
  });
181
181
  });
182
182
 
@@ -324,19 +324,19 @@ describe('Create item page - Matching: Partial different weights', () => {
324
324
  matchingPage.steps.allotTotalPenaltyPoints(4);
325
325
  matchingPage.steps.switchToPreviewTab();
326
326
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Eagle', dropzoneIndex: 0 }]);
327
- matchingPage.steps.verifyPreviewScore(-2.01, 20);
327
+ matchingPage.steps.verifyPreviewScore(-2, 20);
328
328
  });
329
329
 
330
330
  it('When the user attempts the question correctly along with an incorrect option, then penalty points should get deducted from the awarded points', () => {
331
331
  matchingPage.steps.resetQuestionPreview();
332
332
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Elephant', dropzoneIndex: 0 }, { optionText: 'Fish', dropzoneIndex: 1 }, { optionText: 'Eagle', dropzoneIndex: 2 }, { optionText: 'Cat', dropzoneIndex: 2 }]);
333
- matchingPage.steps.verifyPreviewScore(14.33, 20);
333
+ matchingPage.steps.verifyPreviewScore(14.3333, 20);
334
334
  });
335
335
 
336
336
  it('When the user attempts the question correctly along with multiple incorrect options, then penalty points for each incorrect dropzone should get deducted from the awarded points', () => {
337
337
  matchingPage.steps.resetQuestionPreview();
338
338
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Elephant', dropzoneIndex: 0 }, { optionText: 'Bear', dropzoneIndex: 1 }, { optionText: 'Eagle', dropzoneIndex: 2 }]);
339
- matchingPage.steps.verifyPreviewScore(7.66, 20);
339
+ matchingPage.steps.verifyPreviewScore(7.6667, 20);
340
340
  });
341
341
 
342
342
  it('When the user has defined penalty points and also sets minimum scoring to \'Award minimum score only if attempted\' and allots minimum points, then on attempting the question incorrectly, minimum points should be awarded', () => {
@@ -393,19 +393,19 @@ describe('Create item page - Matching: Partial different weights', () => {
393
393
  matchingPage.steps.checkAutomaticallySetPenaltyPointsCheckbox();
394
394
  matchingPage.steps.switchToPreviewTab();
395
395
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Eagle', dropzoneIndex: 0 }]);
396
- matchingPage.steps.verifyPreviewScore(-9.99, 20);
396
+ matchingPage.steps.verifyPreviewScore(-10, 20);
397
397
  });
398
398
 
399
399
  it('When the user attempts the question correctly along with an incorrect option, then penalty points should get deducted from the awarded points', () => {
400
400
  matchingPage.steps.resetQuestionPreview();
401
401
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Elephant', dropzoneIndex: 0 }, { optionText: 'Eagle', dropzoneIndex: 0 }, { optionText: 'Fish', dropzoneIndex: 1 }, { optionText: 'Cat', dropzoneIndex: 2 }]);
402
- matchingPage.steps.verifyPreviewScore(7.67, 20);
402
+ matchingPage.steps.verifyPreviewScore(7.6667, 20);
403
403
  });
404
404
 
405
405
  it('When the user attempts the question correctly along with multiple incorrect options, then penalty points for each incorrect option should get deducted from the awarded points', () => {
406
406
  matchingPage.steps.resetQuestionPreview();
407
407
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Bear', dropzoneIndex: 0 }, { optionText: 'Fish', dropzoneIndex: 1 }, { optionText: 'Eagle', dropzoneIndex: 2 }]);
408
- matchingPage.steps.verifyPreviewScore(-0.66, 20);
408
+ matchingPage.steps.verifyPreviewScore(-0.6667, 20);
409
409
  });
410
410
 
411
411
  it('When the user has defined penalty points and also sets minimum scoring to \'Award minimum score only if attempted\' and allots minimum points, then on attempting the question incorrectly, minimum points should be awarded', () => {
@@ -207,7 +207,7 @@ describe('Create item page - Matching: Partial equal weights with alternative an
207
207
  matchingPage.steps.allotPoints(5);
208
208
  matchingPage.steps.switchToPreviewTab();
209
209
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Bear', dropzoneIndex: 0 }, { optionText: 'Fish', dropzoneIndex: 1 }, { optionText: 'Cat', dropzoneIndex: 2 }]);
210
- matchingPage.steps.verifyPreviewScore(7.67, 23);
210
+ matchingPage.steps.verifyPreviewScore(7.6667, 23);
211
211
  matchingPage.steps.switchToGradingView();
212
212
  matchingPage.steps.verifyCorrectOptionIcon(0);
213
213
  matchingPage.steps.verifyIncorrectOptionIcon(1);
@@ -207,7 +207,7 @@ describe('Create item page - Matching: Partial equal weights with alternative an
207
207
  matchingPage.steps.allotPoints(23);
208
208
  matchingPage.steps.switchToPreviewTab();
209
209
  matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Elephant', dropzoneIndex: 0 }, { optionText: 'Penguin', dropzoneIndex: 1 }, { optionText: 'Eagle', dropzoneIndex: 2 }]);
210
- matchingPage.steps.verifyPreviewScore(7.67, 23);
210
+ matchingPage.steps.verifyPreviewScore(7.6667, 23);
211
211
  matchingPage.steps.switchToGradingView();
212
212
  matchingPage.steps.verifyCorrectOptionIcon(0);
213
213
  matchingPage.steps.verifyIncorrectOptionIcon(1);
@@ -74,6 +74,7 @@ describe('Create Item page - matching : Additional settings', () => {
74
74
  matchingPage.steps.addTextInQuestionInstructionsInputField('question instruction');
75
75
  matchingPage.steps.enterTextInPromptInputField(promptTextArray);
76
76
  matchingPage.steps.enterTextInOptionInputField(optionsArray);
77
+ matchingPage.steps.clickAndDropOptionInDropzoneSpecifyCorrectAnswerSection([{ optionText: 'Fish', dropzoneIndex: 0 }, { optionText: 'Cat', dropzoneIndex: 1 }, { optionText: 'Elephant', dropzoneIndex: 2 }]);
77
78
  matchingPage.steps.allotPoints(10);
78
79
  matchingPage.steps.expandAdditionalSettings();
79
80
  });