itemengine-cypress-automation 1.0.353 → 1.0.354-capture-image-cd1e81a.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (265) hide show
  1. package/Dockerfile +1 -0
  2. package/cypress/e2e/ILC/AudioResponseNew/editTabBasicSection.js +4 -16
  3. package/cypress/e2e/ILC/BrainingCampManipulative/editTabBasicSection.js +1 -1
  4. package/cypress/e2e/ILC/BrowseItems/browseReviewItems.js +49 -11
  5. package/cypress/e2e/ILC/BrowseItems/browseThinkSphereItems.js +4 -3
  6. package/cypress/e2e/ILC/BrowseItems/browseThinkSphereItemsMobileView.js +4 -3
  7. package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/gradingViewAndCorrectAnswerView.smoke.js +1 -1
  8. package/cypress/e2e/ILC/ChartsBar/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +33 -0
  9. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightBasic.js +2 -2
  10. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -0
  11. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +1 -0
  12. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +1 -0
  13. package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +1 -0
  14. package/cypress/e2e/ILC/ChartsBar/editTabBasicSection.js +37 -0
  15. package/cypress/e2e/ILC/ChartsBar/headerSection.js +50 -2
  16. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightBasic.js +1 -0
  17. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -0
  18. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +1 -0
  19. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +1 -0
  20. package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +1 -0
  21. package/cypress/e2e/ILC/ChartsLine/editQuestion.smoke.js +2 -0
  22. package/cypress/e2e/ILC/ChartsLine/headerSection.js +18 -1
  23. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddFeatureRadioButton.js +2 -3
  24. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddTranscriptRadioButton .js +2 -4
  25. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabStudentViewSettings.js +3 -3
  26. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerHeaderSectionAndButtons.js +2 -2
  27. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTab.js +1 -1
  28. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabSupportedFileTypes.js +6 -0
  29. package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabTranscript.js +2 -3
  30. package/cypress/e2e/ILC/CkEditorEquationEditor/equationEditorBasicFile.js +4 -4
  31. package/cypress/e2e/ILC/CkEditorInsertImage/imageInfo.js +4 -4
  32. package/cypress/e2e/ILC/CkEditorInsertTable/tableDimension&FooterProperties.js +3 -3
  33. package/cypress/e2e/ILC/CkEditorInsertTable/tableStyle.js +11 -11
  34. package/cypress/e2e/ILC/CkEditorLink/uploadSection.js +1 -1
  35. package/cypress/e2e/ILC/ContentBlocks/editTabBasics.js +62 -4
  36. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/allOrNothingBasicForAllViews.smoke.js +119 -10
  37. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/editTabScoring.js +1 -0
  38. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/headerSection.js +2 -0
  39. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/manuallyAndNonScoredScoringEditTab.js +4 -1
  40. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +3 -0
  41. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/pagination.js +1 -1
  42. package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/styleAndLayoutCustomizationLayoutProperties.js +3 -0
  43. package/cypress/e2e/ILC/DrawingResponse/drawingResponseAdditionalSettings.js +1 -0
  44. package/cypress/e2e/ILC/DrawingResponse/drawingResponseBackground.js +2 -8
  45. package/cypress/e2e/ILC/DrawingResponse/drawingResponseCustomizeAdditionalOptions.js +1 -0
  46. package/cypress/e2e/ILC/DrawingResponse/drawingResponseEditTabBasicSection.js +3 -3
  47. package/cypress/e2e/ILC/DrawingResponse/drawingResponsePreviewTabContents.smoke.js +3 -4
  48. package/cypress/e2e/ILC/EssayResponse/createCustomCategory.smoke.js +1 -1
  49. package/cypress/e2e/ILC/EssayResponse/editCategoryFlyout.js +0 -1
  50. package/cypress/e2e/ILC/EssayResponse/editTabBasicSections.js +23 -37
  51. package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/allOrNothingForAllViews.smoke.js +210 -0
  52. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/dropdownAndDropdownMenuSection.js +2 -0
  53. package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editQuestion.smoke.js +40 -0
  54. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/allOrNothingForAllViews.smoke.js +216 -0
  55. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/backgroundImageAndCanvasProperties.js +0 -1
  56. package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/studentViewSettings.js +1 -1
  57. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/dropdownAndDropdownMenuSection.js +2 -0
  58. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editQuestion.smoke.js +45 -0
  59. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editTabBasicSection.js +0 -1
  60. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/allOrNothingForAllViews.smoke.js +213 -0
  61. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/backgroundImageAndCanvasProperties.js +2 -1
  62. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/editTabScoringSection.js +2 -0
  63. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/supportedFileTypes.js +3 -1
  64. package/cypress/e2e/ILC/FillInTheGapsTextNew/allOrNothingForAllViews.smoke.js +207 -0
  65. package/cypress/e2e/ILC/FillInTheGapsTextNew/editTabScoringSection.js +2 -1
  66. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +73 -0
  67. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +38 -0
  68. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +38 -0
  69. package/cypress/e2e/ILC/Graphing/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +87 -0
  70. package/cypress/e2e/ILC/Graphing/checkAddAlternativeButton.js +35 -0
  71. package/cypress/e2e/ILC/Graphing/editQuestion.smoke.js +28 -0
  72. package/cypress/e2e/ILC/Graphing/editTabBasicSection.js +38 -0
  73. package/cypress/e2e/ILC/Graphing/editTabScoringSection.js +1 -0
  74. package/cypress/e2e/ILC/Graphing/headerSection.js +36 -4
  75. package/cypress/e2e/ILC/Graphing/layoutAndGridOptions.js +6 -3
  76. package/cypress/e2e/ILC/GridFill/addAlternateButton.js +40 -0
  77. package/cypress/e2e/ILC/GridFill/customizeLayoutFillImageBackgroundImage.js +5 -6
  78. package/cypress/e2e/ILC/GridFill/customizeLayoutSectionShadeCellsGridBorders.js +2 -0
  79. package/cypress/e2e/ILC/GridFill/editTabScoringSection.js +3 -0
  80. package/cypress/e2e/ILC/GridFill/headerSection.js +1 -3
  81. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +39 -0
  82. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  83. package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +39 -0
  84. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountAllOrNothingCorrectPointsGreaterThanAlternativePoints.js +37 -0
  85. package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountallOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
  86. package/cypress/e2e/ILC/GridFill/scoring/cellshadeCountAllOrNothingAlternativePointsGreaterThanCorrectPoints.js +36 -0
  87. package/cypress/e2e/ILC/GridFill/scoring/checkLabelSaveAsYouGo.js +75 -0
  88. package/cypress/e2e/ILC/GridFill/specifyCorrectAnswerSection.js +2 -4
  89. package/cypress/e2e/ILC/ImageHighlight/Scoring/partialDifferentWeightsScoring.js +2 -1
  90. package/cypress/e2e/ILC/ImageHighlight/headerSection.js +2 -1
  91. package/cypress/e2e/ILC/ImageHighlight/studentViewSettings.js +2 -2
  92. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +24 -0
  93. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +24 -0
  94. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +24 -0
  95. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +86 -0
  96. package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsBasic.js +1 -1
  97. package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +1 -1
  98. package/cypress/e2e/ILC/ListOrderingDropdown/checkAddAlternativeButton.js +35 -0
  99. package/cypress/e2e/ILC/ListOrderingDropdown/editTabBasicSection.js +24 -0
  100. package/cypress/e2e/ILC/ListOrderingDropdown/headerSection.js +108 -0
  101. package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +6 -10
  102. package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js +2 -1
  103. package/cypress/e2e/ILC/ListOrderingNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +52 -0
  104. package/cypress/e2e/ILC/ListOrderingNew/editTabBasicSection.js +23 -0
  105. package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +35 -9
  106. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +41 -0
  107. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +30 -0
  108. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +50 -0
  109. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +101 -0
  110. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/checkAddAlternativeButton.js +38 -0
  111. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabBasicSection.js +24 -0
  112. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabScoring.js +4 -1
  113. package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/headerSection.js +35 -1
  114. package/cypress/e2e/ILC/Matching/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +98 -0
  115. package/cypress/e2e/ILC/Matching/allOrNothingScoringForAllViews.smoke.js +210 -0
  116. package/cypress/e2e/ILC/Matching/checkAlternativeButton.js +38 -0
  117. package/cypress/e2e/ILC/Matching/clickAndDrop.js +3 -5
  118. package/cypress/e2e/ILC/Matching/draggableOptions.js +4 -0
  119. package/cypress/e2e/ILC/Matching/editTabBasicSection.js +41 -0
  120. package/cypress/e2e/ILC/Matching/headerSection.js +36 -11
  121. package/cypress/e2e/ILC/Matching/questionInstructionsAndPromptSection.js +2 -15
  122. package/cypress/e2e/ILC/MatchingDropdown/allOrNothingScoringForAllViews.smoke.js +208 -0
  123. package/cypress/e2e/ILC/MultipleSelection/allOrNothingBasicForAllViews.smoke.js +227 -0
  124. package/cypress/e2e/ILC/MultipleSelection/allOrNothingWithAlternativeAnswer.js +6 -3
  125. package/cypress/e2e/ILC/MultipleSelection/checkScoringLabelBannerAndCorrectAnswer.js +3 -1
  126. package/cypress/e2e/ILC/MultipleSelection/editTabScoringSection.js +6 -3
  127. package/cypress/e2e/ILC/MultipleSelection/headerSection.js +1 -0
  128. package/cypress/e2e/ILC/MultipleSelection/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -1
  129. package/cypress/e2e/ILC/MultipleSelection/partialDifferentWeightsBasic.js +1 -1
  130. package/cypress/e2e/ILC/MultipleSelection/partialDifferentWeightsWithAlternativeAnswer.js +69 -64
  131. package/cypress/e2e/ILC/MultipleSelection/partialEqualWeightsWithAlternativeAnswer.js +6 -4
  132. package/cypress/e2e/ILC/MultipleSelectionGridNew/Scoring/checkScoringLabelBannerAndCorrectAnswer.js +1 -0
  133. package/cypress/e2e/ILC/MultipleSelectionGridNew/allOrNothingBasicForAllViews.smoke.js +220 -0
  134. package/cypress/e2e/ILC/MultipleSelectionGridNew/editTabScoringSection.js +11 -5
  135. package/cypress/e2e/ILC/MultipleSelectionGridNew/styleAndLayoutCustomizationLayoutProperties.js +5 -2
  136. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +79 -0
  137. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +42 -0
  138. package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +42 -0
  139. package/cypress/e2e/ILC/NumberLine/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +75 -0
  140. package/cypress/e2e/ILC/NumberLine/checkAddAlternativeButton.js +32 -0
  141. package/cypress/e2e/ILC/NumberLine/editTabSection.js +38 -0
  142. package/cypress/e2e/ILC/NumberLine/headerSection.js +33 -4
  143. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +81 -0
  144. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +43 -0
  145. package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +43 -0
  146. package/cypress/e2e/ILC/NumberLineLabel/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +76 -0
  147. package/cypress/e2e/ILC/NumberLineLabel/additionalSettingsBasic.js +1 -1
  148. package/cypress/e2e/ILC/NumberLineLabel/checkAddAlternativeButton.js +34 -0
  149. package/cypress/e2e/ILC/NumberLineLabel/editTabSection.js +38 -0
  150. package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +37 -5
  151. package/cypress/e2e/ILC/NumberLineLabel/manuallyAndNonScoredEditTab.js +2 -1
  152. package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/editQuestion.smoke.js +1 -1
  153. package/cypress/e2e/ILC/ShortTextResponseNew/editTabBasicSections.js +35 -51
  154. package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +2 -4
  155. package/cypress/e2e/ILC/SingleSelection/allOrNothingBasicForAllViews.smoke.js +192 -0
  156. package/cypress/e2e/ILC/SingleSelection/checkScoringLabelBannerAndCorrectAnswer.js +3 -1
  157. package/cypress/e2e/ILC/SingleSelection/headerSection.js +1 -0
  158. package/cypress/e2e/ILC/SingleSelection/manuallyAndNonScoredScoring.js +94 -88
  159. package/cypress/e2e/ILC/SingleSelectionGridNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +3 -1
  160. package/cypress/e2e/ILC/SingleSelectionGridNew/allOrNothingBasicForAllViews.smoke.js +209 -0
  161. package/cypress/e2e/ILC/SingleSelectionGridNew/editTabScoringSection.js +5 -0
  162. package/cypress/e2e/ILC/SingleSelectionGridNew/styleAndLayoutCustomizationLayoutProperties.js +8 -2
  163. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +86 -0
  164. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +86 -0
  165. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  166. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +3 -1
  167. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  168. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  169. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsScoringBasic.js +10 -3
  170. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +4 -2
  171. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +5 -3
  172. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  173. package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsScoringBasic.js +4 -0
  174. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +64 -0
  175. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAddEvaluation.js +2 -0
  176. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAlternateAnswer.js +2 -0
  177. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +64 -0
  178. package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
  179. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  180. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  181. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  182. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsScoringBasic.js +8 -0
  183. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
  184. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
  185. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
  186. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasic.js +1 -0
  187. package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasicForAlternateAnswer.js +2 -0
  188. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +2 -0
  189. package/cypress/e2e/ILC/TextEntryMath/editTabBasicSection.js +27 -3
  190. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodEquivalentStructures.smoke.js +86 -0
  191. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchExact.smoke.js +97 -0
  192. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchValue.smoke.js +97 -0
  193. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodSymbolsAreEquivalent.smoke.js +167 -0
  194. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodValueIsEquivalent.smoke.js +167 -1
  195. package/cypress/e2e/ILC/TextEntryMath/headerSection.js +43 -0
  196. package/cypress/e2e/ILC/TextEntryMath/previewContentsForAllViews.smoke.js +1 -1
  197. package/cypress/e2e/ILC/TextSelection/ScoringParagraph/checkScoringLabelBannerAndCorrectAnswerSection.js +0 -1
  198. package/cypress/e2e/ILC/TextSelection/textSelectionModesInSpecifyPossibleOptionsSection.js +7 -12
  199. package/cypress/e2e/ILC/ThinkSphere/additionalSettings.js +1 -1
  200. package/cypress/e2e/ILC/ThinkSphere/createReviewItem.js +58 -4
  201. package/cypress/e2e/ILC/ThinkSphere/editTabBasicSection.js +208 -13
  202. package/cypress/e2e/ILC/ThinkSphere/editThinkSphereQuestion.smoke.js +259 -9
  203. package/cypress/e2e/ILC/ThinkSphere/equationEditorCreateCustomCategory.smoke.js +417 -0
  204. package/cypress/e2e/ILC/ThinkSphere/equationEditorEditCategoryFlyOut.js +291 -0
  205. package/cypress/e2e/ILC/ThinkSphere/planPhase.js +409 -4
  206. package/cypress/e2e/ILC/ThinkSphere/previewTabPlanSection.js +541 -0
  207. package/cypress/e2e/ILC/ThinkSphere/previewTabReviewSection.js +97 -0
  208. package/cypress/e2e/ILC/ThinkSphere/solvePhase.js +39 -6
  209. package/cypress/e2e/ILC/ThinkSphere/studentViewPlanTabSection.js +393 -0
  210. package/cypress/e2e/ILC/ThinkSphere/studentViewReviewTabSection.js +141 -0
  211. package/cypress/e2e/ILC/ToolAudioPlayerNew/headerSection.js +90 -2
  212. package/cypress/e2e/ILC/UploadResponse/editTabBasicSection.js +34 -0
  213. package/cypress/e2e/ILC/UploadResponse/headerSection.js +38 -1
  214. package/cypress/e2e/ILC/UploadResponse/uploadResponsePreview.js +50 -13
  215. package/cypress/e2e/ILC/VideoResponseNew/editTabBasicSection.js +14 -29
  216. package/cypress/e2e/ILC/chartsDotsPlot/headerSection.js +16 -1
  217. package/cypress/e2e/Sessions/fetchResponses.js +3 -3
  218. package/cypress/e2e/Sessions/scores.js +0 -5
  219. package/cypress/e2e/applitools.config.js +3 -3
  220. package/cypress/fixtures/theme/ilc.json +5 -1
  221. package/cypress/fixtures/uploads/sample.webm +0 -0
  222. package/cypress/fixtures/uploads/sample.wmv +0 -0
  223. package/cypress/fixtures/uploads/sample30MB.mp4 +0 -0
  224. package/cypress/pages/audioPlayerPage.js +47 -22
  225. package/cypress/pages/brainingCampManipulativePage.js +1 -1
  226. package/cypress/pages/chartsBarPage.js +20 -0
  227. package/cypress/pages/components/additionalSettingsPanel.js +3 -2
  228. package/cypress/pages/components/autoScoredScoringSectionMultiResponseType.js +2 -0
  229. package/cypress/pages/components/browseItemsPage.js +109 -2
  230. package/cypress/pages/components/ckEditorEquationEditorComponent.js +5 -4
  231. package/cypress/pages/components/ckEditorInsertImageComponent.js +2 -2
  232. package/cypress/pages/components/ckEditorInsertTableComponent.js +3 -3
  233. package/cypress/pages/components/ckEditorLinkComponent.js +8 -9
  234. package/cypress/pages/components/commonComponents.js +4 -0
  235. package/cypress/pages/components/createQuestionBasePage.js +14 -1
  236. package/cypress/pages/components/defaultToolDropdown.js +1 -1
  237. package/cypress/pages/components/editCategoryFlyout.js +2 -2
  238. package/cypress/pages/components/equationEditorSectionCommonComponent.js +10 -25
  239. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +28 -0
  240. package/cypress/pages/components/fillInTheGapsTextCommonComponent.js +7 -7
  241. package/cypress/pages/components/gridQuestionCommonComponent.js +8 -0
  242. package/cypress/pages/components/mcqAdditionalSettingsBase.js +4 -0
  243. package/cypress/pages/components/questionInstructionsComponent.js +7 -0
  244. package/cypress/pages/components/scoringSectionBaseEditTab.js +5 -0
  245. package/cypress/pages/contentBlocksPage.js +2 -0
  246. package/cypress/pages/desmos3DGraphingPage.js +149 -4
  247. package/cypress/pages/desmosGeometryPage.js +184 -4
  248. package/cypress/pages/drawingResponsePage.js +2 -0
  249. package/cypress/pages/fillInTheGapsOverImageDropdownPage.js +1 -1
  250. package/cypress/pages/gradingViewPage.js +8 -0
  251. package/cypress/pages/graphingPage.js +27 -8
  252. package/cypress/pages/gridFillPage.js +15 -6
  253. package/cypress/pages/listOrderingPage.js +32 -1
  254. package/cypress/pages/matchingPage.js +26 -7
  255. package/cypress/pages/multipleSelectionPage.js +10 -2
  256. package/cypress/pages/numberLineLabelPage.js +31 -8
  257. package/cypress/pages/numberLinePage.js +19 -7
  258. package/cypress/pages/textEntryMathPage.js +24 -1
  259. package/cypress/pages/thinkSpherePage.js +925 -47
  260. package/cypress/pages/uploadResponsePage.js +17 -1
  261. package/cypress/pages/videoResponsePage.js +3 -0
  262. package/cypress/support/commands.js +9 -0
  263. package/cypress/support/helpers/createItem.js +668 -19
  264. package/cypress/support/helpers/utilities.js +34 -1
  265. package/package.json +3 -3
