itemengine-cypress-automation 1.0.50 → 1.0.62

Sign up to get free protection for your applications and to get access to all the features.
Files changed (186) hide show
  1. package/cypress/e2e/ILC/AudioPlayer/audioPlayerEditTab.js +342 -0
  2. package/cypress/e2e/ILC/AudioPlayer/audioPlayerEditTabAddFeatureRadioButton.js +218 -0
  3. package/cypress/e2e/ILC/AudioPlayer/audioPlayerEditTabTitleDescriptionAndTranscript.js +187 -0
  4. package/cypress/e2e/ILC/AudioPlayer/audioPlayerHeaderSection.js +73 -0
  5. package/cypress/e2e/ILC/AudioPlayer/audioPlayerPreviewTab.js +302 -0
  6. package/cypress/e2e/ILC/AudioPlayer/audioPlayerPreviewTabPlaybackPlayer.js +245 -0
  7. package/cypress/e2e/ILC/AudioPlayer/audioPlayerPreviewTabSupportedFileTypes.js +78 -0
  8. package/cypress/e2e/ILC/AudioPlayer/audioPlayerPreviewTabTitleDescriptionAndTranscript.js +248 -0
  9. package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsAllOrNothingAlternatePointsGreaterThanCorrectPoints.js +1 -1
  10. package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardAllOrNothingAlternatePointsGreaterThanCorrectPoints.js +1 -1
  11. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownAdditionalSettingsBasic.js +222 -0
  12. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownAdditionalSettingsResponseAccordions.js +366 -0
  13. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownAdditionalSettingsStudentResponseAndLayout.js +206 -0
  14. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownAllOrNothingWithAlternateAnswer.js +624 -0
  15. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownPartialDifferentWeightsWithAlternateAnswer.js +865 -0
  16. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownPartialEqualWeightsWithAlternateAnswer.js +763 -0
  17. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownSupportedFileTypes.js +86 -0
  18. package/cypress/e2e/ILC/Highlight/HighlightScoring/allOrNothingAlternatePointsMoreThanCorrectPoints.js +213 -0
  19. package/cypress/e2e/ILC/Highlight/HighlightScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +215 -0
  20. package/cypress/e2e/ILC/Highlight/HighlightScoring/allOrNothingCorrectPointsMoreThanAlternatePoints.js +215 -0
  21. package/cypress/e2e/ILC/Highlight/HighlightScoring/allOrNothingScoring.js +187 -0
  22. package/cypress/e2e/ILC/Highlight/HighlightScoring/manualAndNonScored.js +162 -0
  23. package/cypress/e2e/ILC/Highlight/HighlightScoring/partialDifferentWeightsAlternatePointsMoreThanCorrectPoints.js +316 -0
  24. package/cypress/e2e/ILC/Highlight/HighlightScoring/partialDifferentWeightsCorrectEqualToAlternatePoints.js +385 -0
  25. package/cypress/e2e/ILC/Highlight/HighlightScoring/partialDifferentWeightsCorrectPointsMoreThanAlternatePoints.js +316 -0
  26. package/cypress/e2e/ILC/Highlight/HighlightScoring/partialDifferentWeightsScoring.js +245 -0
  27. package/cypress/e2e/ILC/Highlight/HighlightScoring/partialEqualWeightsAlternatePointsMoreThanCorrectPoints.js +250 -0
  28. package/cypress/e2e/ILC/Highlight/HighlightScoring/partialEqualWeightsCorrectPointEqualToAlternatePoints.js +266 -0
  29. package/cypress/e2e/ILC/Highlight/HighlightScoring/partialEqualWeightsCorrectPointsMoreThanAlternatePoints.js +250 -0
  30. package/cypress/e2e/ILC/Highlight/HighlightScoring/partialEqualWeightsScoring.js +226 -0
  31. package/cypress/e2e/ILC/Highlight/highlightAdditionalSettingsBasic.js +221 -0
  32. package/cypress/e2e/ILC/Highlight/highlightAdditionalSettingsMaximumNumberOfAnswers.js +137 -0
  33. package/cypress/e2e/ILC/Highlight/highlightBasicScoringForTextSelectionTypes.js +457 -0
  34. package/cypress/e2e/ILC/Highlight/highlightColorLibraryFlyout.js +143 -0
  35. package/cypress/e2e/ILC/Highlight/highlightEditTabScoringSection.js +361 -0
  36. package/cypress/e2e/ILC/Highlight/highlightHeaderSection.js +91 -0
  37. package/cypress/e2e/ILC/Highlight/highlightQuestionInstructionsAndQuestion.js +178 -0
  38. package/cypress/e2e/ILC/Highlight/highlightScoringSectionBasic.js +21 -0
  39. package/cypress/e2e/ILC/Highlight/highlightSetCorrectAnswerSection.js +204 -0
  40. package/cypress/e2e/ILC/Highlight/highlightTextSelectionDropdownAndHighlightOptionsSection.js +175 -0
  41. package/cypress/e2e/ILC/Highlight/highlightTextSelectionTypeInPreviewTab.js +237 -0
  42. package/cypress/e2e/ILC/Highlight/highlightTextSelectionTypeInSetCorrectAnswerSection.js +341 -0
  43. package/cypress/e2e/ILC/Highlight/highlightTextSelectionTypesInHighlightOptionsSection.js +375 -0
  44. package/cypress/e2e/ILC/ListMatching/Scoring/groupedOptionsAllOrNothingAlternatePointsGreaterThanCorrectPoints.js +28 -0
  45. package/cypress/e2e/ILC/ListMatching/Scoring/groupedOptionsAllOrNothingCorrectPointsEqualToAlternatePoints.js +30 -0
  46. package/cypress/e2e/ILC/ListMatching/{listMatchingGroupedOptionsAllOrNothingScoringWithAlternateAnswer.js → Scoring/groupedOptionsAllOrNothingCorrectPointsGreaterThanAlternatePoints.js} +5 -7
  47. package/cypress/e2e/ILC/ListMatching/{listMatchingGroupedOptionsAllOrNothingScoring.js → Scoring/groupedOptionsAllOrNothingScoring.js} +2 -2
  48. package/cypress/e2e/ILC/ListMatching/{listMatchingGroupedOptionsManualAndNonScoredScoring.js → Scoring/groupedOptionsManualAndNonScoredScoring.js} +2 -2
  49. package/cypress/e2e/ILC/ListMatching/{listMatchingGroupedOptionsPartialDifferentScorings.js → Scoring/groupedOptionsPartialDifferentWeightsScoring.js} +2 -2
  50. package/cypress/e2e/ILC/ListMatching/Scoring/groupedOptionsPartialDifferrentWeightsAlternatePointsGreaterThanCorrectPoints.js +30 -0
  51. package/cypress/e2e/ILC/ListMatching/{listMatchingGroupedOptionsPartialDifferentScoringWithAlternateTab.js → Scoring/groupedOptionsPartialDifferrentWeightsCorrectPointsEqualToAlternatePoints.js} +6 -6
  52. package/cypress/e2e/ILC/ListMatching/Scoring/groupedOptionsPartialDifferrentWeightsCorrectPointsGreaterThanAlternatePoints.js +30 -0
  53. package/cypress/e2e/ILC/ListMatching/Scoring/groupedOptionsPartialEqualWeightsAlternatePointsGreaterThanCorrectPoints.js +30 -0
  54. package/cypress/e2e/ILC/ListMatching/{listMatchingGroupedOptionsPartialEqualWeightsScoringWithAlternateTab.js → Scoring/groupedOptionsPartialEqualWeightsCorrectPointsEqualToAlternatePoints.js} +6 -6
  55. package/cypress/e2e/ILC/ListMatching/Scoring/groupedOptionsPartialEqualWeightsCorrectPointsGreaterThanAlternatePoints.js +30 -0
  56. package/cypress/e2e/ILC/ListMatching/{listMatchingGroupedOptionsPartialEqualWeightsScoring.js → Scoring/groupedOptionsPartialEqualWeightsScorings.js} +2 -2
  57. package/cypress/e2e/ILC/ListMatching/Scoring/standardOptionsAllOrNothingAlternatePointsGreaterThanCorrectPoints.js +28 -0
  58. package/cypress/e2e/ILC/ListMatching/Scoring/standardOptionsAllOrNothingCorrectPointsEqualToAlternatePoints.js +30 -0
  59. package/cypress/e2e/ILC/ListMatching/{listMatchingStandardOptionsAllOrNothingScoringWithAlternateAnswer.js → Scoring/standardOptionsAllOrNothingCorrectPointsGreaterThanAlternatePoints.js} +5 -7
  60. package/cypress/e2e/ILC/ListMatching/{listMatchingStandardOptionsAllOrNothingScoring.js → Scoring/standardOptionsAllOrNothingScoring.js} +2 -2
  61. package/cypress/e2e/ILC/ListMatching/{listMatchingStandardOptionsManualAndNonScoredScoring.js → Scoring/standardOptionsManualAndNonScoredScoring.js} +2 -2
  62. package/cypress/e2e/ILC/ListMatching/Scoring/standardOptionsPartialDifferentWeightsAlternatePointsGreaterThanCorrectPoints.js +30 -0
  63. package/cypress/e2e/ILC/ListMatching/{listMatchingStandardOptionsPartialDifferentScoringWithAlternateAnswer.js → Scoring/standardOptionsPartialDifferentWeightsCorrectPointsEqualToAlternatePoints.js} +6 -6
  64. package/cypress/e2e/ILC/ListMatching/Scoring/standardOptionsPartialDifferentWeightsCorrectPointsGreaterThanAlternatePoints.js +30 -0
  65. package/cypress/e2e/ILC/ListMatching/{listMatchingStandardOptionsPartialDIfferentScoring.js → Scoring/standardOptionsPartialDifferentWeightsScoring.js} +2 -2
  66. package/cypress/e2e/ILC/ListMatching/Scoring/standardOptionsPartialEqualWeightsAlternatePointsMoreThanCorrectPoints.js +29 -0
  67. package/cypress/e2e/ILC/ListMatching/{listMatchingStandardOptionsPartialEqualScoringWithAlternateAnswer.js → Scoring/standardOptionsPartialEqualWeightsCorrectPointsEqualToAlternatePoints.js} +6 -6
  68. package/cypress/e2e/ILC/ListMatching/Scoring/standardOptionsPartialEqualWeightsCorrectPointsMoreThanAlternatePoints.js +29 -0
  69. package/cypress/e2e/ILC/ListMatching/{listMatchingStandardOptionsPartialEqualScoring.js → Scoring/standardOptionsPartialEqualWeightsScoring.js} +2 -2
  70. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridAdditionalSettingsBasic.js +11 -5
  71. package/cypress/e2e/ILC/MultipleSelectionGrid/{multipleSelectionGridQuestionStemAdditionalSettings.js → multipleSelectionGridAdditionalSettingsQuestionStem.js} +0 -11
  72. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridAllOrNothingAlternatePointsGreaterThanCorrectPoints.js +263 -0
  73. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridAllOrNothingCorrectPointsEqualToAlternatePoints.js +263 -0
  74. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridAllOrNothingCorrectPointsGreaterThanAlternatePoints.js +261 -0
  75. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridPartialDifferentWeightsAlternatePointsGreaterThanCorrectPoints.js +340 -0
  76. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridPartialDifferentWeightsCorrectPointsEqualToAlternatePoints.js +310 -0
  77. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridPartialDifferentWeightsCorrectPointsGreaterThanAlternatePoints.js +341 -0
  78. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridPartialEqualWeightsAlternatePointsGreaterThanCorrectPoints.js +313 -0
  79. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridPartialEqualWeightsCorrectPointsEqualToAlternatePoints.js +285 -0
  80. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridPartialEqualWeightsCorrectPointsGreaterThanAlternatePoints.js +316 -0
  81. package/cypress/e2e/ILC/ReadingRuler/readingRulerEditTabBasicsSection.js +185 -0
  82. package/cypress/e2e/ILC/ReadingRuler/readingRulerHeaderSection.js +55 -0
  83. package/cypress/e2e/ILC/ReadingRuler/readingRulerPreviewTab.js +257 -0
  84. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridAllOrNothingAlternatePointsGreaterThanCorrectPoints.js +173 -0
  85. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridAllOrNothingCorrectPointsEqualToAlternatePoints.js +179 -0
  86. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridAllOrNothingCorrectPointsGreaterThanAlternatePoints.js +174 -0
  87. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridPartialDifferentWeightsAlternatePointsGreaterThanCorrectPoints.js +247 -0
  88. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridPartialDifferentWeightsCorrectPointsEqualToAlternatePoints.js +219 -0
  89. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridPartialDifferentWeightsCorrectPointsGreaterThanAlternatePoints.js +246 -0
  90. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridPartialEqualWeightsAlternatePointsGreaterThanCorrectPoints.js +225 -0
  91. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridPartialEqualWeightsCorrectPointsEqualToAlternatePoints.js +197 -0
  92. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridPartialEqualWeightsCorrectPointsGreaterThanAlternatePoints.js +226 -0
  93. package/cypress/e2e/ILC/VideoResponse/videoResponseAdditionalSettings.js +135 -0
  94. package/cypress/e2e/ILC/VideoResponse/videoResponseAdditionalSettingsBasic.js +88 -0
  95. package/cypress/e2e/ILC/VideoResponse/videoResponseEditTabBasic.js +78 -0
  96. package/cypress/e2e/ILC/VideoResponse/videoResponseHeaderSection.js +74 -0
  97. package/cypress/e2e/ILC/VideoResponse/videoResponsePreviewTab.js +627 -0
  98. package/cypress/e2e/ILC/VideoResponse/videoResponseScoringSection.js +76 -0
  99. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownAddResponseContainer.js +230 -0
  100. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownAdditionalSettings.js +247 -0
  101. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownAllOrNothingScoring.js +352 -0
  102. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownConditionalCheckboxes.js +258 -0
  103. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownEditAriaLabelCheckbox.js +134 -0
  104. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownEditTabBasicSection.js +132 -0
  105. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownEditTabScoringSection.js +237 -0
  106. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownHeaderSection.js +113 -0
  107. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownImageProperties.js +156 -0
  108. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownManualAndNonScoredScoring.js +165 -0
  109. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownOptionsForResponse.js +303 -0
  110. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownPartialDifferentWeightsScoring.js +372 -0
  111. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownPartialEqualWeightsScoring.js +371 -0
  112. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownPreviewTab.js +77 -0
  113. package/cypress/e2e/ILC/fillInTheGapsOverImageDropdown/fillInTheGapsOverImageDropdownSetCorrectAnswerSection.js +117 -0
  114. package/cypress/pages/dragAndDropIntoCategoriesAllOrNothingScoring.js +1 -1
  115. package/cypress/pages/listMatchingScoring.js +16 -105
  116. package/package.json +1 -1
  117. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridAllOrNothingWithAlternateAnswer.js +0 -731
  118. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridPartialDifferentWeightsWithAlternateAnswer.js +0 -942
  119. package/cypress/e2e/ILC/MultipleSelectionGrid/multipleSelectionGridPartialEqualWeightsWithAlternateAnswer.js +0 -864
  120. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridAllOrNothingWithAlternateAnswer.js +0 -472
  121. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridPartialDifferentWeightsWithAlternateAnswer.js +0 -662
  122. package/cypress/e2e/ILC/SingleSelectionGrid/singleSelectionGridPartialEqualWeightsWIthAlternateAnswer.js +0 -595
  123. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsAllOrNothing.js +0 -0
  124. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsAllOrNothingCorrectPointsEqualToAlternatePoints.js +0 -0
  125. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsAllOrNothingCorrectPointsGreaterThanAlternatePoints.js +0 -0
  126. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsPartialScoreForEachCell.js +0 -0
  127. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsPartialScoreForEachCellAlternatePointsGreaterThanCorrectPoints.js +0 -0
  128. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsPartialScoreForEachCellCorrectPointsEqualToAlternatePoints.js +0 -0
  129. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsPartialScoreForEachCellCorrectPointsGreaterThanAlternatePoints.js +0 -0
  130. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsPartialScoreForEachResponse.js +0 -0
  131. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsPartialScoreForEachResponseAlternatePointsGreaterThanCorrectPoints.js +0 -0
  132. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsPartialScoreForEachResponseCorrectPointsEqualToAlternatePoints.js +0 -0
  133. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsPartialScoreForEachResponseCorrectPointsGreaterThanAlternatePoints.js +0 -0
  134. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsTotalScoreDividedBetweenCell.js +0 -0
  135. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsTotalScoreDividedBetweenCellsAlternatePointsGreaterThanCorrectPoints.js +0 -0
  136. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsTotalScoreDividedBetweenCellsCorrectPointsEqualToAlternatePoints.js +0 -0
  137. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsTotalScoreDividedBetweenCellsCorrectPointsGreaterThanAlternatePoints.js +0 -0
  138. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsTotalScoreDividedBetweenResponses.js +0 -0
  139. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsTotalScoreDividedBetweenResponsesAlternatePointsGreaterThanCorrectPoints.js +0 -0
  140. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsTotalScoreDividedBetweenResponsesCorrectPointsEqualToAlternatePoints.js +0 -0
  141. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/groupedOptionsTotalScoreDividedBetweenResponsesCorrectPointsGreaterThanAlternatePoints.js +0 -0
  142. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardAllOrNothing.js +0 -0
  143. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardAllOrNothingCorrectPointsEqualToAlternatePoints.js +0 -0
  144. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardAllOrNothingCorrectPointsGreaterThanAlternatePoints.js +0 -0
  145. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardPartialScoreForEachCell.js +0 -0
  146. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardPartialScoreForEachCellAlternatePointsGreaterThanCorrectPoints.js +0 -0
  147. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardPartialScoreForEachCellCorrectPointsEqualToAlternatePoints.js +0 -0
  148. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardPartialScoreForEachCellCorrectPointsGreaterThanAlternatePoints.js +0 -0
  149. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardPartialScoreForEachResponse.js +0 -0
  150. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardPartialScoreForEachResponseAlternatePointsGreaterThanCorrectPoints.js +0 -0
  151. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardPartialScoreForEachResponseCorrectPointsEqualToAlternatePoints.js +0 -0
  152. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardPartialScoreForEachResponseCorrectPointsGreaterThanAlternatePoints.js +0 -0
  153. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardTotalScoreDividedBetweenCell.js +0 -0
  154. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardTotalScoreDividedBetweenCellAlternatePointsGreaterThanCorrectPoints.js +0 -0
  155. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardTotalScoreDividedBetweenCellCorrectPointsEqualToAlternatePoints.js +0 -0
  156. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardTotalScoreDividedBetweenCellCorrectPointsGreaterThanAlternatePoints.js +0 -0
  157. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardTotalScoreDividedBetweenResponse.js +0 -0
  158. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardTotalScoreDividedBetweenResponseAlternatePointsGreaterThanCorrectPoints.js +0 -0
  159. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardTotalScoreDividedBetweenResponseCorrectPointsEqualToAlternatePoints.js +0 -0
  160. /package/cypress/e2e/ILC/DragAndDropIntoCategories/{dragAndDropIntoCategoriesScoringFiles → dragAndDropIntoCategoriesScoring}/standardTotalScoreDividedBetweenResponseCorrectPointsGreaterThanAlternatePoints.js +0 -0
  161. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +0 -0
  162. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/allOrNothingCorrectPointsEqualToAlternatePoints.js +0 -0
  163. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +0 -0
  164. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/allOrNothingScoring.js +0 -0
  165. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/manuallyAndNonScoredScoring.js +0 -0
  166. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/partialDifferentWeightsAlternatePointsGreaterThanCorrectPoints.js +0 -0
  167. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/partialDifferentWeightsCorrectPointsEqualToAlternatePoints.js +0 -0
  168. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/partialDifferentWeightsCorrectPointsGreaterThanAlternatePoints.js +0 -0
  169. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/partialDifferentWeightsScoring.js +0 -0
  170. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/partialEqualWeightsAlternatePointsGreaterThanCorrectPoints.js +0 -0
  171. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/partialEqualWeightsCorrectPointsEqualToAlternatePoints.js +0 -0
  172. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/partialEqualWeightsCorrectPointsGreaterThanAlternatePoints.js +0 -0
  173. /package/cypress/e2e/ILC/ListOrdering/{ListOrderingScoringFiles → Scoring}/partialEqualWeightsScoring.js +0 -0
  174. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +0 -0
  175. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/allOrNothingCorrectPointsEqualToAlternatePoints.js +0 -0
  176. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +0 -0
  177. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/allOrNothingScoring.js +0 -0
  178. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/manuallyAndNonScoredScoring.js +0 -0
  179. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/partialDifferentWeightsAlternatePointsGreaterThanCorrectPoints.js +0 -0
  180. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/partialDifferentWeightsCorrectPointsEqualToAlternatePoints.js +0 -0
  181. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/partialDifferentWeightsCorrectPointsGreaterThanAlternatePoints.js +0 -0
  182. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/partialDifferentWeightsScoring.js +0 -0
  183. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/partialEqualWeightsAlternatePointsGreaterThanCorrectPoints.js +0 -0
  184. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/partialEqualWeightsCorrectPointsEqualToAlternatePoints.js +0 -0
  185. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/partialEqualWeightsCorrectPointsGreaterThanAlternatePoints.js +0 -0
  186. /package/cypress/e2e/ILC/ListSorting/{ListSortingScoringFiles → Scoring}/partialEqualWeightsScoring.js +0 -0
