itemengine-cypress-automation 1.0.113 → 1.0.115

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. package/cypress/e2e/ILC/AudioResponseNew/barRecorderStyle.js +489 -0
  2. package/cypress/e2e/ILC/AudioResponseNew/compactRecorderStyle.js +482 -0
  3. package/cypress/e2e/ILC/AudioResponseNew/customizePlaybackControls.js +488 -0
  4. package/cypress/e2e/ILC/AudioResponseNew/editAndPreviewTabScoringSection.js +92 -0
  5. package/cypress/e2e/ILC/AudioResponseNew/editTabBasicSection.js +229 -0
  6. package/cypress/e2e/ILC/AudioResponseNew/gradingViewAndCorrectAnswerViewContents.smoke.js +1 -1
  7. package/cypress/e2e/ILC/AudioResponseNew/headerSection.js +67 -0
  8. package/cypress/e2e/ILC/AudioResponseNew/previewContentsForAllViews.smoke.js +1 -1
  9. package/cypress/e2e/ILC/AudioResponseNew/standardRecorderStyle.js +11 -11
  10. package/cypress/e2e/ILC/AudioResponseNew/studentViewSettings.js +529 -0
  11. package/cypress/e2e/ILC/EssayResponse/essayResponseCustomizeFormattingOptions1.smoke.js +108 -190
  12. package/cypress/e2e/ILC/EssayResponse/essayResponseCustomizeFormattingOptions2.js +83 -155
  13. package/cypress/e2e/ILC/EssayResponse/essayResponseCustomizeFormattingOptions3.js +104 -315
  14. package/cypress/e2e/ILC/EssayResponseBasic/essayResponseBasicCustomizeFormattingOptions.js +121 -135
  15. package/cypress/e2e/ILC/EssayResponseMath/createItem.js +17 -0
  16. package/cypress/e2e/ILC/EssayResponseMath/mathCharacters.js +203 -0
  17. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/Scoring/manuallyAndNonScored.js +121 -0
  18. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +236 -0
  19. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/Scoring/partialDifferentWeightsBasic.js +255 -0
  20. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/Scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +237 -0
  21. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/Scoring/partialDifferentWeightsWithCorrectPointsGreaterThanAlternativePoints.js +236 -0
  22. package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/Scoring/partialEqualWeightsWithAlternativePointsGreaterThanCorrectPoints.js +2 -2
  23. package/cypress/e2e/ILC/ShortTextResponseNew/additionalSettings.js +43 -0
  24. package/cypress/e2e/ILC/ShortTextResponseNew/allOrNothingBasicForAllViews.smoke.js +187 -0
  25. package/cypress/e2e/ILC/ShortTextResponseNew/allOrNothingWithAlternativeAnswer.js +245 -0
  26. package/cypress/e2e/ILC/ShortTextResponseNew/checkAnswerFunctionalityForAllViews.smoke.js +99 -0
  27. package/cypress/e2e/ILC/ShortTextResponseNew/editTabScoringSection.js +97 -0
  28. package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +74 -0
  29. package/cypress/e2e/ILC/ShortTextResponseNew/manuallyAndNonScoredScoring.js +83 -0
  30. package/cypress/e2e/ILC/ShortTextResponseNew/previewContentsForAllViews.smoke.js +109 -0
  31. package/cypress/e2e/ILC/ShortTextResponseNew/specifyCorrectAnswerSection.js +66 -0
  32. package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViews.smoke.js +326 -0
  33. package/cypress/e2e/ILC/TextEntryMath/checkAnswerFunctionalityForAllViews.smoke.js +163 -0
  34. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodEquivalentStructures.js +8 -8
  35. package/cypress/e2e/ILC/TextEntryMath/evaluationMethodValueIsEquivalent.js +3 -3
  36. package/cypress/e2e/ILC/TextEntryMath/previewContentsForAllViews.smoke.js +154 -0
  37. package/cypress/pages/audioResponsePage.js +523 -66
  38. package/cypress/pages/components/autoScoredScoringPreviewTab.js +2 -0
  39. package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +6 -5
  40. package/cypress/pages/components/equationEditorFlyout.js +11 -0
  41. package/cypress/pages/components/essayResponseCommonComponents.js +290 -19
  42. package/cypress/pages/components/figOverImageCanvasComponent.js +1 -1
  43. package/cypress/pages/components/maximumRecorderLengthComponent.js +32 -15
  44. package/cypress/pages/components/playbackControlsBaseComponent.js +9 -1
  45. package/cypress/pages/components/questionInputFieldComponent.js +0 -7
  46. package/cypress/pages/dragAndDropIntoCategoriesPage.js +3 -3
  47. package/cypress/pages/essayResponseBasicPage.js +1 -26
  48. package/cypress/pages/essayResponsePage.js +21 -284
  49. package/cypress/pages/shortTextResponsePage.js +142 -103
  50. package/cypress/pages/textEntryMathPage.js +58 -7
  51. package/package.json +1 -1
  52. package/scripts/sorry-cypress.mjs +1 -1