@@ -788,5 +788,172 @@ describe('Create item page - Text entry math: Value is equivalent evaluation met
788
788
  textEntryMathPage.steps.verifyCorrectResponseIcon(0);
789
789
  textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
790
790
  });
791
+
792
+ //RCA - https://weldnorthed.atlassian.net/browse/IEI-5716
793
+ it('When the user enters a negative fraction value in \'Specify correct answer\' response field and then the user enters the exact same value then it should be treated as correct', () => {
794
+ textEntryMathPage.steps.switchToEditTab();
795
+ textEntryMathPage.steps.expandAndFocusInResponseAnswerInputFieldSpecifyCorrectAnswerSection(0);
796
+ equationEditorFlyout.steps.clearAll();
797
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-');
798
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }, { categoryName: 'numPad', symbolName: ['four'] }]);
799
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
800
+ equationEditorFlyout.steps.clickOnOkButton();
801
+ textEntryMathPage.steps.switchToPreviewTab();
802
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
803
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-');
804
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }, { categoryName: 'numPad', symbolName: ['four'] }]);
805
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
806
+ equationEditorFlyout.steps.clickOnOkButton();
807
+ textEntryMathPage.steps.switchToGradingView();
808
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
809
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
810
+ });
811
+
812
+ it('When the user enters a fraction value \'Specify correct answer\' response field and then the user enters the fraction with negative numerator which yields the same value but is not the exact form then it should be treated as correct', () => {
813
+ textEntryMathPage.steps.resetQuestionPreview();
814
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
815
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-');
816
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }, { categoryName: 'numPad', symbolName: ['subtract'] }, { categoryName: 'algebra', symbolName: ['groupInBrackets'] }, { categoryName: 'numPad', symbolName: ['subtract', 'one', 'six'] }]);
817
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['12']);
818
+ equationEditorFlyout.steps.clickOnOkButton();
819
+ textEntryMathPage.steps.switchToGradingView();
820
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
821
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
822
+ });
823
+
824
+ it('When the user enters a fraction value in \'Specify correct answer\' response field and then the user enters the mixed fraction which yields the same value but is not the exact form then it should be treated as correct', () => {
825
+ textEntryMathPage.steps.resetQuestionPreview();
826
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
827
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }, { categoryName: 'numPad', symbolName: ['subtract', 'four'] }]);
828
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
829
+ equationEditorFlyout.steps.clickOnOkButton();
830
+ textEntryMathPage.steps.switchToGradingView();
831
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
832
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
833
+ });
834
+
835
+ it('When the user enters a negative fraction value in \'Specify correct answer\' response field and then the user enters the mixed fraction which yields the same value but is not the exact form then it should be treated as correct', () => {
836
+ textEntryMathPage.steps.resetQuestionPreview();
837
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
838
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-1');
839
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['mixedFraction'] }]);
840
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['1', '3']);
841
+ equationEditorFlyout.steps.clickOnOkButton();
842
+ textEntryMathPage.steps.switchToGradingView();
843
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
844
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
845
+ });
846
+
847
+ it('When the user enters a negative mixed fraction value in \'Specify correct answer\' response field and then the user enters the exact same value then it should be treated as correct', () => {
848
+ textEntryMathPage.steps.switchToEditTab();
849
+ textEntryMathPage.steps.expandAndFocusInResponseAnswerInputFieldSpecifyCorrectAnswerSection(0);
850
+ equationEditorFlyout.steps.clearAll();
851
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-7');
852
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['mixedFraction'] }]);
853
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['1', '3']);
854
+ equationEditorFlyout.steps.clickOnOkButton();
855
+ textEntryMathPage.steps.switchToPreviewTab();
856
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
857
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-7');
858
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['mixedFraction'] }]);
859
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['1', '3']);
860
+ equationEditorFlyout.steps.clickOnOkButton();
861
+ textEntryMathPage.steps.switchToGradingView();
862
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
863
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
864
+ });
865
+
866
+ it('When the user enters a fraction value \'Specify correct answer\' response field and then the user enters the fraction with negative numerator which yields the same value but is not the exact form then it should be treated as correct', () => {
867
+ textEntryMathPage.steps.resetQuestionPreview();
868
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
869
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-6');
870
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['mixedFraction'] }]);
871
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['4', '3']);
872
+ equationEditorFlyout.steps.clickOnOkButton();
873
+ textEntryMathPage.steps.switchToGradingView();
874
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
875
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
876
+ });
877
+
878
+ it('When the user enters a fraction value in \'Specify correct answer\' response field and then the user enters the mixed fraction which yields the same value but is not the exact form then it should be treated as correct', () => {
879
+ textEntryMathPage.steps.resetQuestionPreview();
880
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
881
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }, { categoryName: 'numPad', symbolName: ['subtract', 'two', 'two'] }]);
882
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
883
+ equationEditorFlyout.steps.clickOnOkButton();
884
+ textEntryMathPage.steps.switchToGradingView();
885
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
886
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
887
+ });
888
+
889
+ //RCA https://weldnorthed.atlassian.net/browse/IEI-5709
890
+ it('When the user enters a fraction with variables along with relational operators in \'Specify correct answer\' and the user enters the exact same equation then it should be treated as correct', () => {
891
+ textEntryMathPage.steps.switchToEditTab();
892
+ textEntryMathPage.steps.expandAndFocusInResponseAnswerInputFieldSpecifyCorrectAnswerSection(0);
893
+ equationEditorFlyout.steps.clearAll();
894
+ equationEditorFlyout.steps.enterTextInPreviewInputField('ab>25');
895
+ equationEditorFlyout.steps.clickOnOkButton();
896
+ textEntryMathPage.steps.switchToPreviewTab();
897
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
898
+ equationEditorFlyout.steps.enterTextInPreviewInputField('ab>25');
899
+ equationEditorFlyout.steps.clickOnOkButton();
900
+ textEntryMathPage.steps.switchToGradingView();
901
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
902
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
903
+ });
904
+
905
+ it('When the user enters a fraction with variables and relational operators in \'Specify correct answer\' and the user enters the equation in a different format then it should be treated as correct', () => {
906
+ textEntryMathPage.steps.resetQuestionPreview();
907
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
908
+ equationEditorFlyout.steps.enterTextInPreviewInputField('a>');
909
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }]);
910
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['b', '25']);
911
+ equationEditorFlyout.steps.clickOnOkButton();
912
+ textEntryMathPage.steps.switchToGradingView();
913
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
914
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
915
+ });
916
+
917
+ it('When the user enters a fraction with variables and relational operators in \'Specify correct answer\' and the user enters the equation in reverse order then it should be treated as correct', () => {
918
+ textEntryMathPage.steps.resetQuestionPreview();
919
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
920
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }]);
921
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['b', '25']);
922
+ equationEditorFlyout.steps.enterTextInPreviewInputField('<a');
923
+ equationEditorFlyout.steps.clickOnOkButton();
924
+ textEntryMathPage.steps.switchToGradingView();
925
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
926
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
927
+ });
928
+
929
+ it('When the user enters a fraction with variables and relational operators in \'Specify correct answer\' and the user enters the equation with multiplication then it should be treated as correct', () => {
930
+ textEntryMathPage.steps.resetQuestionPreview();
931
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
932
+ equationEditorFlyout.steps.enterTextInPreviewInputField('a*b>25');
933
+ equationEditorFlyout.steps.clickOnOkButton();
934
+ textEntryMathPage.steps.switchToGradingView();
935
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
936
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
937
+ });
938
+
939
+ it('When the user enters a fraction with variables and relational operators in \'Specify correct answer\' and the user enters the equation in a different order with multiplication then it should be treated as correct', () => {
940
+ textEntryMathPage.steps.resetQuestionPreview();
941
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
942
+ equationEditorFlyout.steps.enterTextInPreviewInputField('b*a>25');
943
+ equationEditorFlyout.steps.clickOnOkButton();
944
+ textEntryMathPage.steps.switchToGradingView();
945
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
946
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
947
+ });
948
+
949
+ it('When the user enters a fraction with variables and relational operators in \'Specify correct answer\' and the user enters the equation with incorrect relational operator then it should be treated as incorrect', () => {
950
+ textEntryMathPage.steps.resetQuestionPreview();
951
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
952
+ equationEditorFlyout.steps.enterTextInPreviewInputField('ab>=25');
953
+ equationEditorFlyout.steps.clickOnOkButton();
954
+ textEntryMathPage.steps.switchToGradingView();
955
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
956
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
957
+ });
791
958
  });
