itemengine-cypress-automation 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (142) hide show
  1. package/.build_wna +4 -0
  2. package/README.md +3 -0
  3. package/currents.config.js +6 -0
  4. package/cypress/API/createItem/toggleItemMode.js +15 -0
  5. package/cypress/config-files/ildev.json +15 -0
  6. package/cypress/config-files/ilprod.json +15 -0
  7. package/cypress/config-files/ilqa.json +15 -0
  8. package/cypress/config-files/ilstage.json +15 -0
  9. package/cypress/e2e/ILC/sorry-cypress-test/spec1.js +18 -0
  10. package/cypress/e2e/ILC/sorry-cypress-test/spec2.js +18 -0
  11. package/cypress/e2e/ILC/sorry-cypress-test/spec3.js +18 -0
  12. package/cypress/fixtures/accessibilityConfig.json +6 -0
  13. package/cypress/fixtures/constants.js +18 -0
  14. package/cypress/fixtures/equationEditorCategoriesAndSymbols .js +2271 -0
  15. package/cypress/fixtures/specialAndMathCharacters.js +118 -0
  16. package/cypress/fixtures/theme/ilc.json +150 -0
  17. package/cypress/fixtures/theme/ngie.json +26 -0
  18. package/cypress/fixtures/uploads/20mbFile.png +0 -0
  19. package/cypress/fixtures/uploads/80mbFile.pdf +0 -0
  20. package/cypress/fixtures/uploads/highlightImage.jpg +0 -0
  21. package/cypress/fixtures/uploads/image.png +0 -0
  22. package/cypress/fixtures/uploads/sample.aac +0 -0
  23. package/cypress/fixtures/uploads/sample.accdb +0 -0
  24. package/cypress/fixtures/uploads/sample.csv +100 -0
  25. package/cypress/fixtures/uploads/sample.doc +0 -0
  26. package/cypress/fixtures/uploads/sample.gif +0 -0
  27. package/cypress/fixtures/uploads/sample.heic +0 -0
  28. package/cypress/fixtures/uploads/sample.heif +0 -0
  29. package/cypress/fixtures/uploads/sample.hevc +0 -0
  30. package/cypress/fixtures/uploads/sample.jpeg +0 -0
  31. package/cypress/fixtures/uploads/sample.jpg +0 -0
  32. package/cypress/fixtures/uploads/sample.mp3 +0 -0
  33. package/cypress/fixtures/uploads/sample.mp4 +0 -0
  34. package/cypress/fixtures/uploads/sample.pdf +0 -0
  35. package/cypress/fixtures/uploads/sample.ppt +0 -0
  36. package/cypress/fixtures/uploads/sample.pub +0 -0
  37. package/cypress/fixtures/uploads/sample.rtf +7902 -0
  38. package/cypress/fixtures/uploads/sample.svg +10 -0
  39. package/cypress/fixtures/uploads/sample.txt +1 -0
  40. package/cypress/fixtures/uploads/sample.wav +0 -0
  41. package/cypress/fixtures/uploads/sample.xlsx +0 -0
  42. package/cypress/fixtures/uploads/sample.xps +0 -0
  43. package/cypress/fixtures/uploads/sample.zip +0 -0
  44. package/cypress/fixtures/uploads/sample1.jpg +0 -0
  45. package/cypress/fixtures/uploads/sample1.mp3 +0 -0
  46. package/cypress/fixtures/uploads/sample1.zip +0 -0
  47. package/cypress/fixtures/uploads/sample10Sec.mp3 +0 -0
  48. package/cypress/fixtures/uploads/sample2.jpg +0 -0
  49. package/cypress/fixtures/uploads/sample2.mp3 +0 -0
  50. package/cypress/fixtures/uploads/sampleVirus.zip +0 -0
  51. package/cypress/pages/audioPlayerPage.js +628 -0
  52. package/cypress/pages/audioResponsePage.js +264 -0
  53. package/cypress/pages/components/additionalSettingsPanel.js +174 -0
  54. package/cypress/pages/components/answerNumerationComponent.js +109 -0
  55. package/cypress/pages/components/autoScoredAdditionalSettings.js +183 -0
  56. package/cypress/pages/components/autoScoredPreviewBase.js +94 -0
  57. package/cypress/pages/components/autoScoredScoringSection.js +195 -0
  58. package/cypress/pages/components/autoScoredScoringSectionMultipleResponsesType.js +268 -0
  59. package/cypress/pages/components/autoScoredSetCorrectAnswerSection.js +291 -0
  60. package/cypress/pages/components/ckEditorToolbar.js +64 -0
  61. package/cypress/pages/components/colorPopupComponent.js +293 -0
  62. package/cypress/pages/components/commonComponents.js +93 -0
  63. package/cypress/pages/components/componentsFlowChart/figFlowChart.png +0 -0
  64. package/cypress/pages/components/createCustomCategoryFlyout.js +138 -0
  65. package/cypress/pages/components/createQuestionBasePage.js +225 -0
  66. package/cypress/pages/components/customizeHighlightPropertiesComponent.js +318 -0
  67. package/cypress/pages/components/dragAndDropResponseOptions.js +738 -0
  68. package/cypress/pages/components/dragAndDropSetCorrectAnswerCheckboxComponents.js +124 -0
  69. package/cypress/pages/components/draggableOptionsContainer.js +857 -0
  70. package/cypress/pages/components/editCategoryFlyout.js +40 -0
  71. package/cypress/pages/components/equationEditorFlyout.js +158 -0
  72. package/cypress/pages/components/essayResponseCommonComponents.js +86 -0
  73. package/cypress/pages/components/figOverImageCommonComponent.js +924 -0
  74. package/cypress/pages/components/fillInTheGapsCommonComponents.js +687 -0
  75. package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +442 -0
  76. package/cypress/pages/components/fillInTheGapsTextCommonComponent.js +884 -0
  77. package/cypress/pages/components/gridCommonComponents.js +951 -0
  78. package/cypress/pages/components/index.js +38 -0
  79. package/cypress/pages/components/listSortingAndOrderingBase.js +401 -0
  80. package/cypress/pages/components/maximumRecorderLengthComponent.js +116 -0
  81. package/cypress/pages/components/mcqAdditionalSettingsBase.js +390 -0
  82. package/cypress/pages/components/mcqOptionsComponent.js +263 -0
  83. package/cypress/pages/components/mcqPreviewComponents.js +78 -0
  84. package/cypress/pages/components/mcqQuestionCommonComponents.js +265 -0
  85. package/cypress/pages/components/mcqScoringComponent.js +120 -0
  86. package/cypress/pages/components/mcqSetCorrectAnswerSection.js +143 -0
  87. package/cypress/pages/components/optionsWrapperComponent.js +221 -0
  88. package/cypress/pages/components/playbackControlsBaseComponent.js +163 -0
  89. package/cypress/pages/components/previewScoringAndShowCorrectAnswerComponent.js +90 -0
  90. package/cypress/pages/components/questionInstructionsComponent.js +112 -0
  91. package/cypress/pages/components/scoringSectionBase.js +308 -0
  92. package/cypress/pages/components/setPointsPopupBase.js +79 -0
  93. package/cypress/pages/components/specialAndCustomSpecialCharactersComponent.js +79 -0
  94. package/cypress/pages/components/specialCharactersFlyoutComponent.js +58 -0
  95. package/cypress/pages/components/studentResponseAreaAndLayoutComponent.js +28 -0
  96. package/cypress/pages/components/uploadImageSectionComponent.js +594 -0
  97. package/cypress/pages/createItemPage.js +28 -0
  98. package/cypress/pages/dialogBoxBase.js +111 -0
  99. package/cypress/pages/dragAndDropIntoCategoriesAllOrNothingScoring.js +1161 -0
  100. package/cypress/pages/dragAndDropIntoCategoriesCellsScoring.js +1559 -0
  101. package/cypress/pages/dragAndDropIntoCategoriesPage.js +1556 -0
  102. package/cypress/pages/dragAndDropIntoCategoriesResponseScoring.js +1396 -0
  103. package/cypress/pages/essayResponseBasicPage.js +57 -0
  104. package/cypress/pages/essayResponseMathPage.js +47 -0
  105. package/cypress/pages/essayResponsePage.js +385 -0
  106. package/cypress/pages/feedbackScalePage.js +698 -0
  107. package/cypress/pages/fillInTheGapsDragAndDropPage.js +742 -0
  108. package/cypress/pages/fillInTheGapsDropdownPage.js +99 -0
  109. package/cypress/pages/fillInTheGapsOverImageDropdownPage.js +232 -0
  110. package/cypress/pages/fillInTheGapsOverImageTextPage.js +135 -0
  111. package/cypress/pages/fillInTheGapsScoring.js +5974 -0
  112. package/cypress/pages/fillInTheGapsSetCorrectAnswerSection.js +260 -0
  113. package/cypress/pages/fillInTheGapsTextPage.js +225 -0
  114. package/cypress/pages/highlightImagePage.js +1316 -0
  115. package/cypress/pages/highlightPage.js +870 -0
  116. package/cypress/pages/index.js +30 -0
  117. package/cypress/pages/listMatchingPage.js +1330 -0
  118. package/cypress/pages/listMatchingScoring.js +2635 -0
  119. package/cypress/pages/listOrderingPage.js +751 -0
  120. package/cypress/pages/listSortingPage.js +1201 -0
  121. package/cypress/pages/multipleSelectionGridPage.js +359 -0
  122. package/cypress/pages/multipleSelectionPage.js +88 -0
  123. package/cypress/pages/passagePage.js +426 -0
  124. package/cypress/pages/readingRulerPage.js +302 -0
  125. package/cypress/pages/selectQuestionResourceToolPage.js +64 -0
  126. package/cypress/pages/shortTextResponsePage.js +197 -0
  127. package/cypress/pages/singleSelectionGridPage.js +370 -0
  128. package/cypress/pages/singleSelectionPage.js +65 -0
  129. package/cypress/pages/uploadResponsePage.js +110 -0
  130. package/cypress/pages/videoResponsePage.js +375 -0
  131. package/cypress/support/commands.js +140 -0
  132. package/cypress/support/e2e.js +14 -0
  133. package/cypress/support/helpers/abortEarly.js +19 -0
  134. package/cypress/support/helpers/accessibility.js +34 -0
  135. package/cypress/support/helpers/cypressUtilities.js +64 -0
  136. package/cypress/support/helpers/localStorage.js +13 -0
  137. package/cypress/support/helpers/selectText.js +77 -0
  138. package/cypress/support/helpers/utilities.js +126 -0
  139. package/cypress.config.js +76 -0
  140. package/il.yaml +14 -0
  141. package/language +1 -0
  142. package/package.json +26 -0