@@ -0,0 +1,257 @@
1
+ import { readingRulerPage } from "../../../pages";
2
+ import { createQuestionBasePage } from "../../../pages/components";
3
+ import abortEarlySetup from "../../../support/helpers/abortEarly";
4
+ import utilities from "../../../support/helpers/utilities";
5
+ const css = Cypress.env('css');
6
+
7
+ describe('Create Item page - Reading ruler: Preview Tab', () => {
8
+ before(() => {
9
+ cy.loginAs('admin');
10
+ });
11
+
12
+ describe('\'Conditional checkboxes\'- Preview Tab', () => {
13
+ abortEarlySetup();
14
+ before(() => {
15
+ cy.log('Navigating to \'Reading ruler\' resource tool');
16
+ readingRulerPage.steps.navigateToCreateResource('reading ruler');
17
+ });
18
+
19
+ it('When user checks the \'Display button to student\' checkbox then reading ruler button should be displayed in Preview tab', () => {
20
+ readingRulerPage.steps.verifyDisplayButtonToStudentCheckboxIsChecked();
21
+ cy.log('Switching to Preview Tab')
22
+ createQuestionBasePage.steps.switchToPreviewTab();
23
+ utilities.verifyElementVisibilityState(readingRulerPage.readingRulerButton(), 'visible')
24
+ });
25
+
26
+ it('When user unchecks the \'Display button to student\' checkbox then reading ruler button should not be displayed in Preview tab', () => {
27
+ cy.log('Switching to Edit Tab')
28
+ createQuestionBasePage.steps.switchToEditTab();
29
+ readingRulerPage.steps.uncheckDisplayButtonToStudentCheckbox();
30
+ cy.log('Switching to Preview Tab')
31
+ createQuestionBasePage.steps.switchToPreviewTab();
32
+ utilities.verifyElementVisibilityState(readingRulerPage.readingRulerButton(), 'notExist')
33
+ });
34
+
35
+ it('Accessbility of preview tab when reading ruler button is not displayed', { tags: 'a11y' }, () => {
36
+ cy.checkAccessibility(readingRulerPage.previewWrapper());
37
+ });
38
+
39
+ it('When user checks the \'Allow student to resize\' checkbox then the resize buttons on the reading ruler should be displayed in enabled state in Preview tab', () => {
40
+ cy.log('Switching to Edit Tab')
41
+ createQuestionBasePage.steps.switchToEditTab();
42
+ readingRulerPage.steps.checkDisplayButtonToStudentCheckbox();
43
+ readingRulerPage.steps.verifyAllowStudentToResizeCheckboxIsChecked();
44
+ cy.log('Switching to Preview Tab')
45
+ createQuestionBasePage.steps.switchToPreviewTab();
46
+ readingRulerPage.steps.clickOnReadingRulerButton();
47
+ readingRulerPage.steps.verifyResizeButtonsEnabled();
48
+ });
49
+
50
+ // Failing due to https://redmine.zeuslearning.com/issues/528044
51
+ it('Accessbility of reading ruler and reading ruler button', { tags: 'a11y' }, () => {
52
+ cy.checkAccessibility(readingRulerPage.readingRulerButton());
53
+ cy.checkAccessibility(readingRulerPage.readingRuler());
54
+ });
55
+
56
+ it('When user unchecks the \'Allow student to resize\' checkbox then the resize buttons on the reading ruler should be displayed in disabled state in Preview tab', () => {
57
+ cy.log('Switching to Edit Tab')
58
+ createQuestionBasePage.steps.switchToEditTab();
59
+ readingRulerPage.steps.uncheckAllowStudentToResizeCheckbox();
60
+ cy.log('Switching to Preview Tab')
61
+ createQuestionBasePage.steps.switchToPreviewTab();
62
+ readingRulerPage.steps.clickOnReadingRulerButton();
63
+ readingRulerPage.steps.verifyResizeButtonDisabled();
64
+ });
65
+
66
+ // Failing due to https://redmine.zeuslearning.com/issues/528044
67
+ it('Accessbility of reading ruler when \'Allow student to resize\' checkbox is unchecked', { tags: 'a11y' }, () => {
68
+ cy.checkAccessibility(readingRulerPage.readingRuler());
69
+ });
70
+
71
+ it('When user checks the \'Visible on landing\' checkbox then switches to Preview tab, reading ruler button should be in selected state and reading ruler should be displayed in the preview tab', () => {
72
+ cy.log('Switching to Edit Tab')
73
+ createQuestionBasePage.steps.switchToEditTab();
74
+ readingRulerPage.steps.checkVisibleOnLandingCheckbox();
75
+ cy.log('Switching to Preview Tab')
76
+ createQuestionBasePage.steps.switchToPreviewTab();
77
+ readingRulerPage.steps.verifySelectedStateOfReadingRulerButton();
78
+ utilities.verifyElementVisibilityState(readingRulerPage.readingRuler(), 'visible');
79
+ });
80
+
81
+ it('When user clicks on the \'Close\' button on the reading ruler then the reading ruler should close and reading ruler button should be in unselected state in the Preview tab', () => {
82
+ readingRulerPage.steps.clickOnCloseButtonInReadingRuler();
83
+ utilities.verifyElementVisibilityState(readingRulerPage.readingRuler(), 'notExist');
84
+ readingRulerPage.steps.verifyUnselectedStateOfReadingRulerButton();
85
+ });
86
+
87
+ it('When user unchecks the \'Visible on landing\' checkbox then the reading ruler should not be visible and reading ruler button should be in unselected state in the Preview tab', () => {
88
+ cy.log('Switching to Edit Tab')
89
+ createQuestionBasePage.steps.switchToEditTab();
90
+ readingRulerPage.steps.uncheckVisibleOnLandingCheckbox();
91
+ cy.log('Switching to Preview Tab')
92
+ createQuestionBasePage.steps.switchToPreviewTab();
93
+ readingRulerPage.steps.verifyUnselectedStateOfReadingRulerButton();
94
+ utilities.verifyElementVisibilityState(readingRulerPage.readingRuler(), 'notExist');
95
+ });
96
+ });
97
+
98
+ describe('Preview Tab contents', () => {
99
+ abortEarlySetup();
100
+ before(() => {
101
+ cy.log('Navigating to \'Reading ruler\' resource tool');
102
+ readingRulerPage.steps.navigateToCreateResource('reading ruler');
103
+ });
104
+
105
+ it('When \'Display button to student\' and \'Allow student to resize\' checkbox are checked and when user switches to preview tab, reading ruler button should be displayed in unselected state', () => {
106
+ readingRulerPage.steps.verifyDisplayButtonToStudentCheckboxIsChecked();
107
+ readingRulerPage.steps.verifyAllowStudentToResizeCheckboxIsChecked();
108
+ cy.log('Switching to Preview Tab')
109
+ createQuestionBasePage.steps.switchToPreviewTab();
110
+ utilities.verifyElementVisibilityState(readingRulerPage.readingRulerButton(), 'visible');
111
+ readingRulerPage.steps.verifyUnselectedStateOfReadingRulerButton();
112
+ });
113
+
114
+ it('CSS of active and default state of \'ReadingRuler\' button in Preview tab', { tags: 'css' }, () => {
115
+ readingRulerPage.steps.hoverOnReadingRulerButton();
116
+ utilities.verifyCSS(readingRulerPage.readingRulerButton(), {
117
+ 'border': `1px solid ${css.color.activeButtons}`,
118
+ 'background-color': css.color.figActiveComponentBg
119
+ });
120
+ readingRulerPage.steps.hoverAwayFromReadingRulerButton();
121
+ utilities.verifyCSS(readingRulerPage.readingRulerButton(), {
122
+ 'border': `1px solid ${css.color.secondaryBtnBorder}`,
123
+ 'background-color': css.color.defaultBackground
124
+ });
125
+ });
126
+
127
+ it('When user clicks on the reading ruler button, reading ruler should be displayed in Preview Tab and reading ruler button should be in selected state', () => {
128
+ readingRulerPage.steps.clickOnReadingRulerButton();
129
+ utilities.verifyElementVisibilityState(readingRulerPage.readingRuler(), 'visible');
130
+ readingRulerPage.steps.verifySelectedStateOfReadingRulerButton();
131
+ });
132
+
133
+ it('Drag handle button, resize buttons, and close button should be visible and displayed in enabled state in Preview tab ', () => {
134
+ const buttons = [readingRulerPage.dragButton, readingRulerPage.topResizeButton, readingRulerPage.bottomResizeButton, readingRulerPage.closeButton, readingRulerPage.resizeButton]
135
+ buttons.forEach(button => {
136
+ utilities.verifyElementVisibilityState(button(), 'visible');
137
+ });
138
+ readingRulerPage.steps.verifyResizeButtonsEnabled();
139
+ readingRulerPage.steps.verifyCloseButtonEnabled();
140
+ readingRulerPage.steps.verifyDragButtonEnabled();
141
+ });
142
+
143
+ it('CSS of Drag handle button, resize buttons, and close button in default state', { tags: 'css' }, () => {
144
+ const buttons = [readingRulerPage.dragButton, readingRulerPage.topResizeButton, readingRulerPage.bottomResizeButton, readingRulerPage.closeButton, readingRulerPage.resizeButton]
145
+ buttons.forEach(button => {
146
+ utilities.verifyCSS(button(), {
147
+ 'color': css.color.primaryBtn,
148
+ 'font-weight': css.fontWeight.medium
149
+ });
150
+ });
151
+ });
152
+
153
+ // Failing due to https://redmine.zeuslearning.com/issues/542325
154
+ it('CSS of Drag handle button, resize buttons, and close button in hover state', { tags: 'css' }, () => {
155
+ const buttons = [readingRulerPage.dragButton, readingRulerPage.topResizeButton, readingRulerPage.bottomResizeButton, readingRulerPage.closeButton, readingRulerPage.resizeButton]
156
+ buttons.forEach(button => {
157
+ button()
158
+ .realHover()
159
+ utilities.verifyCSS(button(), {
160
+ 'background-color': css.color.activeButtons
161
+ });
162
+ });
163
+ });
164
+
165
+ it('When user deselects the reading ruler button then the button should be displayed in unselected state and the reading ruler should not display in Preview tab', () => {
166
+ readingRulerPage.steps.clickOnReadingRulerButton();
167
+ readingRulerPage.steps.verifyUnselectedStateOfReadingRulerButton();
168
+ utilities.verifyElementVisibilityState(readingRulerPage.readingRuler(), 'notExist');
169
+ });
170
+ });
171
+
172
+ describe('Opacity section - Preview tab', () => {
173
+ abortEarlySetup();
174
+ before(() => {
175
+ cy.log('Navigating to \'Reading ruler\' resource tool');
176
+ readingRulerPage.steps.navigateToCreateResource('reading ruler');
177
+ cy.log('Checking visible on landing checkbox')
178
+ readingRulerPage.steps.checkVisibleOnLandingCheckbox();
179
+ cy.log('Switching to Preview Tab')
180
+ createQuestionBasePage.steps.switchToPreviewTab();
181
+ });
182
+
183
+ //Failing due to https://redmine.zeuslearning.com/issues/541338
184
+ it('When the opacity value is set to 88 percent by default then the opacity of the ruler should be set to 88 percent in the preview tab', () => {
185
+ readingRulerPage.steps.verifyReadingRulerOpacityInPreviewTab(0.88);
186
+ });
187
+
188
+ it('When the user changes the opacity value from the opacity slider in the edit tab then the opacity of ruler should also change accordingly in the preview tab', () => {
189
+ cy.log('Switching to Edit Tab')
190
+ createQuestionBasePage.steps.switchToEditTab();
191
+ readingRulerPage.steps.clickOnOpacitySlider();
192
+ cy.log('Switching to Preview Tab')
193
+ createQuestionBasePage.steps.switchToPreviewTab();
194
+ readingRulerPage.steps.verifyReadingRulerOpacityInPreviewTab(0.5);
195
+ });
196
+
197
+ it('When the user changes the opacity value from the opacity input field in the edit tab then the opacity of ruler should also change accordingly in the preview tab', () => {
198
+ cy.log('Switching to Edit Tab')
199
+ createQuestionBasePage.steps.switchToEditTab();
200
+ readingRulerPage.steps.addInputToOpacityInputField('30');
201
+ cy.log('Switching to Preview Tab')
202
+ createQuestionBasePage.steps.switchToPreviewTab();
203
+ readingRulerPage.steps.verifyReadingRulerOpacityInPreviewTab(0.3);
204
+ });
205
+ });
206
+
207
+ describe('Color section- Preview tab', () => {
208
+ abortEarlySetup();
209
+ before(() => {
210
+ cy.log('Navigating to \'Reading ruler\' resource tool');
211
+ readingRulerPage.steps.navigateToCreateResource('reading ruler');
212
+ cy.log('Checking visible on landing checkbox')
213
+ readingRulerPage.steps.checkVisibleOnLandingCheckbox();
214
+ });
215
+
216
+ it('When the user has selected black in the color section then the color of the ruler should be set to black in the preview tab', () => {
217
+ readingRulerPage.steps.verifyColorBlockSelectedState(0);
218
+ cy.log('Switching to Preview Tab')
219
+ createQuestionBasePage.steps.switchToPreviewTab();
220
+ readingRulerPage.steps.verifyReadingRulerColorInPreviewTab('#1A1A1A');
221
+ });
222
+
223
+ it('When the user changes the color of the ruler in the edit tab then the color of the ruler should also change accordingly in the preview tab', () => {
224
+ cy.log('Switching to Edit Tab')
225
+ createQuestionBasePage.steps.switchToEditTab();
226
+ readingRulerPage.steps.selectColorBlock(1);
227
+ cy.log('Switching to Preview Tab')
228
+ createQuestionBasePage.steps.switchToPreviewTab();
229
+ readingRulerPage.steps.verifyReadingRulerColorInPreviewTab('#008699');
230
+ });
231
+ });
232
+
233
+ describe('Default number of lines section - Preview tab', () => {
234
+ abortEarlySetup();
235
+ before(() => {
236
+ cy.log('Navigating to \'Reading ruler\' resource tool');
237
+ readingRulerPage.steps.navigateToCreateResource('reading ruler');
238
+ cy.log('Checking visible on landing checkbox')
239
+ readingRulerPage.steps.checkVisibleOnLandingCheckbox();
240
+ cy.log('Switching to Preview Tab')
241
+ createQuestionBasePage.steps.switchToPreviewTab();
242
+ });
243
+
244
+ it('When the default number of lines value is set to 4 by default then the height and size of the ruler should be set to 168px and 68px respectively in the preview tab', () => {
245
+ readingRulerPage.steps.verifyHeightAndSizeOfReadingRuler(168, 68);
246
+ });
247
+
248
+ it('When user changes the value of default number of lines value in the edit tab then the height and size of ruler should also change accordingly in the preview tab', () => {
249
+ cy.log('Switching to Edit Tab')
250
+ createQuestionBasePage.steps.switchToEditTab();
251
+ readingRulerPage.steps.addInputToDefaultNumberOfLinesInputField('5');
252
+ cy.log('Switching to Preview Tab')
253
+ createQuestionBasePage.steps.switchToPreviewTab();
254
+ readingRulerPage.steps.verifyHeightAndSizeOfReadingRuler(180, 80);
255
+ });
256
+ });
257
+ });
@@ -0,0 +1,173 @@
1
+ import { singleSelectionGridPage } from "../../../pages/singleSelectionGridPage";
2
+ import abortEarlySetup from "../../../support/helpers/abortEarly";
3
+ const css = Cypress.env('css');
4
+
5
+ const questionStems = ['Pollution caused by treating chemical waste', 'Pollution caused by cement production', 'Pollution caused by methane production', 'Pollution caused by cement and methane production'];
6
+ const options = ['Fully agree as true', 'Fully agree as false', 'Somewhat agree'];
7
+
8
+ describe('Create Item page - Single Selection Grid: Preview tab Scoring Section', () => {
9
+ before(() => {
10
+ cy.loginAs('admin');
11
+ });
12
+
13
+ describe('Question Preview: AutoScored - All or Nothing with alternate answer', () => {
14
+ abortEarlySetup();
15
+ before(() => {
16
+ cy.log('Navigating to Single selection grid question type');
17
+ singleSelectionGridPage.steps.navigateToCreateQuestion('single selection grid');
18
+ cy.log('Adding question instructions, question stems, options, setting correct answer and adding points for Autoscored scoring type and switching to Preview tab');
19
+ singleSelectionGridPage.steps.addQuestionInstructions();
20
+ singleSelectionGridPage.steps.addOption();
21
+ singleSelectionGridPage.steps.addInputToAllQuestionStemFields(questionStems);
22
+ singleSelectionGridPage.steps.addInputToAllOptionsFields(options);
23
+ singleSelectionGridPage.steps.allotPoints(20);
24
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInSetCorrectAnswerTable([0, 1, 0, 1]);
25
+ singleSelectionGridPage.steps.clickOnAddAlternateAnswerButton();
26
+ singleSelectionGridPage.steps.allotPoints(25);
27
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInSetCorrectAnswerTable([0, 2, 2, 1]);
28
+ singleSelectionGridPage.steps.expandAdditonalSettings();
29
+ singleSelectionGridPage.steps.checkAllowStudentsToCheckAnswerCheckbox();
30
+ singleSelectionGridPage.steps.switchToPreviewTab();
31
+ });
32
+
33
+ it('Alternate answer case: When Alternate Answer points are more than Correct Answer points', () => {
34
+ cy.log('Total points displayed besides Show correct answer checkbox should be of \'Alternate answer\' points')
35
+ singleSelectionGridPage.previewScoreText()
36
+ .verifyInnerText('0/25');
37
+
38
+ cy.log('When the user selects Show correct answer checkbox without attempting the question, green checkmark icon should be displayed besides only alternate correct answer options')
39
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox();
40
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 2, 2, 1]);
41
+ singleSelectionGridPage.incorrectIcon()
42
+ .should('not.exist');
43
+ singleSelectionGridPage.correctIncorectAnswerLabel()
44
+ .should('not.exist');
45
+ singleSelectionGridPage.steps.verifyCorrectIncorrectBorderNotVisible()
46
+
47
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
48
+
49
+ cy.log('When the user selects the correct answer options then correct answer points should be alloted and on selecting show correct answer checkbox green check-mark icons should be displayed beside correct answer options and \'Correct answer\' should be displayed below the table')
50
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([0, 1, 0, 1]);
51
+ singleSelectionGridPage.previewScoreText()
52
+ .verifyInnerText('20/25');
53
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox();
54
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 1, 0, 1]);
55
+ singleSelectionGridPage.incorrectIcon()
56
+ .should('not.exist');
57
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Correct')
58
+ singleSelectionGridPage.steps.verifyCorrectAttemptBorder()
59
+
60
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
61
+
62
+ cy.log('When the user clicks on \'Check answer\' button, green checkmark should be displayed only beside selected correct answer options and \'Correct answer\' label should be displayed below the table')
63
+ singleSelectionGridPage.steps.checkAnswer()
64
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 1, 0, 1]);
65
+ singleSelectionGridPage.incorrectIcon()
66
+ .should('not.exist');
67
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Correct')
68
+ singleSelectionGridPage.steps.verifyCorrectAttemptBorder()
69
+
70
+ cy.log('When the user selects alternate correct answer options, score specified for alternate correct answer (full score) should be provided and on selecting Show correct answer checkbox green check-mark icons should be displayed besides only alternate correct answer options and label \'Correct answer\' should be displayed below the question field')
71
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([0, 2, 2, 1]);
72
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox();
73
+ singleSelectionGridPage.previewScoreText()
74
+ .verifyInnerText('25/25');
75
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 2, 2, 1]);
76
+ singleSelectionGridPage.incorrectIcon()
77
+ .should('not.exist');
78
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Correct')
79
+ singleSelectionGridPage.steps.verifyCorrectAttemptBorder()
80
+
81
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
82
+
83
+ cy.log('When the user clicks on \'Check answer\' button, then green check-mark icons should be displayed besides only selected alternate correct answer options')
84
+ singleSelectionGridPage.steps.checkAnswer()
85
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 2, 2, 1]);
86
+ singleSelectionGridPage.incorrectIcon()
87
+ .should('not.exist');
88
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Correct')
89
+ singleSelectionGridPage.steps.verifyCorrectAttemptBorder()
90
+
91
+ cy.log('When user selects partially correct answer options such that user has selected correct options only from the correct tab and user selects show correct answer checkbox then green check-mark icons should be displayed beside the options set in the alternate tab and red cross-mark icons should be displayed beside the incorrectly answered options and \'Incorrect Answer\' label should be displayed below the table')
92
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([1, 1, 0, 2]);
93
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox()
94
+ singleSelectionGridPage.previewScoreText()
95
+ .verifyInnerText('0/25');
96
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 2, 2, 1]);
97
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIconForAllQuestionStems([1, 1, 0, 2]);
98
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect')
99
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
100
+
101
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
102
+
103
+ cy.log('When the user clicks on \'Check answer\' button, red check-mark icons should be displayed besides the selected incorrect answer options andd green check-mark icons should be displayed beside selected correct answer options \'Incorrect Answer\' label should be displayed below the table')
104
+ singleSelectionGridPage.steps.checkAnswer()
105
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIconForAllQuestionStems([1, 1, 0, 2]);
106
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect')
107
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
108
+
109
+ cy.log('When user selects partially correct answer options such that user has selected correct options only from the alternate tab and user selects show correct answer checkbox then green check-mark icons should be displayed beside the options set in the alternate tab and red cross-mark icons should be displayed beside the incorrectly answered options and \'Incorrect Answer\' label should be displayed below the table')
110
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([2, 2, 2, 0]);
111
+ singleSelectionGridPage.previewScoreText()
112
+ .verifyInnerText('0/25');
113
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox()
114
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 2, 2, 1]);
115
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(0, 2);
116
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(3, 0);
117
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect')
118
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
119
+
120
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
121
+
122
+ cy.log('When the user clicks on \'Check answer\' button, red check-mark icons should be displayed besides the selected incorrect answer options andd green check-mark icons should be displayed beside selected correct answer options \'Incorrect Answer\' label should be displayed below the table')
123
+ singleSelectionGridPage.steps.checkAnswer()
124
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(0, 2);
125
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(1, 2);
126
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(2, 2);
127
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(3, 0);
128
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect')
129
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
130
+
131
+ cy.log('When user selects equal number of options from the correct tab and alternate tab then 0 points should be awarded and on selecting show correct answer checkbox green check-mark icon should be displayed beside options from the alternate tab and red cross-mark icon should be displayed beside the options from the correct tab and label \'Incorrect Answer\' should be displayed below the table')
132
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([0, 2, 0, 1]);
133
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox()
134
+ singleSelectionGridPage.previewScoreText()
135
+ .verifyInnerText('0/25');
136
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 2, 2, 1]);
137
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(2, 0);
138
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect');
139
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder();
140
+
141
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
142
+
143
+ cy.log('When the user clicks on \'Check answer\' button, red check-marks should be displayed besides the selected incorrect answer options and green check-mark icons should be displayed beside the selected correct answer and label \'Incorrect Answer\' should be displayed below the table')
144
+ singleSelectionGridPage.steps.checkAnswer();
145
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(0, 0);
146
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(1, 2);
147
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(2, 0);
148
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(3, 1);
149
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect');
150
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
151
+
152
+ cy.log('When the user selects incorrect answer options and selects the Show correct answer checkbox, red cross-mark icons should displayed besides the selected incorrect answer options and green check-mark icons beside alternate tab answers and \'Incorrect Answer\' label should be displayed below the table')
153
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([2, 0, 1, 2]);
154
+ singleSelectionGridPage.previewScoreText()
155
+ .verifyInnerText('0/25');
156
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox()
157
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 2, 2, 1]);
158
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIconForAllQuestionStems([2, 0, 1, 2]);
159
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect')
160
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
161
+
162
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
163
+
164
+ cy.log('When the user clicks on \'Check answer\' button, red check-mark icons should be displayed besides the selected incorrect answer options and \'Incorrect Answer\' label should be displayed below the table')
165
+ singleSelectionGridPage.steps.checkAnswer()
166
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIconForAllQuestionStems([2, 0, 1, 2]);
167
+ singleSelectionGridPage.correctIcon()
168
+ .should('not.exist');
169
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect')
170
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
171
+ });
172
+ });
173
+ });
@@ -0,0 +1,179 @@
1
+ import { singleSelectionGridPage } from "../../../pages/singleSelectionGridPage";
2
+ import abortEarlySetup from "../../../support/helpers/abortEarly";
3
+ const css = Cypress.env('css');
4
+
5
+ const questionStems = ['Pollution caused by treating chemical waste', 'Pollution caused by cement production', 'Pollution caused by methane production', 'Pollution caused by cement and methane production'];
6
+ const options = ['Fully agree as true', 'Fully agree as false', 'Somewhat agree'];
7
+
8
+ describe('Create Item page - Single Selection Grid: Preview tab Scoring Section', () => {
9
+ before(() => {
10
+ cy.loginAs('admin');
11
+ });
12
+
13
+ describe('Question Preview: AutoScored - All or Nothing with alternate answer', () => {
14
+ abortEarlySetup();
15
+ before(() => {
16
+ cy.log('Navigating to Single selection grid question type');
17
+ singleSelectionGridPage.steps.navigateToCreateQuestion('single selection grid');
18
+ cy.log('Adding question instructions, question stems, options, setting correct answer and adding points for Autoscored scoring type and switching to Preview tab');
19
+ singleSelectionGridPage.steps.addQuestionInstructions();
20
+ singleSelectionGridPage.steps.addOption();
21
+ singleSelectionGridPage.steps.addInputToAllQuestionStemFields(questionStems);
22
+ singleSelectionGridPage.steps.addInputToAllOptionsFields(options);
23
+ singleSelectionGridPage.steps.allotPoints(20);
24
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInSetCorrectAnswerTable([0, 1, 0, 1]);
25
+ singleSelectionGridPage.steps.clickOnAddAlternateAnswerButton();
26
+ singleSelectionGridPage.steps.allotPoints(20);
27
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInSetCorrectAnswerTable([0, 2, 2, 1]);
28
+ singleSelectionGridPage.steps.expandAdditonalSettings();
29
+ singleSelectionGridPage.steps.checkAllowStudentsToCheckAnswerCheckbox();
30
+ singleSelectionGridPage.steps.switchToPreviewTab();
31
+ });
32
+
33
+ it('Alternate answer case: When Alternate Answer points and Correct Answer points both are equal', () => {
34
+ cy.log('Checking total points displayed')
35
+ singleSelectionGridPage.previewScoreText()
36
+ .verifyInnerText('0/20');
37
+
38
+ cy.log('When the user selects \'Show correct answer\' checkbox without attempting the question, green check-mark icons should be displayed besides only correct answer options')
39
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox()
40
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 1, 0, 1]);
41
+ singleSelectionGridPage.incorrectIcon()
42
+ .should('not.exist');
43
+ singleSelectionGridPage.correctIncorectAnswerLabel()
44
+ .should('not.exist');
45
+ singleSelectionGridPage.steps.verifyCorrectIncorrectBorderNotVisible()
46
+
47
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
48
+
49
+ cy.log('When the user selects correct answer option, full score should be provided and green checkmark icon should be displayed beside the correct answer options and \'Correct answer\' label should be displayed below the table')
50
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([0, 1, 0, 1]);
51
+ singleSelectionGridPage.previewScoreText()
52
+ .verifyInnerText('20/20');
53
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox()
54
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 1, 0, 1]);
55
+ singleSelectionGridPage.incorrectIcon()
56
+ .should('not.exist');
57
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Correct')
58
+ singleSelectionGridPage.steps.verifyCorrectAttemptBorder()
59
+
60
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
61
+
62
+ cy.log('When the user clicks on \'Check answer\' button, green check-mark icons should be displayed only beside selected correct answer option and \'Correct answer\' label should be displayed below the table')
63
+ singleSelectionGridPage.steps.checkAnswer();
64
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 1, 0, 1]);
65
+ singleSelectionGridPage.incorrectIcon()
66
+ .should('not.exist');
67
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Correct');
68
+ singleSelectionGridPage.steps.verifyCorrectAttemptBorder();
69
+
70
+ cy.log('When the user selects alternate correct answer option, score specified for alternate correct answer (full score) should be provided and on selecting Show correct answer checkbox green check-mark icons should be displayed besides only alternate correct answer options and \'Correct answer\' label should be displayed below the table')
71
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([0, 2, 2, 1]);
72
+ singleSelectionGridPage.previewScoreText()
73
+ .verifyInnerText('20/20')
74
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox()
75
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 2, 2, 1]);
76
+ singleSelectionGridPage.incorrectIcon()
77
+ .should('not.exist');
78
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Correct')
79
+ singleSelectionGridPage.steps.verifyCorrectAttemptBorder()
80
+
81
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
82
+
83
+ cy.log('When the user clicks on \'Check answer\' button, then green check-mark icons should be displayed besides only alternate correct answer options and \'Correct answer\' label should be displayed below the table')
84
+ singleSelectionGridPage.steps.checkAnswer()
85
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 2, 2, 1]);
86
+ singleSelectionGridPage.incorrectIcon()
87
+ .should('not.exist');
88
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Correct')
89
+ singleSelectionGridPage.steps.verifyCorrectAttemptBorder()
90
+
91
+ cy.log('When user selects partially correct answer options such that user has selected correct options only from the correct tab and user selects show correct answer checkbox then green check-mark icons should be displayed beside the options set in the correct tab and red cross-mark icons should be displayed beside the incorrectly answered options and \'Incorrect Answer\' label should be displayed below the table')
92
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([1, 1, 0, 2]);
93
+ singleSelectionGridPage.previewScoreText()
94
+ .verifyInnerText('0/20');
95
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox()
96
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 1, 0, 1]);
97
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(0, 1);
98
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(3, 2);
99
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect')
100
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
101
+
102
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
103
+
104
+ cy.log('When the user clicks on \'Check answer\' button, green check-mark icon should be displayed beside selected correct answer options and red check-mark icons should be displayed besides selected incorrect answer options')
105
+ singleSelectionGridPage.steps.checkAnswer()
106
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(0, 1);
107
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(1, 1);
108
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(2, 0);
109
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(3, 2);
110
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect');
111
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
112
+
113
+ cy.log('When user selects partially correct answer options such that user has selected correct options only from the alternate tab and user selects show correct answer checkbox then green check-mark icons should be displayed beside the options set in the alternate tab and red cross-mark icons should be displayed beside the incorrectly answered options and \'Incorrect Answer\' label should be displayed below the table')
114
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([2, 2, 2, 0]);
115
+ singleSelectionGridPage.previewScoreText()
116
+ .verifyInnerText('0/20');
117
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox()
118
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 2, 2, 1]);
119
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(0, 2);
120
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(3, 0);
121
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect');
122
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
123
+
124
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
125
+
126
+ cy.log('When the user clicks on \'Check answer\' button, green check-mark icon should be displayed beside selected correct answer options and red check-mark icons should be displayed besides selected incorrect answer options')
127
+ singleSelectionGridPage.steps.checkAnswer()
128
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(0, 2);
129
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(1, 2);
130
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(2, 2);
131
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(3, 0);
132
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect');
133
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder();
134
+
135
+ cy.log('When user selects equal number of options from the correct tab and alternate tab then 0 points should be awarded and on selecting show correct answer checkbox green check-mark icon should be displayed beside options from the correct tab and red cross-mark icon should be displayed beside the options from the alternate tab and label \'Incorrect Answer\' should be displayed below the table')
136
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([0, 2, 0, 1]);
137
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox()
138
+ singleSelectionGridPage.previewScoreText()
139
+ .verifyInnerText('0/20');
140
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 1, 0, 1]);
141
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(1, 2);
142
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect');
143
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder();
144
+
145
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
146
+
147
+ cy.log('When the user clicks on \'Check answer\' button, red check-marks should be displayed besides the selected incorrect answer options and green check-mark icons should be displayed beside the selected correct answer and label \'Incorrect Answer\' should be displayed below the table')
148
+ singleSelectionGridPage.steps.checkAnswer();
149
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(0, 0);
150
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIcon(1, 2);
151
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(2, 0);
152
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIcon(3, 1);
153
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect');
154
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder();
155
+
156
+ cy.log('When the user selects incorrect answer options and selects the show correct answer checkbox, red crosssmark should be displayed beside selected incorrect answer option and \'Incorrect Answer\' label should be displayed below the table')
157
+ singleSelectionGridPage.steps.selectOptionForAllQuestionStemsInPreviewTabAnswerTable([1, 0, 1, 2]);
158
+ singleSelectionGridPage.previewScoreText()
159
+ .verifyInnerText('0/20');
160
+ singleSelectionGridPage.steps.checkShowCorrectAnswerCheckbox()
161
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIconForAllQuestionStems([1, 0, 1, 2])
162
+ singleSelectionGridPage.steps.verifyCorrectOptionCheckmarkIconForAllQuestionStems([0, 1, 0, 1])
163
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect');
164
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
165
+
166
+ singleSelectionGridPage.steps.verifyQuestionPreviewStateWhenShowCorrectAnswerIsUnchecked()
167
+
168
+ cy.log('When the user clicks on \'Check answer\' button, red check-mark icons should be displayed besides selected incorrect answer options')
169
+ singleSelectionGridPage.steps.checkAnswer();
170
+ singleSelectionGridPage.steps.verifyIncorrectOptionCrossmarkIconForAllQuestionStems([1, 0, 1, 2])
171
+ singleSelectionGridPage.correctIcon()
172
+ .should('not.exist');
173
+ singleSelectionGridPage.steps.verifyCorrectIncorrectAnswerLabel('Incorrect');
174
+ singleSelectionGridPage.steps.verifyIncorrectAttemptBorder()
175
+ });
176
+
177
+ singleSelectionGridPage.tests.verifyMinimumScoreAwardedIfAttemptedFunctionalityForIncorrectAnswer('20');
178
+ });
179
+ });