792
959
  });
@@ -8,7 +8,6 @@ describe('Create item page - Text entry math: Value is equivalent evaluation met
8
8
  cy.loginAs('admin');
9
9
  });
10
10
 
11
- //Failing due to https://redmine.zeuslearning.com/issues/562013
12
11
  describe('Evaluation methods: Value is equivalent', { tags: 'smoke' }, () => {
13
12
  abortEarlySetup();
14
13
  before(() => {
@@ -529,5 +528,172 @@ describe('Create item page - Text entry math: Value is equivalent evaluation met
529
528
  textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
530
529
  textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
531
530
  });
531
+
532
+ //RCA - https://weldnorthed.atlassian.net/browse/IEI-5716
533
+ it('When the user enters a negative fraction value in \'Specify correct answer\' response field and then the user enters the exact same value then it should be treated as correct', () => {
534
+ textEntryMathPage.steps.switchToEditTab();
535
+ textEntryMathPage.steps.expandAndFocusInResponseAnswerInputFieldSpecifyCorrectAnswerSection(0);
536
+ equationEditorFlyout.steps.clearAll();
537
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-');
538
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }, { categoryName: 'numPad', symbolName: ['four'] }]);
539
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
540
+ equationEditorFlyout.steps.clickOnOkButton();
541
+ textEntryMathPage.steps.switchToPreviewTab();
542
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
543
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-');
544
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }, { categoryName: 'numPad', symbolName: ['four'] }]);
545
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
546
+ equationEditorFlyout.steps.clickOnOkButton();
547
+ textEntryMathPage.steps.switchToGradingView();
548
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
549
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
550
+ });
551
+
552
+ it('When the user enters a fraction value \'Specify correct answer\' response field and then the user enters the fraction with negative numerator which yields the same value but is not the exact form then it should be treated as correct', () => {
553
+ textEntryMathPage.steps.resetQuestionPreview();
554
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
555
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-');
556
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }, { categoryName: 'numPad', symbolName: ['subtract'] }, { categoryName: 'algebra', symbolName: ['groupInBrackets'] }, { categoryName: 'numPad', symbolName: ['subtract', 'one', 'six'] }]);
557
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['12']);
558
+ equationEditorFlyout.steps.clickOnOkButton();
559
+ textEntryMathPage.steps.switchToGradingView();
560
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
561
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
562
+ });
563
+
564
+ it('When the user enters a fraction value in \'Specify correct answer\' response field and then the user enters the mixed fraction which yields the same value but is not the exact form then it should be treated as correct', () => {
565
+ textEntryMathPage.steps.resetQuestionPreview();
566
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
567
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }, { categoryName: 'numPad', symbolName: ['subtract', 'four'] }]);
568
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
569
+ equationEditorFlyout.steps.clickOnOkButton();
570
+ textEntryMathPage.steps.switchToGradingView();
571
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
572
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
573
+ });
574
+
575
+ it('When the user enters a negative fraction value in \'Specify correct answer\' response field and then the user enters the mixed fraction which yields the same value but is not the exact form then it should be treated as correct', () => {
576
+ textEntryMathPage.steps.resetQuestionPreview();
577
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
578
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-1');
579
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['mixedFraction'] }]);
580
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['1', '3']);
581
+ equationEditorFlyout.steps.clickOnOkButton();
582
+ textEntryMathPage.steps.switchToGradingView();
583
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
584
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
585
+ });
586
+
587
+ it('When the user enters a negative mixed fraction value in \'Specify correct answer\' response field and then the user enters the exact same value then it should be treated as correct', () => {
588
+ textEntryMathPage.steps.switchToEditTab();
589
+ textEntryMathPage.steps.expandAndFocusInResponseAnswerInputFieldSpecifyCorrectAnswerSection(0);
590
+ equationEditorFlyout.steps.clearAll();
591
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-7');
592
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['mixedFraction'] }]);
593
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['1', '3']);
594
+ equationEditorFlyout.steps.clickOnOkButton();
595
+ textEntryMathPage.steps.switchToPreviewTab();
596
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
597
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-7');
598
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['mixedFraction'] }]);
599
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['1', '3']);
600
+ equationEditorFlyout.steps.clickOnOkButton();
601
+ textEntryMathPage.steps.switchToGradingView();
602
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
603
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
604
+ });
605
+
606
+ it('When the user enters a fraction value \'Specify correct answer\' response field and then the user enters the fraction with negative numerator which yields the same value but is not the exact form then it should be treated as correct', () => {
607
+ textEntryMathPage.steps.resetQuestionPreview();
608
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
609
+ equationEditorFlyout.steps.enterTextInPreviewInputField('-6');
610
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['mixedFraction'] }]);
611
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['4', '3']);
612
+ equationEditorFlyout.steps.clickOnOkButton();
613
+ textEntryMathPage.steps.switchToGradingView();
614
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
615
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
616
+ });
617
+
618
+ it('When the user enters a fraction value in \'Specify correct answer\' response field and then the user enters the mixed fraction which yields the same value but is not the exact form then it should be treated as correct', () => {
619
+ textEntryMathPage.steps.resetQuestionPreview();
620
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
621
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }, { categoryName: 'numPad', symbolName: ['subtract', 'two', 'two'] }]);
622
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['3']);
623
+ equationEditorFlyout.steps.clickOnOkButton();
624
+ textEntryMathPage.steps.switchToGradingView();
625
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
626
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
627
+ });
628
+
629
+ //RCA https://weldnorthed.atlassian.net/browse/IEI-5709
630
+ it('When the user enters a fraction with variables along with relational operators in \'Specify correct answer\' and the user enters the exact same equation then it should be treated as correct', () => {
631
+ textEntryMathPage.steps.switchToEditTab();
632
+ textEntryMathPage.steps.expandAndFocusInResponseAnswerInputFieldSpecifyCorrectAnswerSection(0);
633
+ equationEditorFlyout.steps.clearAll();
634
+ equationEditorFlyout.steps.enterTextInPreviewInputField('ab>25');
635
+ equationEditorFlyout.steps.clickOnOkButton();
636
+ textEntryMathPage.steps.switchToPreviewTab();
637
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
638
+ equationEditorFlyout.steps.enterTextInPreviewInputField('ab>25');
639
+ equationEditorFlyout.steps.clickOnOkButton();
640
+ textEntryMathPage.steps.switchToGradingView();
641
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
642
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
643
+ });
644
+
645
+ it('When the user enters a fraction with variables and relational operators in \'Specify correct answer\' and the user enters the equation in a different format then it should be treated as incorrect', () => {
646
+ textEntryMathPage.steps.resetQuestionPreview();
647
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
648
+ equationEditorFlyout.steps.enterTextInPreviewInputField('a>');
649
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }]);
650
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['b', '25']);
651
+ equationEditorFlyout.steps.clickOnOkButton();
652
+ textEntryMathPage.steps.switchToGradingView();
653
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
654
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
655
+ });
656
+
657
+ it('When the user enters a fraction with variables and relational operators in \'Specify correct answer\' and the user enters the equation in reverse order then it should be treated as incorrect', () => {
658
+ textEntryMathPage.steps.resetQuestionPreview();
659
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
660
+ equationEditorFlyout.steps.enterEquation([{ categoryName: 'intermediate', symbolName: ['fraction'] }]);
661
+ equationEditorFlyout.steps.enterTextInFirstEmptyBox(['b', '25']);
662
+ equationEditorFlyout.steps.enterTextInPreviewInputField('<a');
663
+ equationEditorFlyout.steps.clickOnOkButton();
664
+ textEntryMathPage.steps.switchToGradingView();
665
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
666
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
667
+ });
668
+
669
+ it('When the user enters a fraction with variables and relational operators in \'Specify correct answer\' and the user enters the equation with multiplication then it should be treated as correct', () => {
670
+ textEntryMathPage.steps.resetQuestionPreview();
671
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
672
+ equationEditorFlyout.steps.enterTextInPreviewInputField('a*b>25');
673
+ equationEditorFlyout.steps.clickOnOkButton();
674
+ textEntryMathPage.steps.switchToGradingView();
675
+ textEntryMathPage.steps.verifyCorrectResponseIcon(0);
676
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
677
+ });
678
+
679
+ it('When the user enters a fraction with variables and relational operators in \'Specify correct answer\' and the user enters the equation in a different order with multiplication then it should be treated as incorrect', () => {
680
+ textEntryMathPage.steps.resetQuestionPreview();
681
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
682
+ equationEditorFlyout.steps.enterTextInPreviewInputField('b*a>25');
683
+ equationEditorFlyout.steps.clickOnOkButton();
684
+ textEntryMathPage.steps.switchToGradingView();
685
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
686
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
687
+ });
688
+
689
+ it('When the user enters a fraction with variables and relational operators in \'Specify correct answer\' and the user enters the equation with incorrect relational operator then it should be treated as incorrect', () => {
690
+ textEntryMathPage.steps.resetQuestionPreview();
691
+ textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
692
+ equationEditorFlyout.steps.enterTextInPreviewInputField('ab>=25');
693
+ equationEditorFlyout.steps.clickOnOkButton();
694
+ textEntryMathPage.steps.switchToGradingView();
695
+ textEntryMathPage.steps.verifyIncorrectResponseIcon(0);
696
+ textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
697
+ });
532
698
  });
