itemengine-cypress-automation 1.0.133-7thMarchFixes-0e78080.0 → 1.0.133

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. package/cypress/e2e/ILC/DesmosGraphing/previewTabContent.smoke.js +1 -2
  2. package/cypress/e2e/ILC/DrawingResponse/drawingResponsePreviewTabContents.smoke.js +53 -54
  3. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/partialDifferentWeightsBasic.js +0 -149
  4. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +312 -0
  5. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/additionalSettingsBasic.js +71 -0
  6. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +194 -0
  7. package/cypress/e2e/ILC/GeogebraActivity/additionalSettings.js +98 -0
  8. package/cypress/e2e/ILC/GeogebraActivity/editTabScoringSection.js +56 -0
  9. package/cypress/e2e/ILC/GeogebraActivity/gradingViewAndCorrectAnswerViewContents.smoke.js +106 -0
  10. package/cypress/e2e/ILC/GeogebraActivity/headerSection.js +74 -0
  11. package/cypress/e2e/ILC/GeogebraActivity/previewTabContent.smoke.js +91 -0
  12. package/cypress/e2e/ILC/GeogebraActivity/questionInstructions.js +28 -0
  13. package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingPenaltyScoring.js +79 -0
  14. package/cypress/e2e/ILC/Graphing/Scoring/manuallyAndNonScoredScoring.js +253 -0
  15. package/cypress/e2e/ILC/Graphing/addBackgroundShapesSection.js +307 -0
  16. package/cypress/e2e/ILC/Graphing/additionalSettingsBasic.js +84 -0
  17. package/cypress/e2e/ILC/Graphing/editTabScoringSection.js +105 -0
  18. package/cypress/e2e/ILC/Graphing/headerSection.js +77 -0
  19. package/cypress/e2e/ILC/Graphing/layoutAndGridOptions.js +916 -0
  20. package/cypress/e2e/ILC/Graphing/minimumScoringPenaltyPointsAndRoundingDropdown.js +57 -0
  21. package/cypress/e2e/ILC/Graphing/previewContentsForAllViews.smoke.js +1 -1
  22. package/cypress/e2e/ILC/Graphing/specifyCorrectAnswerSection.js +72 -0
  23. package/cypress/e2e/ILC/Graphing/studentViewSettings.js +120 -0
  24. package/cypress/e2e/ILC/Graphing/toolsControlsAndBackgroundSection.js +858 -0
  25. package/cypress/e2e/ILC/ShortTextResponseNew/additionalSettings.js +337 -4
  26. package/cypress/fixtures/constants.js +1 -1
  27. package/cypress/fixtures/theme/ilc.json +3 -1
  28. package/cypress/pages/components/additionalSettingsAccessibilitySectionComponent.js +66 -0
  29. package/cypress/pages/components/additionalSettingsPanel.js +95 -90
  30. package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +9 -7
  31. package/cypress/pages/components/backgroundImageUploadComponent.js +16 -14
  32. package/cypress/pages/components/colorPopupComponent.js +14 -17
  33. package/cypress/pages/components/commonComponents.js +1 -1
  34. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +1 -1
  35. package/cypress/pages/components/imageCanvasComponent.js +3 -3
  36. package/cypress/pages/components/index.js +2 -2
  37. package/cypress/pages/components/opacityComponent.js +1 -1
  38. package/cypress/pages/components/scoringSectionBaseEditTab.js +18 -0
  39. package/cypress/pages/components/studentResponseAreaAndLayoutComponent.js +1 -1
  40. package/cypress/pages/dialogBoxBase.js +1 -1
  41. package/cypress/pages/drawingResponsePage.js +35 -4
  42. package/cypress/pages/fillInTheGapsOverImageDropdownPage.js +2 -2
  43. package/cypress/pages/fillInTheGapsOverImageTextPage.js +2 -0
  44. package/cypress/pages/geogebraActivityPage.js +106 -0
  45. package/cypress/pages/graphingPage.js +1458 -77
  46. package/cypress/pages/index.js +1 -0
  47. package/cypress/pages/multipleSelectionPage.js +0 -1
  48. package/cypress/pages/shortTextResponsePage.js +155 -3
  49. package/cypress/pages/uploadResponsePage.js +0 -2
  50. package/package.json +2 -2
@@ -44,3 +44,4 @@ export * from './textEntryMathWithImagePage';
44
44
  export * from './graphingPage';