@@ -0,0 +1,124 @@
1
+ const css = Cypress.env('css');
2
+
3
+ const selectors = {
4
+ randomizeOptionsLabel: () => cy.get('[data-ngie-testid="randomize-options-checkbox"] .MuiFormControlLabel-label'),
5
+ reuseOptionsLabel: () => cy.get('[data-ngie-testid="reuse-options-checkbox"] .MuiFormControlLabel-label'),
6
+ hideDragHandleLabel: () => cy.get('[data-ngie-testid="hide-drag-handle-checkbox"] .MuiFormControlLabel-label'),
7
+ randomizeOptionsCheckbox: () => cy.get('[data-ngie-testid="randomize-options-checkbox"] input'),
8
+ reuseOptionsCheckbox: () => cy.get('[data-ngie-testid="reuse-options-checkbox"] input'),
9
+ hideDragHandleCheckbox: () => cy.get('[data-ngie-testid="hide-drag-handle-checkbox"] input'),
10
+ }
11
+
12
+ const steps = {
13
+ //V3 - This function should be updated in all files
14
+ checkRandomizeOptionsCheckbox: () => {
15
+ dragAndDropSetCorrectAnswerCheckboxComponents.randomizeOptionsCheckbox()
16
+ .click()
17
+ .should('be.checked');
18
+ },
19
+
20
+ //V3 - This function should be updated in all files
21
+ checkReuseOptionsCheckbox: () => {
22
+ dragAndDropSetCorrectAnswerCheckboxComponents.reuseOptionsCheckbox()
23
+ .click()
24
+ .should('be.checked');
25
+ },
26
+
27
+ //V3 - This function should be updated in all files
28
+ checkHideDragHandleCheckbox: () => {
29
+ dragAndDropSetCorrectAnswerCheckboxComponents.hideDragHandleCheckbox()
30
+ .click()
31
+ .should('be.checked');
32
+ },
33
+
34
+ //V3 - This function should be updated in all files
35
+ uncheckRandomizeOptionsCheckbox: () => {
36
+ dragAndDropSetCorrectAnswerCheckboxComponents.randomizeOptionsCheckbox()
37
+ .click()
38
+ .should('not.be.checked');
39
+ },
40
+
41
+ //V3 - This function should be updated in all files
42
+ uncheckReuseOptionsCheckbox: () => {
43
+ dragAndDropSetCorrectAnswerCheckboxComponents.reuseOptionsCheckbox()
44
+ .click()
45
+ .should('not.be.checked');
46
+ },
47
+ }
48
+
49
+ const tests = {
50
+ verifyDefaultStateOfRandomizeOptionsCheckboxAndLabel: () => {
51
+ it('\'Randomize options\' functionality label and checkbox should be displayed and by default it should be unchecked', () => {
52
+ dragAndDropSetCorrectAnswerCheckboxComponents.randomizeOptionsLabel()
53
+ .verifyInnerText('Randomize options')
54
+ .and('be.visible');
55
+ dragAndDropSetCorrectAnswerCheckboxComponents.randomizeOptionsCheckbox()
56
+ .should('not.be.checked');
57
+ });
58
+ },
59
+
60
+ verifyDefaultStateOfReuseOptionsCheckboxAndLabel: () => {
61
+ it('\'Reuse options\' functionality label and checkbox should be displayed and by default it should be unchecked', () => {
62
+ dragAndDropSetCorrectAnswerCheckboxComponents.reuseOptionsLabel()
63
+ .verifyInnerText('Reuse options')
64
+ .and('be.visible');
65
+ dragAndDropSetCorrectAnswerCheckboxComponents.reuseOptionsCheckbox()
66
+ .should('not.be.checked');
67
+ });
68
+ },
69
+
70
+ verifyDefaultStateOfHideDragHandleCheckboxAndLabel: () => {
71
+ it('\'Hide drag handle\' functionality label and checkbox should be displayed and by default it should be unchecked', () => {
72
+ dragAndDropSetCorrectAnswerCheckboxComponents.hideDragHandleLabel()
73
+ .verifyInnerText('Hide drag handle')
74
+ .and('be.visible');
75
+ dragAndDropSetCorrectAnswerCheckboxComponents.hideDragHandleCheckbox()
76
+ .should('not.be.checked');
77
+ });
78
+ },
79
+
80
+ verifyCSSAndA11yOfCheckedStateOfRandomizeOptionsCheckbox: () => {
81
+ it('CSS of \'Randomize options\' functionality - checked state', { tags: 'css' }, () => {
82
+ dragAndDropSetCorrectAnswerCheckboxComponents.randomizeOptionsCheckbox()
83
+ .parent()
84
+ .find('g[data-name*="Rectangle"]')
85
+ .should('have.css', 'fill', css.color.activeButtons);
86
+ });
87
+
88
+ it('Accessibility of \'Randomize options\' functionality - checked state', { tags: 'a11y' }, () => {
89
+ cy.checkAccessibility(dragAndDropSetCorrectAnswerCheckboxComponents.randomizeOptionsCheckbox().parents('.ngie-checkbox-form-group'));
90
+ });
91
+ },
92
+
93
+ verifyCSSAndA11yOfCheckedStateOfReuseOptionsCheckbox: () => {
94
+ it('CSS of \'Reuse options\' functionality - checked state', { tags: 'css' }, () => {
95
+ dragAndDropSetCorrectAnswerCheckboxComponents.reuseOptionsCheckbox()
96
+ .parent()
97
+ .find('g[data-name*="Rectangle"]')
98
+ .should('have.css', 'fill', css.color.activeButtons);
99
+ });
100
+
101
+ it('Accessibility of \'Reuse options\' functionality - checked state', { tags: 'a11y' }, () => {
102
+ cy.checkAccessibility(dragAndDropSetCorrectAnswerCheckboxComponents.reuseOptionsCheckbox().parents('.ngie-checkbox-form-group'));
103
+ });
104
+ },
105
+
106
+ verifyCSSAndA11yOfCheckedStateOfHideDragHandleCheckbox: () => {
107
+ it('CSS of \'Hide drag handle\' functionality - checked state', { tags: 'css' }, () => {
108
+ dragAndDropSetCorrectAnswerCheckboxComponents.hideDragHandleCheckbox()
109
+ .parent()
110
+ .find('g[data-name*="Rectangle"]')
111
+ .should('have.css', 'fill', css.color.activeButtons);
112
+ });
113
+
114
+ it('Accessibility of \'Hide drag handle\' functionality - checked state', { tags: 'a11y' }, () => {
115
+ cy.checkAccessibility(dragAndDropSetCorrectAnswerCheckboxComponents.hideDragHandleCheckbox().parents('.ngie-checkbox-form-group'));
116
+ });
117
+ },
118
+ }
119
+
120
+ export const dragAndDropSetCorrectAnswerCheckboxComponents = {
121
+ ...selectors,
122
+ steps,
123
+ tests
124
+ }