533
699
  });
@@ -0,0 +1,43 @@
1
+ import { textEntryMathPage } from "../../../pages";
2
+ import { browseItemsPage } from "../../../pages/components";
3
+ import { itemPreviewPage } from "../../../pages";
4
+ import abortEarlySetup from "../../../support/helpers/abortEarly";
5
+ import utilities from "../../../support/helpers/utilities";
6
+
7
+ var itemReferenceID = "";
8
+
9
+ describe('Create Item page - Text Entry Math: Header section and Saving question', () => {
10
+ before(() => {
11
+ cy.loginAs('admin');
12
+ });
13
+
14
+ describe('Saving a question with incomplete authoring', () => {
15
+ abortEarlySetup();
16
+ before(() => {
17
+ textEntryMathPage.steps.navigateToCreateQuestion('Text Entry Math');
18
+ cy.barsPreLoaderWait();
19
+ });
20
+
21
+ it('User should be able to save the question with incomplete authoring and snackbar with the text "Saved successfully!" should be displayed', () => {
22
+ textEntryMathPage.steps.saveAQuestionWithIncompleteAuthoring();
23
+ });
24
+ textEntryMathPage.tests.verifySavedSuccessfullySnackbarCSSAndA11y();
25
+ });
26
+
27
+ describe('Save as you go - Browse item page contents', () => {
28
+ abortEarlySetup();
29
+ before(() => {
30
+ cy.log('Navigating to Text Entry Math question type');
31
+ textEntryMathPage.steps.navigateToCreateQuestion('Text Entry Math');
32
+ cy.barsPreLoaderWait();
33
+ textEntryMathPage.steps.saveAQuestionWithIncompleteAuthoring();
34
+ utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
35
+ itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
36
+ browseItemsPage.steps.navigateToBrowseItemsPage();
37
+ });
38
+
39
+ it('When user saves an incompletely authored question then a warning icon should be visible in browse items page', () => {
40
+ browseItemsPage.steps.verifyWarningIconInBrowseItemPage(`${itemReferenceID}`);
41
+ });
42
+ });
43
+ });
@@ -82,7 +82,7 @@ describe('Create item page - Text entry math: Preview contents', () => {
82
82
  it(`TEM ${view}: Question instructions should be visible`, () => {
83
83
  //Question instrunctions does not load causing unnecessary failures hence skipped
84
84
  //utilities.verifyInnerText(textEntryMathPage.questionInstructionsText(), 'Enter the correct answer in the response field');
85
- utilities.verifyElementVisibilityState(textEntryMathPage.questionInstructionsText(), 'visible');
85
+ // utilities.verifyElementVisibilityState(textEntryMathPage.questionInstructionsText(), 'visible');
86
86
  cy.eyesCheckWindow(`TEM ${view}: Default state`);
87
87
  });
88
88
 
@@ -94,7 +94,6 @@ describe('Create Item page - Text Selection', () => {
94
94
  textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[0]);
95
95
  textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[1]);
96
96
  textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[2]);
97
- textSelectionPage.steps.switchToPreviewTab();
98
97
  });