45
45
  export * from './simpleCalculatorPage'
46
46
  export * from './contentBlocksPage';
47
+ export * from './geoGebraActivityPage';
@@ -578,7 +578,6 @@ const tests = {
578
578
  });
579
579
  } else {
580
580
  autoScoredSpecifyCorrectAnswerSection.alternativeAnswerAccordion()
581
- .eq(1)
582
581
  .within(() => {
583
582
  utilities.verifyElementVisibilityState(autoScoredSpecifyCorrectAnswerSection.specifyCorrectAnswerErrorIcon(), 'visible');
584
583
  });
@@ -1,4 +1,4 @@
1
- import { createQuestionBasePage, autoScoredStudentViewSettings, autoScoredScoringPreviewTab, scoringSectionBaseEditTab, questionInstructionsComponent, autoScoredScoringSectionMultiResponseType, autoScoredSpecifyCorrectAnswerSection, commonComponents, additionalSettingsPanel, acceptedStudentInputComponent, studentViewSettingsLabelComponent, customizeSpecialCharacterComponent } from "./components/";
1
+ import { createQuestionBasePage, autoScoredStudentViewSettings, autoScoredScoringPreviewTab, scoringSectionBaseEditTab, questionInstructionsComponent, autoScoredScoringSectionMultiResponseType, autoScoredSpecifyCorrectAnswerSection, commonComponents, additionalSettingsPanel, acceptedStudentInputComponent, studentViewSettingsLabelComponent, customizeSpecialCharacterComponent, studentResponseAndLayoutComponent } from "./components/";
2
2
  import { dialogBoxBase } from "./dialogBoxBase";
3
3
  import utilities from "../support/helpers/utilities";
4
4
  const css = Cypress.env('css');
@@ -13,6 +13,7 @@ const selectors = {
13
13
  ...dialogBoxBase,
14
14
  ...autoScoredSpecifyCorrectAnswerSection,
15
15
  ...commonComponents,
16
+ ...additionalSettingsPanel,
16
17
 
17
18
  answerLabelSpecifyCorrectAnswerSection: () => cy.get('.answer-label'),
18
19
  displayCharacterCountLabel: () => cy.get('[data-ngie-testid="display-character-count-checkbox"] .MuiFormControlLabel-label'),
@@ -78,7 +79,18 @@ const selectors = {
78
79
  specialCharactersPopupCategoryAccordionCloseButtonPreviewTab: () => cy.get('[data-at="close-button"]'),
79
80
  specialCharactersCustomSymbolsPreviewTab: () => cy.get('[class*="SpecialMathCharacterstyles__CharacterWrapper"] button'),
80
81
  specialCharactersButtonPreviewTab: () => cy.get('.edit-question-preview-wrapper .custon-special-character-button'),
81
- previewTabResponseFieldSpecialCharactersButton: () => cy.get('.cloze-with-text-response-preview-wrapper .custon-special-character-button')
82
+ previewTabResponseFieldSpecialCharactersButton: () => cy.get('.cloze-with-text-response-preview-wrapper .custon-special-character-button'),
83
+ clipboardFunctionLabel: () => cy.get('.essay-clipboard-functions .ngie-toggle-button-title'),
84
+ clipboardFunctionButton: (index) => cy.get('.ngie-toggle-button-group button').eq(index),
85
+ clipboardFunctionButtonIcon: (index) => cy.get('.ngie-toggle-button-icon').eq(index),
86
+ clipboardFunctionButtonTickIcon: (index) => cy.get('.ngie-toggle-button-tick-icon').eq(index),
87
+ placeholderTextLabel: () => cy.get('[class*="ShortTextResponsestyle__PlaceholderWrapper"] .text-label'),
88
+ placeholderTextInputField: () => cy.get('[class*="ShortTextResponsestyle__PlaceholderWrapper"] input'),
89
+ accessibilityLabel: () => cy.get('.accessibility-wrapper [class*="Accessibilitystyles__AccessibilityLabelWrapper"]'),
90
+ flagNonAccessibleCheckbox: () => cy.get('[data-ngie-testid="response-option-checkbox"] input'),
91
+ flagNonAccessibleLabel: () => cy.get('[data-ngie-testid="response-option-checkbox"] .MuiFormControlLabel-label'),
92
+ ariaLabelLabel: () => cy.get('.aria-label-wrapper .title-casing'),
93
+ ariaLabelInputField: () => cy.get('.aria-label-wrapper [role="textbox"]'),
82
94
  }
83
95
 
84
96
  const steps = {
@@ -170,6 +182,12 @@ const steps = {
170
182
  .blur();
171
183
  },
172
184
 
185
+ clearAndFocusOutOfResponseInputFieldPreviewTab: () => {
186
+ shortTextResponsePage.previewTabResponseField()
187
+ .clear()
188
+ .blur();
189
+ },
190
+
173
191
  clearSpecifyCorrectAnswerInputField: () => {
174
192
  shortTextResponsePage.answerInputFieldSpecifyCorrectAnswerSection()
175
193
  .clear();
@@ -191,7 +209,6 @@ const steps = {
191
209
  */
192
210
  enterTextInAnswerInputFieldPreviewTab: (text) => {
193
211
  shortTextResponsePage.previewTabResponseField()
194
- .clear()
195
212
  .type(text);
196
213
  },
197
214
 
@@ -686,6 +703,140 @@ const steps = {
686
703
 
687
704
  verifyCorrectAnswerWrapperNotExist: () => {
688
705
  utilities.verifyElementVisibilityState(shortTextResponsePage.previewTabCorrectAnswerWrapper(), 'notExist');
706
+ },
707
+
708
+
709
+ verifyClipBoardButton: (index) => {
710
+ utilities.verifyElementVisibilityState(shortTextResponsePage.clipboardFunctionButton(index), 'visible');
711
+ utilities.verifyElementVisibilityState(shortTextResponsePage.clipboardFunctionButtonIcon(index), 'visible');
712
+ utilities.verifyElementVisibilityState(shortTextResponsePage.clipboardFunctionButtonTickIcon(index), 'visible');
713
+ steps.verifyClipboardFunctionButtonSelectedState(index);
714
+ },
715
+
716
+ /**
717
+ * @param {number} index index of the clipboard function button
718
+ * @description function verifies clipboard function button is in unselected state
719
+ */
720
+ verifyClipboardFunctionButtonUnselectedState: (index) => {
721
+ shortTextResponsePage.clipboardFunctionButton(index)
722
+ .should('have.attr', 'aria-pressed', 'false');
723
+ },
724
+
725
+ /**
726
+ * @param {number} index index of the clipboard function button
727
+ * @description function verifies clipboard function button is in selected state
728
+ */
729
+ verifyClipboardFunctionButtonSelectedState: (index) => {
730
+ shortTextResponsePage.clipboardFunctionButton(index)
731
+ .should('have.attr', 'aria-pressed', 'true');
732
+ },
733
+
734
+ /**
735
+ * @param {number} index index of the clipboard function button
736
+ * @description function selects the clipboard function button
737
+ */
738
+ selectClipboardFunctionButton: (index) => {
739
+ shortTextResponsePage.clipboardFunctionButton(index)
740
+ .click();
741
+ steps.verifyClipboardFunctionButtonSelectedState(index);
742
+ },
743
+
744
+ /**
745
+ * @param {number} index index of the clipboard function button
746
+ * @description function unselects the clipboard function button
747
+ */
748
+ unselectClipboardFunctionButton: (index) => {
749
+ shortTextResponsePage.clipboardFunctionButton(index)
750
+ .click();
751
+ steps.verifyClipboardFunctionButtonUnselectedState(index);
752
+ },
753
+
754
+ enterTextInPlaceholderTextInputField: (text) => {
755
+ shortTextResponsePage.placeholderTextInputField()
756
+ .clear()
757
+ .type(text)
758
+ .should('have.value', text);
759
+ },
760
+
761
+ clearAndFocusOutOfPlaceholderTextInputField: () => {
762
+ shortTextResponsePage.placeholderTextInputField()
763
+ .clear()
764
+ .blur()
765
+ },
766
+
767
+ verifyPlaceholderTextAnswerInputFieldSpecifyCorrectAnswerSection: (text) => {
768
+ shortTextResponsePage.answerInputFieldSpecifyCorrectAnswerSection()
769
+ .should('have.attr', 'placeholder', text);
770
+ },
771
+
772
+ verifyPlaceholderTextResponseFieldPreviewTab: (text) => {
773
+ shortTextResponsePage.previewTabResponseField()
774
+ .should('have.attr', 'placeholder', text);
775
+ },
776
+
777
+ verifyPlaceholderAttributeInSpecifyCorrectAnswerSectionResponseFieldEmpty: () => {
778
+ shortTextResponsePage.answerInputFieldSpecifyCorrectAnswerSection()
779
+ .should('have.attr', 'placeholder', '');
780
+ },
781
+
782
+ verifyPlaceholderAttributeInSpecifyCorrectAnswerSectionResponseFieldNotExists: () => {
783
+ shortTextResponsePage.answerInputFieldSpecifyCorrectAnswerSection()
784
+ .should('not.have.attr', 'placeholder');
785
+ },
786
+
787
+ verifyPlaceholderAttributeInResponseFieldPreviewTabNotExists: () => {
788
+ shortTextResponsePage.previewTabResponseField()
789
+ .should('not.have.attr', 'placeholder');
790
+ },
791
+
792
+ verifyPlaceholderAttributeInResponseFieldPreviewTabEmpty: () => {
793
+ shortTextResponsePage.previewTabResponseField()
794
+ .should('have.attr', 'placeholder', '');
795
+ },
796
+
797
+ enterTextInARIALabelInputField: (text) => {
798
+ shortTextResponsePage.ariaLabelInputField()
799
+ .clear()
800
+ .type(text)
801
+ .blur()
802
+ .should('have.text', text);
803
+ },
804
+
805
+ clearAndFocusOutOfARIALabelInputField: () => {
806
+ shortTextResponsePage.ariaLabelInputField()
807
+ .clear()
808
+ .blur()
809
+ },
810
+
811
+ verifyAriaLabelAddedResponseFieldSpecifyCorrectAnswerSection: (text) => {
812
+ shortTextResponsePage.answerInputFieldSpecifyCorrectAnswerSection()
813
+ .should('have.attr', 'aria-label', `Answer input field ${text}`);
814
+ },
815
+
816
+ verifyAriaLabelAddedResponseFieldPreviewTab: (text) => {
817
+ shortTextResponsePage.previewTabResponseField()
818
+ .should('have.attr', 'aria-label', `${text} Maximum 50 characters`);
819
+ },
820
+
821
+ verifyAnswerInputFieldHasDefaultAriaLabelInSpecifyCorrectAnswerSection: () => {
822
+ shortTextResponsePage.answerInputFieldSpecifyCorrectAnswerSection()
823
+ .should('have.attr', 'aria-label', 'Answer input field Enter your response to the question here');
824
+ },
825
+
826
+ verifyResponseFieldHasDefaultAriaLabelInPreviewTab: () => {
827
+ shortTextResponsePage.previewTabResponseField()
828
+ .should('have.attr', 'aria-label', 'Enter your response to the question here Maximum 50 characters');
829
+ },
830
+
831
+ checkFlagThisItemNonAccessibleCheckbox: () => {
832
+ shortTextResponsePage.flagNonAccessibleCheckbox()
833
+ .click()
834
+ .should('be.checked');
835
+ },
836
+
837
+ verifyFlagThisItemNonAccessibleCheckboxIsUnchecked: () => {
838
+ shortTextResponsePage.flagNonAccessibleCheckbox()
839
+ .should('not.be.checked');
689
840
  }
690
841
  }
691
842
 
@@ -701,6 +852,7 @@ const tests = {
701
852
  ...dialogBoxBase.tests,
702
853
  ...additionalSettingsPanel.tests,
703
854
  ...autoScoredSpecifyCorrectAnswerSection.tests,
855
+ ...studentResponseAndLayoutComponent.tests,
704
856
 
705
857
  verifyAnswerInputScoreAndCorrectIncorrectAnswerLabel: (answerInput, score, isCorrect) => {
706
858
  shortTextResponsePage.previewTabResponseField()
@@ -142,8 +142,6 @@ const steps = {
142
142
  .then(() => {
143
143
  uploadResponsePage.uploadingProgressBar()
144
144
  .should('not.exist', { timeout: 10000 });
145
- uploadResponsePage.scanningForVirusPreLoader()
146
- .should('not.be.visible', { timeout: 10000 });
147
145
  uploadResponsePage.uploadedFileLink()
148
146
  .last()
149
147
  .should('have.text', files[index]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "itemengine-cypress-automation",
3
- "version": "1.0.133-7thMarchFixes-0e78080.0",
3
+ "version": "1.0.133",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -35,4 +35,4 @@
35
35
  "node-fetch": "^3.3.2",
36
36
  "react-uuid": "^2.0.0"
37
37
  }
38
- }
38
+ }