@@ -7,8 +7,6 @@ import utilities from "../support/helpers/utilities";
7
7
  const css = Cypress.env('css');
8
8
 
9
9
  const allCategories = Object.values(equationEditorCategoriesAndSymbols);
10
- let originalText;
11
- let formattedText;
12
10
 
13
11
  const selectors = {
14
12
  ...scoringSectionBaseEditTab,
@@ -35,10 +33,6 @@ const selectors = {
35
33
  tableHeaderRow: () => cy.get('thead'),
36
34
  tableHeaderCell: () => cy.get('th'),
37
35
 
38
- //wordCount
39
- displayWordCountCheckbox: () => cy.get('[data-ngie-testid="display-word-count-checkbox"] input'),
40
- wordCountWrapper: () => cy.get('[class*="indexstyle__WordCharCountWrapper"]'),
41
-
42
36
  //Special characters
43
37
  specialCharactersPopupTitle: () => cy.get('#alert-dialog-title'),
44
38
  specialCharactersPopupCloseButton: () => cy.get('[class*="close-button"]'),
@@ -47,23 +41,8 @@ const selectors = {
47
41
  specialCharactersPopupCategoryTitle: () => cy.get('.char-accordion-label'),
48
42
  specialCharactersPopupCategoryAccordionIcon: () => cy.get('.special-math-content [class*="expandIconWrapper"]'),
49
43
 
50
- ///Old
51
- //Customize Formatting Options
52
- customizeFormattingOptionsAccordion: () => cy.get('.customize-formatting-option-wrapper .ngie-accordion-summary'),
53
- customizeFormattingOptionsAccordionLabel: () => cy.get('.customize-formatting-options-label'),
54
- customizeFormattingOptionsTiles: (toolbarOption) => cy.get(`.icon-button-custom-format[title="${toolbarOption}"]`),
55
- customizeFormattingOptionsWrapper: () => cy.get('.essay-response-grid-wrapper'),
56
- equationEditorOptionsWrapper: () => cy.get('[class*="EssayResponseComponentstyles__EquationEditorOptionsWrapper"]'),
57
- //Todo: need to remove this and use common component drag handle
58
- customizeFormattingOptionsdragHandleButton: () => cy.get('[class*="drag-icon-"]'),
59
- equationEditorLabel: () => cy.get('.equation-editor-text-title'),
60
- disableCutCopyPasteLabel: () => cy.get('[data-ngie-testid="disable-cut,-copy-and-paste-checkbox"] .MuiFormControlLabel-label'),
61
- disableCutCopyPasteCheckbox: () => cy.get('[data-ngie-testid="disable-cut,-copy-and-paste-checkbox"] input'),
62
- //Preview tab
63
- previewTabColorPalettePopup: () => cy.get('.cke_panel_frame'),
64
- previewTabToolbarSeperator: () => cy.get('.essay-preview-wrapper span[class="cke_toolbar_separator"]'),
65
- specialCharacterFlyoutIcon: (characterIndex) => cy.get('.img_special_char').eq(characterIndex), //need to update and change this
66
44
  //Equation Editor section
45
+ equationEditorSectionWrapper: () => cy.get('.essay-response-eqn-editor-wrapper'),
67
46
  equationEditorSectionCategories: () => cy.get('[class*="DraggableItemsGrid"] .icon-button-custom-format'),
68
47
  equationEditorSectionCategoryLabel: () => cy.get('.equation-editor-label-wrapper'),
69
48
  equationEditorSection: () => cy.get('[class*="EquationEditorOptionsWrapper"]'),
@@ -71,13 +50,22 @@ const selectors = {
71
50
  equationEditorSectionHelperText: () => cy.get('.equation-editor-description-text'),
72
51
  equationEditorSectionCategoriesDragIcon: () => cy.get('.drag-icon-equation-editor-button'),
73
52
  equationEditorSectionCategoriesEditIcon: () => cy.get('.edit-icon-button button'),
74
- equationEditorSectionTickIcon: () => cy.get('.tick-icon-wrapper'),
53
+ equationEditorSectionTickIcon: () => cy.get('[class*="DraggableItemsGrid"] .tick-icon-wrapper'),
75
54
  selectACategoryErrorMessage: () => cy.get('[class*="ErrorBlock"]'),
76
55
  equationEditorSectionCategoryIcon: () => cy.get('.equation-editor-icon'),
77
- equationEditorSectionDeleteCustomCategoryIcon: () => cy.get('.delete-button-icon button')
56
+ equationEditorSectionDeleteCustomCategoryIcon: () => cy.get('.delete-button-icon button'),
57
+
58
+ //Controls section
59
+ controlsOptionsTiles: (formattingOption = null) => {
60
+ if (formattingOption) {
61
+ return cy.get(`[class*="ControlsWrapper"] .icon-button-custom-format[title="${formattingOption}"]`)
62
+ } else {
63
+ return cy.get('[class*="ControlsWrapper"] .icon-button-custom-format')
64
+ }
65
+ }
78
66
  }
79
67
 
80
- const tableDialogBox = { //TODO: Once redmine issue is fixed the selectors will get changed to this: editTableDialogBoxAddRowHeaderLabel: () => cy.get('.add-table-dialog .chk_box_add_header_row')
68
+ const tableDialogBox = {
81
69
  //Add table dialog box
82
70
  addTableDialogBox: () => cy.get('.cke_dialog_body'),
83
71
  addTableDialogBoxTitle: () => cy.get('.cke_dialog_title'),
@@ -129,14 +117,6 @@ const hyperlinkDialogBox = {
129
117
  previewInputFieldHyperlinkText: () => cy.get('div[title="Enter your response to the question here."] a'),
130
118
  }
131
119
 
132
- const specialAndMathCharacters = {
133
- specialAndMathCharacterPopup: () => cy.get('.cke_dialog_body').contains(/Special characters|Math characters/).parents('.cke_dialog_body'),
134
- specialAndMathCharacterPopupSymbolsWrapper: () => essayResponsePage.specialAndMathCharacterPopup().find('.special_char_td'),
135
- specialAndMathCharacterPopupSymbols: () => essayResponsePage.specialAndMathCharacterPopup().find('.special_char_td a[role="option"]'),
136
- specialAndMathCharacterPopupTitle: () => essayResponsePage.specialAndMathCharacterPopup().find('.cke_dialog_title '),
137
- specialAndMathCharacterPopupCloseButton: () => essayResponsePage.specialAndMathCharacterPopup().find('a[title="Close"]')
138
- }
139
-
140
120
  const steps = {
141
121
  ...createQuestionBasePage.steps,
142
122
  ...questionInstructionsComponent.steps,
@@ -230,20 +210,6 @@ const steps = {
230
210
  });
231
211
  },
232
212
 
233
- checkDisplayWordCountCheckbox: () => {
234
- essayResponsePage.displayWordCountCheckbox()
235
- .click()
236
- .should('be.checked');
237
- },
238
-
239
- /**
240
- * verify word count in preview tab
241
- * @param {number} wordCount
242
- */
243
- verifyWordCount: (wordCount) => {
244
- utilities.verifyInnerText(essayResponsePage.wordCountWrapper(), `Words: ${wordCount}`)
245
- },
246
-
247
213
  /**
248
214
  * Verify newly added custom category container is displayed
249
215
  * @param {string} customCategoryName Custom category name
@@ -888,94 +854,24 @@ const steps = {
888
854
  .parents('.icon-button-custom-format')
889
855
  .should('have.class', 'Mui-selected');
890
856
  },
891
- ///Old
892
- expandCustomizeFormattingOptionsAccordion: () => {
893
- essayResponsePage.customizeFormattingOptionsAccordion()
894
- .click()
895
- .should('have.attr', 'aria-expanded', 'true');
896
- },
897
-
898
- selectingCategories: (categoriesArray) => {
899
- categoriesArray.forEach((categoryName) => {
900
- essayResponsePage.equationEditorSectionCategories()
901
- .contains(categoryName, { matchCase: false })
902
- .click();
903
- });
904
- },
905
857
 
906
- /**
907
- * This function verifies the formatting option is in selected state
908
- * @param {string} formattingOption name of the formatting option
909
- */
910
- verifyCustomizeFormattingOptionIsSelected: (formattingOption) => {
911
- essayResponsePage.customizeFormattingOptionsTiles(formattingOption)
912
- .should('have.attr', 'data-aria-pressed', 'true');
913
- },
914
-
915
- selectCustomizedFormattingOption: (formattingOptionArray) => {
858
+ selectControlsOption: (formattingOptionArray) => {
916
859
  formattingOptionArray.forEach((formattingOption) => {
917
- essayResponsePage.customizeFormattingOptionsTiles(formattingOption)
860
+ essayResponsePage.controlsOptionsTiles(formattingOption)
918
861
  .click();
919
- essayResponsePage.customizeFormattingOptionsTiles(formattingOption)
862
+ essayResponsePage.controlsOptionsTiles(formattingOption)
920
863
  .should('have.attr', 'data-aria-pressed', 'true');
921
864
  });
922
865
  },
923
866
 
924
- deselectCustomizedFormattingOption: (formattingOptionArray) => {
925
- formattingOptionArray.forEach((formattingOption) => {
926
- essayResponsePage.customizeFormattingOptionsTiles(formattingOption)
867
+ selectingCategories: (categoriesArray) => {
868
+ categoriesArray.forEach((categoryName) => {
869
+ essayResponsePage.equationEditorSectionCategories()
870
+ .contains(categoryName, { matchCase: false })
927
871
  .click();
928
- essayResponsePage.customizeFormattingOptionsTiles(formattingOption)
929
- .should('have.attr', 'data-aria-pressed', 'false');
930
872
  });
931
873
  },
932
874
 
933
- deselectPreviewTabToolbarOption: (toolbarOption) => {
934
- essayResponsePage.previewTabToolbarOption(toolbarOption)
935
- .click()
936
- .should('have.attr', 'aria-pressed', 'false');
937
- },
938
-
939
- selectColorFromPopup: (color) => {
940
- essayResponsePage.previewTabColorPalettePopup()
941
- .its('0.contentDocument.body').should('not.be.empty')
942
- .within(() => {
943
- cy.get('div[title="Colors"]')
944
- .last()
945
- .find(`[title="${color}"]`)
946
- .last()
947
- .click();
948
- });
949
- },
950
-
951
- verifyUndoAndRedoFunctionality: (toolbarOption, orignalText, formattedText) => {
952
- essayResponsePage.previewTabToolbarOption('Undo (Ctrl+Z)')
953
- .click();
954
- if (toolbarOption == 'Background Color' || toolbarOption == 'Text Color') {
955
- essayResponsePage.previewTabToolbarOption(toolbarOption)
956
- .should('have.attr', 'aria-expanded', 'false');
957
- } else {
958
- essayResponsePage.previewTabToolbarOption(toolbarOption)
959
- .should('have.attr', 'aria-pressed', 'false');
960
- };
961
- essayResponsePage.responseField()
962
- .verifyInnerHTML(orignalText);
963
- essayResponsePage.previewTabToolbarOption('Redo (Ctrl+Y)')
964
- .click();
965
- if (toolbarOption == 'Background Color' || toolbarOption == 'Text Color') {
966
- essayResponsePage.previewTabToolbarOption(toolbarOption)
967
- .should('have.attr', 'aria-expanded', 'true');
968
- } else if (toolbarOption == 'Insert Horizontal Line' || toolbarOption == 'Code Editor' || toolbarOption == 'Increase Indent' || toolbarOption == 'Decrease Indent' || toolbarOption == 'Remove Format') {
969
- essayResponsePage.previewTabToolbarOption(toolbarOption)
970
- .should('have.attr', 'aria-pressed', 'false');
971
- } else {
972
- essayResponsePage.previewTabToolbarOption(toolbarOption)
973
- .should('have.attr', 'aria-pressed', 'true');
974
- };
975
- essayResponsePage.responseField()
976
- .verifyInnerHTML(formattedText);
977
- },
978
-
979
875
  /**
980
876
  * @description this function verifies value in input field of hyperlink dialog box URL input value
981
877
  * @param {string} inputValue value in the input field
@@ -1060,6 +956,7 @@ const tests = {
1060
956
  ...autoScoredScoringPreviewTab.tests,
1061
957
  ...commonComponents.tests,
1062
958
  ...customizeSpecialCharacterComponent.tests,
959
+ ...essayResponseCommonComponents.tests,
1063
960
 
1064
961
  /**
1065
962
  * insert equation and verify input field content and word count
@@ -1074,165 +971,6 @@ const tests = {
1074
971
  });
1075
972
  },
1076
973
 
1077
- verifyUndoAndRedoFunctionalityForPreviewTabToolbarOption: (toolbarOption) => {
1078
- it(`When the user enters text in the response field, selects the text and selects the ${toolbarOption} toolbar option and clicks on the \'Undo\' toolbar option, then it should undo the latest action and when the user clicks on the \'Redo\' toolbar option, then it should redo the latest action`, () => {
1079
- essayResponsePage.steps.resetPreviewTabResponseField();
1080
- essayResponsePage.responseField()
1081
- .type('Lorem Ipsum');
1082
- if (toolbarOption == 'Decrease Indent') {
1083
- essayResponsePage.previewTabToolbarOption('Increase Indent')
1084
- .click();
1085
- } else if (toolbarOption == 'Remove Format') {
1086
- essayResponsePage.responseField()
1087
- .type('{selectAll}');
1088
- essayResponsePage.steps.selectPreviewTabToolbarOption('Bold (Ctrl+B)');
1089
- };
1090
- essayResponsePage.responseField()
1091
- .then(($originalText) => {
1092
- originalText = $originalText[0].innerHTML
1093
- essayResponsePage.responseField()
1094
- .type('{selectAll}');
1095
- if (toolbarOption == 'Background Color' || toolbarOption == 'Text Color') {
1096
- essayResponsePage.previewTabToolbarOption(toolbarOption)
1097
- .click();
1098
- essayResponsePage.steps.selectColorFromPopup('Strong Cyan');
1099
- } else {
1100
- essayResponsePage.steps.selectPreviewTabToolbarOption(toolbarOption);
1101
- };
1102
- essayResponsePage.responseField()
1103
- .then(($formattedText) => {
1104
- formattedText = $formattedText[0].innerHTML
1105
- essayResponsePage.steps.verifyUndoAndRedoFunctionality(toolbarOption, originalText, formattedText);
1106
- });
1107
- });
1108
- });
1109
- },
1110
-
1111
- verifySpecialOrMathCharactersPopup: (popupType) => {
1112
- it(`${specialOrMathCharacters[popupType].popupTitle} option should be displayed in the preview tab toolbar`, () => {
1113
- essayResponsePage.previewTabToolbarOption(`${specialOrMathCharacters[popupType].popupTitle}`)
1114
- .should('be.visible');
1115
- });
1116
-
1117
- it(`When user clicks on ${specialOrMathCharacters[popupType].popupTitle} option in the toolbar, then the ${specialOrMathCharacters[popupType].popupTitle} popup should appear`, () => {
1118
- essayResponsePage.previewTabToolbarOption(`${specialOrMathCharacters[popupType].popupTitle}`)
1119
- .click();
1120
- essayResponsePage.specialAndMathCharacterPopup()
1121
- .should('be.visible');
1122
- });
1123
-
1124
- it(`When the ${specialOrMathCharacters[popupType].popupTitle} popup has appeared, the first symbol should be in focus`, () => {
1125
- essayResponsePage.specialAndMathCharacterPopupSymbolsWrapper()
1126
- .eq(0)
1127
- .should('have.css', 'background-color', css.color.focusedSpecialCharacterSymbol);
1128
- });
1129
-
1130
- it(`CSS of ${specialOrMathCharacters[popupType].popupTitle} popup`, { tags: 'css' }, () => {
1131
- essayResponsePage.specialAndMathCharacterPopupTitle()
1132
- .verifyCSS(css.color.questionHeading, css.fontSize.heading, css.fontWeight.bold);
1133
- essayResponsePage.specialAndMathCharacterPopupSymbols()
1134
- .each(($element) => {
1135
- cy.wrap($element)
1136
- .find('.img_special_char')
1137
- .verifyPseudoClassBeforeProperty('color', css.color.specialCharacterSymbol);
1138
- });
1139
- });
1140
-
1141
- it(`Accessibility of ${specialOrMathCharacters[popupType].popupTitle} popup`, { tags: 'a11y' }, () => {
1142
- cy.checkAccessibility(essayResponsePage.specialAndMathCharacterPopup());
1143
- });
1144
-
1145
- it(`Title of the popup should be ${specialOrMathCharacters[popupType].popupTitle}`, () => { //TODO: Need to update this after DOM structure update.
1146
- essayResponsePage.specialAndMathCharacterPopupTitle()
1147
- .then(($title) => {
1148
- const fullTitle = $title.text()
1149
- const properTitle = fullTitle.replace('Close', '');
1150
- expect(specialOrMathCharacters[popupType].popupTitle).to.deep.eq(properTitle);
1151
- });
1152
- });
1153
-
1154
- it(`All the ${specialOrMathCharacters[popupType].popupTitle} symbols should be displayed in the popup`, () => {
1155
- let symbolsArray = Object.values(specialOrMathCharacters[popupType].characters);
1156
- essayResponsePage.specialAndMathCharacterPopupSymbolsWrapper()
1157
- .each(($element, count) => {
1158
- cy.wrap($element)
1159
- .should('be.visible')
1160
- .find('.img_special_char span')
1161
- .verifyInnerText(symbolsArray[count].symbol);
1162
- });
1163
- essayResponsePage.specialAndMathCharacterPopupSymbols()
1164
- .each(($element, count) => {
1165
- cy.wrap($element)
1166
- .should('have.attr', 'Title', symbolsArray[count].title);
1167
- });
1168
- });
1169
-
1170
- it('\'Close\' button should be displayed in the popup and when user clicks on it then the popup should close.', () => {
1171
- essayResponsePage.specialAndMathCharacterPopupCloseButton()
1172
- .should('be.visible')
1173
- .click();
1174
- essayResponsePage.specialAndMathCharacterPopup()
1175
- .should('not.be.visible');
1176
- });
1177
- },
1178
-
1179
- addSpecialOrMathCharactersToResponseField: (popupType) => {
1180
- it(`When user clicks on a symbol in the ${specialOrMathCharacters[popupType].popupTitle} popup, then that symbol should be inserted in the response field`, () => {
1181
- cy.log('Clicking on all symbols.');
1182
- let symbolsString = specialOrMathCharacters[popupType].characters.map((icon) => icon.symbol);
1183
- symbolsString = symbolsString.join('');
1184
- symbolsString = symbolsString.concat('\n');
1185
- essayResponsePage.specialAndMathCharacterPopupSymbols()
1186
- .each(($element) => {
1187
- cy.wrap($element)
1188
- .click();
1189
- });
1190
- essayResponsePage.specialAndMathCharacterPopupCloseButton()
1191
- .click();
1192
- essayResponsePage.responseField()
1193
- .verifyInnerText(symbolsString);
1194
- });
1195
-
1196
- it(`When the user selects the added ${specialOrMathCharacters[popupType].popupTitle} symbols and clicks on any formatting option, then the formatting should be applied to the displayed special characters`, () => {
1197
- let symbolsString = specialOrMathCharacters[popupType].characters.map((icon) => icon.symbol);
1198
- symbolsString = symbolsString.join('');
1199
- essayResponsePage.responseField()
1200
- .type('{selectAll}');
1201
- essayResponsePage.previewTabToolbarOption('Bold (Ctrl+B)')
1202
- .click();
1203
- essayResponsePage.responseField()
1204
- .verifyInnerHTML(`<p><strong>${symbolsString}</strong><br></p>`);
1205
- });
1206
-
1207
- it(`When user adds ${specialOrMathCharacters[popupType].popupTitle} symbols to the response field, then the word count should increase accordingly`, () => {
1208
- essayResponsePage.responseFieldWordCount()
1209
- .verifyInnerText('1/10000');
1210
- cy.log('Adding a space and inserting more symbols in the response field.');
1211
- essayResponsePage.responseField()
1212
- .click()
1213
- .type(' ');
1214
- essayResponsePage.previewTabToolbarOption(`${specialOrMathCharacters[popupType].popupTitle}`)
1215
- .click();
1216
- essayResponsePage.specialAndMathCharacterPopupSymbols()
1217
- .eq(0)
1218
- .click();
1219
- essayResponsePage.specialAndMathCharacterPopupCloseButton()
1220
- .click();
1221
- essayResponsePage.responseFieldWordCount()
1222
- .verifyInnerText('2/10000');
1223
- });
1224
-
1225
- it(`CSS of the added ${specialOrMathCharacters[popupType].popupTitle} symbols`, { tags: 'css' }, () => {
1226
- essayResponsePage.responseField()
1227
- .find('p')
1228
- .verifyCSS(css.color.text, css.fontSize.default, css.fontWeight.regular);
1229
- });
1230
-
1231
- it(`Accessibility of the added ${specialOrMathCharacters[popupType].popupTitle} symbols`, { tags: 'a11y' }, () => {
1232
- cy.checkAccessibility(essayResponsePage.responseField());
1233
- });
1234
- },
1235
-
1236
974
  verifyEquationEditorFlyoutSymbolCategoriesFunctionality: (categoryName, wordCount) => {
1237
975
  let symbols = Object.values(equationEditorCategoriesAndSymbols[categoryName].symbols)
1238
976
  let mappedArr = symbols.map(x => x.displayText)
@@ -1261,7 +999,6 @@ export const essayResponsePage = {
1261
999
  ...selectors,
1262
1000
  ...tableDialogBox,
1263
1001
  ...hyperlinkDialogBox,
1264
- ...specialAndMathCharacters,
1265
1002
  steps,
1266
1003
  tests
1267
1004
  }