99
98
 
100
99
  it('When the user selects \'Grading\' view without setting the answer, correct answers section and answer status banner should not be displayed', () => {
@@ -71,7 +71,7 @@ describe('Create Item page - Text selection: Text selection modes in specify pos
71
71
  textSelectionPage.steps.verifyOptionCounterTextAndValue(1);
72
72
  });
73
73
 
74
- it('When user clears all selected options with the \'Clear\' button, then all the selected options should be deselected and the specify possible options field should be in errored state with the error message \'Error: Minimum one highlight option is required.\'', () => {
74
+ it('When user clears all selected options with the \'Clear\' button, then all the selected options should be deselected and the specify possible options field should not be in errored state with the error message', () => {
75
75
  cy.log('Pre-step: Selecting multiple texts to create options');
76
76
  textSelectionPage.steps.selectOptionInSpecifyPossibleOptionsSection('Custom', customTextArray[0]);
77
77
  textSelectionPage.steps.selectOptionInSpecifyPossibleOptionsSection('Custom', customTextArray[1]);
@@ -211,19 +211,16 @@ describe('Create Item page - Text selection: Text selection modes in specify pos
211
211
  textSelectionPage.steps.verifyOptionIsNotSelectedInSpecifyPossibleOptionsSection(paragraphTextArray[2]);
212
212
  });
213
213
 
214
- it('When user clicks on \'Confirm\' button of the Clear popup, then the popup should be closed and all the selected options should be deselected and the specify possible options field should be in errored state with the error message \'Error: Minimum one highlight option is required.\'', () => {
214
+ it('When user clicks on \'Confirm\' button of the Clear popup, then the popup should be closed and all the selected options should be deselected and the specify possible options field should not be in errored state with the error message', () => {
215
215
  cy.log('Pre-step: Again clicking on Clear button to open Clear popup');
216
216
  textSelectionPage.steps.clickOnClearOptionsButtonInSpecifyPossibleOptionSection();
217
217
  textSelectionPage.steps.clickOnAcceptButtonInDialogBox();
218
218
  for (let arrayIndex = 0; arrayIndex < paragraphTextArray.length; arrayIndex++) {
219
219
  textSelectionPage.steps.verifyOptionIsNotSelectedInSpecifyPossibleOptionsSection(paragraphTextArray[arrayIndex]);
220
220
  }
221
- utilities.verifyInnerText(textSelectionPage.errorMessage(), 'Error: Minimum one highlight option is required.');
222
- textSelectionPage.steps.verifyErroredStateOfSpecifyPossibleOptionsSection();
221
+ textSelectionPage.steps.verifyErrorMessageIsNotDisplayed();
223
222
  });
224
223
 
225
- textSelectionPage.tests.verifyErrorMessageCSSAndA11y();
226
-
227
224
  it('When user click on a deselected option, the option should be selected and the error message should disappear and option counter should display 1 count', () => {
228
225
  textSelectionPage.steps.selectOptionInSpecifyPossibleOptionsSection('Paragraph', paragraphTextArray[0]);
229
226
  utilities.verifyElementVisibilityState(textSelectionPage.errorMessage(), 'notExist');
@@ -286,8 +283,7 @@ describe('Create Item page - Text selection: Text selection modes in specify pos
286
283
  it('When user clears all selected options with the \'Clear\' button, then all the selected options should be deselected and the specify possible options field should be in errored state with the error message \'Error: Minimum one highlight option is required.\'', () => {
287
284
  textSelectionPage.steps.clearSelectedOptionsInSpecifyPossibleOptionSection();
288
285
  utilities.verifyElementVisibilityState(textSelectionPage.selectedOptionSpecifyPossibleOptions(), 'notExist');
289
- utilities.verifyInnerText(textSelectionPage.errorMessage(), 'Error: Minimum one highlight option is required.');
290
- textSelectionPage.steps.verifyErroredStateOfSpecifyPossibleOptionsSection();
286
+ textSelectionPage.steps.verifyErrorMessageIsNotDisplayed();
291
287
  });
292
288
 
293
289
  textSelectionPage.tests.verifyErrorMessageCSSAndA11y();
@@ -355,18 +351,17 @@ describe('Create Item page - Text selection: Text selection modes in specify pos
355
351
  textSelectionPage.steps.verifyHoverStateOfDeselectedOptionInSpecifyPossibleOptionsSection(wordTextArray[2], 'blue');
356
352
  });
357
353
 
358
- it('When user clears all selected options with the \'Clear\' button, then all the selected options should be deselected and the specify possible options field should be in errored state with the error message \'Error: Minimum one highlight option is required.\'', () => {
354
+ it('When user clears all selected options with the \'Clear\' button, then all the selected options should be deselected and the specify possible options field should not be in errored state with the error message', () => {
359
355
  textSelectionPage.steps.clearSelectedOptionsInSpecifyPossibleOptionSection();
360
356
  for (let arrayIndex = 0; arrayIndex < sentenceTextArray.length; arrayIndex++) {
361
357
  textSelectionPage.steps.verifyOptionIsNotSelectedInSpecifyPossibleOptionsSection(wordTextArray[arrayIndex]);
362
358
  }
363
- utilities.verifyInnerText(textSelectionPage.errorMessage(), 'Error: Minimum one highlight option is required.');
364
- textSelectionPage.steps.verifyErroredStateOfSpecifyPossibleOptionsSection();
359
+ textSelectionPage.steps.verifyErrorMessageIsNotDisplayed();
365
360
  });
366
361
 
367
362
  textSelectionPage.tests.verifyErrorMessageCSSAndA11y();
368
363
 
369
- it('When user click on a deselected option, the option should be selected and the error message should disappear and option counter should display 1 count', () => {
364
+ it('When user click on a deselected option, the option should be selected and the error message should not be displayed and option counter should display 1 count', () => {
370
365
  textSelectionPage.steps.selectOptionInSpecifyPossibleOptionsSection('Word', wordTextArray[0]);
371
366
  utilities.verifyElementVisibilityState(textSelectionPage.errorMessage(), 'notExist');
372
367
  textSelectionPage.steps.verifyOptionCounterTextAndValue(1);
@@ -42,7 +42,7 @@ describe('ThinkSphere: Additional Settings accordion', () => {
42
42
  utilities.verifyElementVisibilityState(thinkSpherePage.fontSizeDropdown(), 'visible');
43
43
  });
44
44
 
45
- fontSizeDropdownOptions.forEach((option, fontsIndex) => {
45
+ fontSizeDropdownOptions.forEach((option, _) => {
46
46
  it(`When the user selects '${option}' option from the Font Size dropdown, then font size of the preview tab should change to ${option} accordingly`, () => {
47
47
  thinkSpherePage.steps.selectFontSizeOptionFromFontSizeDropdown(option);
48
48
  utilities.verifyInnerText(thinkSpherePage.fontSizeDropdown(), `${option}`);
@@ -6,9 +6,21 @@ const allowedQuestions = [
6
6
  'multiple selection',
7
7
  'single selection',
8
8
  'fill in the gaps with text',
9
- 'Drawing Response',
9
+ 'fill in the gaps with drag and drop',
10
+ 'drag and drop into categories',
11
+ 'matching',
10
12
  'short text response',
11
- 'Text Entry Math'
13
+ 'Text Entry Math',
14
+ ]
15
+
16
+ const dropDownArray = [
17
+ 'All question types',
18
+ 'Multiple choice selection',
19
+ 'Fill in the gaps',
20
+ 'Drag and drop',
21
+ 'List',
22
+ 'Constructed response',
23
+ 'Math response',
12
24
  ]
13
25
  describe("Create Review Item", () => {
14
26
  abortEarlySetup();
@@ -17,7 +29,7 @@ describe("Create Review Item", () => {
17
29
  cy.deleteThinkSphereItem('~zzz item name');
18
30
  cy.createThinkSphereItem('~zzz item name');
19
31
  thinkSpherePage.steps.navigateToReviewItemsPage();
20
- })
32
+ });
21
33
 
22
34
  after(() => {
23
35
  cy.deleteThinkSphereItem('~zzz item name');
@@ -40,9 +52,51 @@ describe("Create Review Item", () => {
40
52
  utilities.verifyElementVisibilityState(thinkSpherePage.browseItemPageHeader(), 'visible');
41
53
  });
42
54
 
55
+ it('When user clicks on create question, search bar should appear with placeholder, \'Search by question and tool tip \'Search\'', () => {
56
+ thinkSpherePage.steps.clickOnCreateItemButton();
57
+ thinkSpherePage.steps.verifySearchBarComponent();
58
+ thinkSpherePage.steps.verifySearchIcon();
59
+ thinkSpherePage.steps.verifyCloseIcon();
60
+ thinkSpherePage.steps.verifyReviewItemSearchBarPlaceholder();
61
+ thinkSpherePage.steps.hoverOnSearchBarComponent();
62
+ thinkSpherePage.searchBarParent().verifyTooltip('Search');
63
+ });
64
+
65
+ it('The author should be able to type in letters numbers, special character, alpha numeric characters in the search input field.', () => {
66
+ const testInputs = [
67
+ 'abc', // letters
68
+ '123', // numbers
69
+ '!@#$%^&*()', // special characters
70
+ 'abc123XYZ', // alphanumeric
71
+ 'test@123.com' // mixed
72
+ ];
73
+
74
+ testInputs.forEach((input) => {
75
+ thinkSpherePage.steps.typeInSearchBar(input);
76
+ });
77
+ });
78
+
79
+ it('When the author types the question type in search bar, only that particular question card should be present', () => {
80
+ thinkSpherePage.steps.searchInSearchBar('single selection');
81
+ thinkSpherePage.steps.verifyLength(thinkSpherePage.cardWrapper(), 1);
82
+ utilities.verifyInnerText(thinkSpherePage.cardLabel(), 'Single selection');
83
+ });
84
+
85
+ it('Create review item page should have a categories dropdown with default value as \'All question types\'', () => {
86
+ utilities.verifyElementVisibilityState(thinkSpherePage.categoriesDropDown(), 'visible');
87
+ utilities.verifyInnerText(thinkSpherePage.categoriesDropDownLabelText(), 'All question types');
88
+ });
89
+
90
+ it(`The category dropdown should contain the following dropdown options and when any question type is clicked the cards should have those question types only `, () => {
91
+ thinkSpherePage.steps.expandDropdown();
92
+ thinkSpherePage.steps.verifyDropdownOptions(dropDownArray);
93
+ thinkSpherePage.steps.clickOnDropDownCategory(3);
94
+ utilities.verifyInnerText(thinkSpherePage.cardLabel(), 'Drag and drop into categories');
95
+ thinkSpherePage.steps.clickOnCancelButton();
96
+ });
97
+
43
98
  it('When the user creates a new review item and then saves it, it should be displayed in the thinkSphere item page', () => {
44
99
  thinkSpherePage.steps.createReviewQuestion();
45
- thinkSpherePage.steps.clickOnSaveButton();
46
100
  utilities.verifyElementCount(thinkSpherePage.widgetHeaderQuestionTitle(), 2);
47
101
  });
48
102