itemengine-cypress-automation 1.0.567-IEI-7072-main-96abf72.0 → 1.0.567-ITEM-1376-2863b59.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (24) hide show
  1. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/partialEqualWeightsBasic.js +0 -181
  2. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/additionalSettingsBasic.js +2 -37
  3. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/additionalSettingsForAnswerInputFields.js +4 -72
  4. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/backgroundImageAndCanvasProperties.js +1 -19
  5. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/responseAnswersAndAcceptedStudentInput.js +1 -56
  6. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/setLimitSection.js +3 -57
  7. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/specialCharactersSection.js +18 -15
  8. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/studentViewSettings.js +1 -54
  9. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/styleAndLayoutCustomization.js +0 -12
  10. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/supportedFileTypes.js +2 -0
  11. package/cypress/e2e/ILC/dataApi/saveItems.js +1 -1
  12. package/cypress/e2e/ILC/dataApi/saveQuestions.js +7 -7
  13. package/cypress/e2e/ILC/dataApi/saveQuestionsMCQAlternateAnswers.js +6 -6
  14. package/cypress/pages/components/additionalSettingsPanel.js +0 -9
  15. package/cypress/pages/components/backgroundImageUploadComponent.js +1 -1
  16. package/cypress/pages/components/colorPopupComponent.js +1 -1
  17. package/cypress/pages/components/figCommonStyleAndLayoutComponent.js +10 -4
  18. package/cypress/pages/components/fillInTheGapsTextCommonComponent.js +1 -14
  19. package/cypress/pages/components/gradingViewEnumerationComponent.js +0 -5
  20. package/cypress/pages/components/imageCanvasComponent.js +3 -0
  21. package/cypress/pages/components/placeholderTextSectionComponent.js +0 -10
  22. package/cypress/pages/fillInTheGapsOverImageTextPage.js +1 -21
  23. package/package.json +1 -1
  24. package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/styleAndLayoutCustomizationAllViews.js +0 -156
@@ -142,185 +142,4 @@ describe('Create item page - Fill in the gaps over image with text: Partial equa
142
142
  fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(2, 20);
143
143
  });
144
144
  });
145
-
146
- describe('Question preview: Auto scored - Partial equal weights: Rounding', () => {
147
- abortEarlySetup();
148
- before(() => {
149
- fillInTheGapsOverImageTextPage.steps.navigateToCreateQuestion('fill in the gaps over image with text');
150
- cy.barsPreLoaderWait();
151
- fillInTheGapsOverImageTextPage.steps.uploadFile('highlightImage.jpg');
152
- fillInTheGapsOverImageTextPage.steps.verifyImageIsUploaded();
153
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(30);
154
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(40);
155
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(80);
156
- fillInTheGapsOverImageTextPage.steps.selectAutoScoredScoringSubtype('Partial equal weights');
157
- fillInTheGapsOverImageTextPage.steps.allotPoints(15);
158
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsSpecifyCorrectAnswerSection([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 1, responseText: 'Leaf' }, { responseIndex: 2, responseText: 'Stem' }]);
159
- fillInTheGapsOverImageTextPage.steps.selectAutoScoredScoringSubtype('Partial equal weights');
160
- });
161
-
162
- it('When the user sets \'Rounding\' to \'Round down if <=0.99\', attempts the question partially correct with an response such that points of the correctly attempted responses has decimal value greater than 0.5 and less than 0.99, then the points awarded should be rounded down to the nearest integer value', () => {
163
- fillInTheGapsOverImageTextPage.steps.expandRoundingDropdown();
164
- fillInTheGapsOverImageTextPage.steps.selectOptionFromRoundingDropdown('round down if <= 0.99');
165
- fillInTheGapsOverImageTextPage.steps.allotPoints(11);
166
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
167
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Flower' }]);
168
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(3, 11);
169
- });
170
-
171
- it('When the user has set \'Rounding\' to \'Round down if <=0.99\', attempts the question partially correct with an response such that points of the correctly attempted responses has decimal value equal to 0.99, then the points awarded should be rounded down to the nearest integer value', () => {
172
- fillInTheGapsOverImageTextPage.steps.switchToEditTab();
173
- fillInTheGapsOverImageTextPage.steps.allotPoints(8.97);
174
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
175
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Leaf' }]);
176
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(2, 8.97);
177
- });
178
-
179
- it('When the user sets \'Rounding\' to \'Round down if <=0.50\', attempts the question partially correct with an response such that points of the correctly attempted responses has decimal value less than 0.50, then the points awarded should be rounded down to the nearest integer value', () => {
180
- fillInTheGapsOverImageTextPage.steps.switchToEditTab();
181
- fillInTheGapsOverImageTextPage.steps.expandRoundingDropdown();
182
- fillInTheGapsOverImageTextPage.steps.selectOptionFromRoundingDropdown('round down if <= 0.50');
183
- fillInTheGapsOverImageTextPage.steps.allotPoints(10);
184
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
185
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 2, responseText: 'Stem' }]);
186
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(3, 10);
187
- });
188
-
189
- it('When the user has set \'Rounding\' to \'Round down if <=0.50\', attempts the question partially correct with an response such that points of the correctly attempted responses has decimal value equal to 0.50, then the points awarded should be rounded down to the nearest integer value', () => {
190
- cy.log('Points allocation based on the test case requirements.');
191
- fillInTheGapsOverImageTextPage.steps.switchToEditTab();
192
- fillInTheGapsOverImageTextPage.steps.allotPoints(4.5);
193
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
194
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 2, responseText: 'Stem' }]);
195
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(1, 4.5);
196
- });
197
-
198
- it('When the user sets \'Rounding\' to \'Round down if <=0.50, Round up if > 0.50\', attempts the question partially correct with an response such that points of the correctly attempted responses has decimal value less than 0.50, then the points awarded should be rounded down to the nearest integer value', () => {
199
- fillInTheGapsOverImageTextPage.steps.switchToEditTab();
200
- fillInTheGapsOverImageTextPage.steps.expandRoundingDropdown();
201
- fillInTheGapsOverImageTextPage.steps.selectOptionFromRoundingDropdown('round down if <= 0.50; Round up if > 0.50');
202
- fillInTheGapsOverImageTextPage.steps.allotPoints(10);
203
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
204
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 2, responseText: 'Stem' }]);
205
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(3, 10);
206
- });
207
-
208
- it('When the user has set \'Rounding\' to \'Round down if <=0.50, Round up if > 0.50\', attempts the question partially correct with an response such that points of the correctly attempted responses has decimal value equal to 0.50, then the points awarded should be rounded down to the nearest integer value', () => {
209
- cy.log('Points allocation based on the test case requirements.');
210
- fillInTheGapsOverImageTextPage.steps.switchToEditTab();
211
- fillInTheGapsOverImageTextPage.steps.allotPoints(4.5);
212
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
213
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Leaf' }]);
214
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(1, 4.5);
215
- });
216
-
217
- it('When the user has set \'Rounding\' to \'Round down if <=0.50, Round up if > 0.50\', attempts the question partially correct with an response such that points of the correctly attempted responses has decimal value greater than 0.50, then the points awarded should be rounded down to the nearest integer value', () => {
218
- cy.log('Points allocation based on the test case requirements.');
219
- fillInTheGapsOverImageTextPage.steps.switchToEditTab();
220
- fillInTheGapsOverImageTextPage.steps.allotPoints(11);
221
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
222
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Leaf' }]);
223
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(4, 11);
224
- });
225
-
226
- it('When \'Round negative score to zero\' is in checked state and the user attempts the question incorrectly, then the user should be awarded with 0 points', () => {
227
- cy.log('Pre-step: Setting penalty scoring to \'Penalty points for the entire question\', allotting penalty points')
228
- fillInTheGapsOverImageTextPage.steps.switchToEditTab();
229
- fillInTheGapsOverImageTextPage.steps.expandPenaltyScoringDropdown();
230
- fillInTheGapsOverImageTextPage.steps.selectOptionFromPenaltyScoringDropdown('Penalty points for the entire question');
231
- fillInTheGapsOverImageTextPage.steps.allotPenaltyPoints(4);
232
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
233
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Roots' }]);
234
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(0, 11);
235
- });
236
-
237
- it('When the user unchecks \'Round negative score to zero\' checkbox and the user attempts the question incorrectly, then the user should be awarded with negative points', () => {
238
- fillInTheGapsOverImageTextPage.steps.switchToEditTab();
239
- fillInTheGapsOverImageTextPage.steps.uncheckRoundNegativeScoresToZeroCheckbox();
240
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
241
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Roots' }]);
242
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(-4, 11);
243
- });
244
- });
245
-
246
- describe('Question preview: Auto scored - Partial equal weights: Penalty scoring with \'Round negative score to zero\' unchecked', () => {
247
- abortEarlySetup();
248
- before(() => {
249
- fillInTheGapsOverImageTextPage.steps.navigateToCreateQuestion('fill in the gaps over image with text');
250
- cy.barsPreLoaderWait();
251
- fillInTheGapsOverImageTextPage.steps.uploadFile('highlightImage.jpg');
252
- fillInTheGapsOverImageTextPage.steps.verifyImageIsUploaded();
253
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(30);
254
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(40);
255
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(80);
256
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsSpecifyCorrectAnswerSection([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 1, responseText: 'Leaf' }, { responseIndex: 2, responseText: 'Stem' }]);
257
- fillInTheGapsOverImageTextPage.steps.selectAutoScoredScoringSubtype('Partial equal weights');
258
- fillInTheGapsOverImageTextPage.steps.allotPoints(27);
259
- });
260
-
261
- //Penalty points for the entire question
262
- it('When the user sets penalty scoring to \'Penalty points for the entire question\', allots penalty points and attempts the question incorrectly, then the user should be awarded with negative points', () => {
263
- fillInTheGapsOverImageTextPage.steps.expandPenaltyScoringDropdown();
264
- fillInTheGapsOverImageTextPage.steps.selectOptionFromPenaltyScoringDropdown('Penalty points for the entire question');
265
- fillInTheGapsOverImageTextPage.steps.uncheckRoundNegativeScoresToZeroCheckbox();
266
- fillInTheGapsOverImageTextPage.steps.allotPenaltyPoints(2);
267
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
268
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Roots' }]);
269
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(-2, 27);
270
- });
271
-
272
- it('When the user attempts the question correctly along with an incorrect response, then penalty points should get deducted from the awarded points', () => {
273
- fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
274
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Roots' }]);
275
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Leaf' }]);
276
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(7, 27);
277
- });
278
-
279
- it('When the user attempts the question correctly along with multiple incorrect responses, then penalty points should get deducted from the awarded points only once, the deducted penalty points should not increase as per number of attempted incorrect responses', () => {
280
- fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
281
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Leaf' }]);
282
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'leaves' }]);
283
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 2, responseText: 'apple' }]);
284
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(7, 27);
285
- });
286
-
287
- it('When the user has defined penalty points and also sets minimum scoring to \'Award minimum score only if attempted\' and allots minimum points, then on attempting the question incorrectly, minimum points should be awarded', () => {
288
- fillInTheGapsOverImageTextPage.steps.switchToEditTab();
289
- fillInTheGapsOverImageTextPage.steps.expandMinimumScoringDropdown();
290
- fillInTheGapsOverImageTextPage.steps.selectOptionFromMinimumScoringDropdown('Award minimum score only if attempted');
291
- fillInTheGapsOverImageTextPage.steps.allotMinimumPoints(3);
292
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
293
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'leaves' }]);
294
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(3, 27);
295
- cy.log('Post step: Switching to edit tab and resetting minimum scoring to "No minimum score"')
296
- fillInTheGapsOverImageTextPage.steps.switchToEditTab();
297
- fillInTheGapsOverImageTextPage.steps.expandMinimumScoringDropdown();
298
- fillInTheGapsOverImageTextPage.steps.selectOptionFromMinimumScoringDropdown('No minimum score');
299
- });
300
-
301
- //Penalty points for each incorrect cell - Specify total penalty points
302
- it('When the user sets penalty scoring to \'Penalty points for each incorrect text container\', and \'Specify total penalty points\' radio button in checked state, allots total penalty points and attempts the question incorrectly, then the user should be awarded with negative points of incorrect response', () => {
303
- fillInTheGapsOverImageTextPage.steps.expandPenaltyScoringDropdown();
304
- fillInTheGapsOverImageTextPage.steps.selectOptionFromPenaltyScoringDropdown('Penalty points for each incorrect text container');
305
- fillInTheGapsOverImageTextPage.steps.allotTotalPenaltyPoints(4);
306
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
307
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'leaves' }]);
308
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(-4, 27);
309
- });
310
-
311
- it('When the user attempts the question correctly along with an incorrect response, then penalty points should get deducted from the awarded points', () => {
312
- fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
313
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'leaves' }]);
314
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Leaf' }]);
315
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(6.3333, 27);
316
- });
317
-
318
- it('When the user attempts the question correctly along with multiple incorrect responses, then penalty points for each incorrect response should get deducted from the awarded points', () => {
319
- fillInTheGapsOverImageTextPage.steps.resetQuestionPreview();
320
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Leaf' }]);
321
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'leaves' }]);
322
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 2, responseText: 'apple' }]);
323
- fillInTheGapsOverImageTextPage.steps.verifyPreviewScore(6.3333, 27);
324
- });
325
- });
326
145
  });
@@ -1,8 +1,7 @@
1
- import { fillInTheGapsOverImageTextPage, itemPreviewPage } from "../../../pages";
1
+ import { fillInTheGapsOverImageTextPage } from "../../../pages";
2
2
  import abortEarlySetup from "../../../support/helpers/abortEarly";
3
3
  import utilities from "../../../support/helpers/utilities";
4
4
  const fontSizes = { 'Tiny': '12px', 'Small': '14px', 'Default': '16px', 'Normal': '18px', 'Big': '22px', 'Huge': '26px' };
5
- let itemReferenceID = "";
6
5
 
7
6
  describe('Fill In the gaps over image with text - Additional settings', () => {
8
7
  before(() => {
@@ -16,15 +15,6 @@ describe('Fill In the gaps over image with text - Additional settings', () => {
16
15
  });
17
16
 
18
17
  fillInTheGapsOverImageTextPage.tests.verifyAdditionalSettingsAccordionProperties();
19
-
20
- it('When the user expands the Additional settings accordion make some changes and collapse and re-expand it, the changes should persist', () => {
21
- fillInTheGapsOverImageTextPage.steps.checkCustomizePlaceholderTextCheckbox();
22
- fillInTheGapsOverImageTextPage.steps.selectEnumerationType('without enumeration');
23
- fillInTheGapsOverImageTextPage.steps.collapsedAdditionalSettings();
24
- fillInTheGapsOverImageTextPage.steps.expandAdditionalSettings();
25
- fillInTheGapsOverImageTextPage.steps.verifyWithoutEnumerationRadioButtonCheckedState();
26
- fillInTheGapsOverImageTextPage.steps.verifyCustomizePlaceholderTextCheckboxChecked();
27
- });
28
18
  });
29
19
 
30
20
  describe('Additional settings: Font size - Contents in edit tab', () => {
@@ -83,7 +73,7 @@ describe('Fill In the gaps over image with text - Additional settings', () => {
83
73
  });
84
74
  });
85
75
  });
86
-
76
+
87
77
  describe('Additional settings: Accessibility section', () => {
88
78
  abortEarlySetup();
89
79
  before(() => {
@@ -105,29 +95,4 @@ describe('Fill In the gaps over image with text - Additional settings', () => {
105
95
 
106
96
  fillInTheGapsOverImageTextPage.tests.verifyDetailsSection();
107
97
  });
108
-
109
- describe('Additional settings: Details section Grading view', () => {
110
- abortEarlySetup();
111
- before(() => {
112
- fillInTheGapsOverImageTextPage.steps.navigateToCreateQuestion('fill in the gaps over image with text');
113
- cy.barsPreLoaderWait();
114
- fillInTheGapsOverImageTextPage.steps.addTextInQuestionInstructionsInputField('Navigating to fill in the gaps over image with text');
115
- fillInTheGapsOverImageTextPage.steps.expandAdditionalSettings();
116
- fillInTheGapsOverImageTextPage.steps.enterTextInTeacherGuidelinesInputField('Teacher scoring guidelines');
117
- fillInTheGapsOverImageTextPage.steps.enterTextInSampleAnswerInputField('Sample answer');
118
- fillInTheGapsOverImageTextPage.steps.enterTextInAcknowledgementsInputField('Acknowledgements');
119
- });
120
-
121
- it('When the user navigates to the grading view, the Details section information should be displayed correctly', () => {
122
- fillInTheGapsOverImageTextPage.steps.clickOnSaveQuestionButton();
123
- fillInTheGapsOverImageTextPage.steps.clickOnConfirmButton();
124
- utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
125
- cy.wrap(itemPreviewPage.steps.getItemReferenceID()).then((referenceId) => {
126
- itemReferenceID = referenceId;
127
- cy.visit(`/item-engine/demo/render-item/grading-view/${utilities.base64Encoding(itemReferenceID)}`);
128
- fillInTheGapsOverImageTextPage.steps.verifyTeacherGuidelinesLabelInGradingView('Teacher Guidelines');
129
- fillInTheGapsOverImageTextPage.steps.verifyTeacherGuidelinesDescriptionInGradingView('Teacher scoring guidelines');
130
- });
131
- });
132
- });
133
98
  });
@@ -1,4 +1,4 @@
1
- import { fillInTheGapsOverImageTextPage, itemPreviewPage, studentViewPage, dialogBoxBase } from "../../../pages";
1
+ import { fillInTheGapsOverImageTextPage } from "../../../pages";
2
2
  import abortEarlySetup from "../../../support/helpers/abortEarly";
3
3
  import utilities from "../../../support/helpers/utilities";
4
4
  const enumerationOptions = {
@@ -9,9 +9,6 @@ const enumerationOptions = {
9
9
  'Roman numeral (lowercase)': ['i', 'ii'],
10
10
  };
11
11
  const css = Cypress.env('css');
12
- let correctAnswerViews = ['Question preview', 'Item preview', 'Grading view'];
13
- const views = utilities.getViews(correctAnswerViews);
14
- let itemReferenceID = "";
15
12
 
16
13
  describe('Fill In the gaps over image with text - Additional settings : Placeholder text, Grading view, ARIA label for text containers', () => {
17
14
  before(() => {
@@ -113,7 +110,7 @@ describe('Fill In the gaps over image with text - Additional settings : Placehol
113
110
  fillInTheGapsOverImageTextPage.steps.insertResponseArea(80);
114
111
  fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsSpecifyCorrectAnswerSection([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 1, responseText: 'Leaf' }]);
115
112
  fillInTheGapsOverImageTextPage.steps.allotPoints(20);
116
- //fillInTheGapsOverImageTextPage.steps.checkAllowStudentToCheckAnswerCheckbox();
113
+ //fillInTheGapsOverImageTextPage.steps.checkAllowStudentToCheckAnswerCheckbox();
117
114
  fillInTheGapsOverImageTextPage.steps.expandAdditionalSettings();
118
115
  });
119
116
 
@@ -157,11 +154,12 @@ describe('Fill In the gaps over image with text - Additional settings : Placehol
157
154
  'font-weight': css.fontWeight.regular
158
155
  });
159
156
  utilities.verifyCSS(fillInTheGapsOverImageTextPage.correctAnswerResponseWrapperWithoutEnumeration().parents('.response-input-field'), {
160
- 'border': `1px solid ${css.color.primaryBtnBg}`
157
+ 'border': `1px solid ${css.color.correctAnswer}`
161
158
  });
162
159
  })
163
160
  });
164
161
 
162
+
165
163
  it('Accessibility of correct answer section', { tags: 'a11y' }, () => {
166
164
  cy.checkAccessibility(fillInTheGapsOverImageTextPage.correctAnswerSectionWithoutEnumerationWrapper().parents('[class*="question-preview-wrapper"]'));
167
165
  });
@@ -250,70 +248,4 @@ describe('Fill In the gaps over image with text - Additional settings : Placehol
250
248
  fillInTheGapsOverImageTextPage.steps.verifyAnswerInputFieldAriaLabelPreviewTab(1, 'Add answer for response 2');
251
249
  });
252
250
  });
253
-
254
- views.forEach((view) => {
255
- describe(`${view}: Additional Settings: Grading view style with numeration`, () => {
256
- abortEarlySetup();
257
- before(() => {
258
- switch (view) {
259
- case 'Question preview':
260
- fillInTheGapsOverImageTextPage.steps.navigateToCreateQuestion('fill in the gaps over image with text');
261
- cy.barsPreLoaderWait();
262
- fillInTheGapsOverImageTextPage.steps.uploadFile('highlightImage.jpg');
263
- fillInTheGapsOverImageTextPage.steps.verifyImageIsUploaded();
264
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(2);
265
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(30);
266
- fillInTheGapsOverImageTextPage.steps.allotPoints(20);
267
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsSpecifyCorrectAnswerSection([{ responseIndex: 0, responseText: 'Flower' }, { responseIndex: 1, responseText: 'Leaf' }]);
268
- fillInTheGapsOverImageTextPage.steps.expandAdditionalSettings();
269
- fillInTheGapsOverImageTextPage.steps.selectIdentifierToggleButton('Alphabet (uppercase)');
270
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
271
- fillInTheGapsOverImageTextPage.steps.switchToGradingView();
272
- break;
273
- case 'Item preview':
274
- cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
275
- itemPreviewPage.steps.switchToPreviewTab();
276
- fillInTheGapsOverImageTextPage.steps.switchToGradingView();
277
- break;
278
- case 'Grading view':
279
- cy.visit(`/item-engine/demo/render-item/grading-view/${utilities.base64Encoding(itemReferenceID)}`);
280
- break;
281
- };
282
- });
283
-
284
- beforeEach(() => {
285
- switch (view) {
286
- case 'Question preview':
287
- break;
288
- case 'Item preview':
289
- fillInTheGapsOverImageTextPage.steps.switchToGradingView();
290
- break;
291
- case 'Grading view':
292
- cy.visit(`/item-engine/demo/render-item/grading-view/${utilities.base64Encoding(itemReferenceID)}`);
293
- break;
294
- }
295
- });
296
-
297
- if (view === 'Question preview') {
298
- after(() => {
299
- fillInTheGapsOverImageTextPage.steps.clickOnSaveQuestionButton();
300
- utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
301
- itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
302
- });
303
- };
304
-
305
- if (view === 'Grading view') {
306
- it(`When the user selected with numeration radio button, then the numeration should be displayed in the answer input fields in the ${view}`, () => {
307
- fillInTheGapsOverImageTextPage.steps.verifyAnswerInputFieldEnumeration(['A', 'B']);
308
- });
309
- }
310
-
311
- if (view === 'Item preview' || view === 'Question preview') {
312
- it(`When the user selected with numeration radio button, then the numeration should be displayed in the answer input fields as well as correct answer options in the correct answer section in the ${view}`, () => {
313
- fillInTheGapsOverImageTextPage.steps.verifyAnswerInputFieldEnumeration(['A', 'B']);
314
- fillInTheGapsOverImageTextPage.steps.verifyCorrectAnswerResponsesEnumeration(['A', 'B']);
315
- });
316
- }
317
- });
318
- });
319
251
  });
@@ -72,12 +72,6 @@ describe('Create item page - Fill in the gaps: Question instructions, Options se
72
72
 
73
73
  fillInTheGapsOverImageTextPage.tests.verifyInsertTextTooltip();
74
74
 
75
- it('When user insert text container, then it should be displayed', () => {
76
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(50);
77
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(80);
78
- fillInTheGapsOverImageTextPage.steps.undoAction();
79
- });
80
-
81
75
  fillInTheGapsOverImageTextPage.tests.verifyUndoRedoClearAllButtons();
82
76
  });
83
77
 
@@ -223,7 +217,7 @@ describe('Create item page - Fill in the gaps: Question instructions, Options se
223
217
  'border': `1px solid ${css.color.activeComponentBorder}`
224
218
  });
225
219
  utilities.verifyCSS(utilities.getNthElement(fillInTheGapsOverImageTextPage.responseArea(), 0), {
226
- 'border': `1px solid ${css.color.activeComponentBorder}`
220
+ 'border': `1px dashed ${css.color.activeComponentBorder}`
227
221
  });
228
222
  });
229
223
 
@@ -416,16 +410,4 @@ describe('Create item page - Fill in the gaps: Question instructions, Options se
416
410
 
417
411
  fillInTheGapsOverImageTextPage.tests.verifyImageNotExistPreviewTab();
418
412
  });
419
-
420
- describe('Print layout settings accordion', () => {
421
- abortEarlySetup();
422
- before(() => {
423
- fillInTheGapsOverImageTextPage.steps.navigateToCreateQuestion('fill in the gaps over image with text');
424
- cy.barsPreLoaderWait();
425
- });
426
-
427
- fillInTheGapsOverImageTextPage.tests.verifyPrintLayoutSettingsAccordionProperties();
428
-
429
- fillInTheGapsOverImageTextPage.tests.verifyPrintLayoutSettingsAccordionContents();
430
- });
431
413
  });
@@ -1,10 +1,7 @@
1
- import { fillInTheGapsOverImageTextPage, itemPreviewPage } from "../../../pages";
1
+ import { fillInTheGapsOverImageTextPage } from "../../../pages";
2
2
  import abortEarlySetup from "../../../support/helpers/abortEarly";
3
3
  import utilities from "../../../support/helpers/utilities";
4
4
  const css = Cypress.env('css');
5
- let correctAnswerViews = ['Question preview', 'Item preview', 'Student view'];
6
- const views = utilities.getViews(correctAnswerViews);
7
- let itemReferenceID = "";
8
5
 
9
6
  describe('Create Item page - Fill in the gaps over image - text: ', () => {
10
7
  before(() => {
@@ -70,56 +67,4 @@ describe('Create Item page - Fill in the gaps over image - text: ', () => {
70
67
  fillInTheGapsOverImageTextPage.steps.verifyTextInAnswerInputFieldsPreviewTab([{ responseIndex: 1, responseText: 'Flower232&*' }]);
71
68
  });
72
69
  });
73
-
74
- views.forEach((view) => {
75
- describe(`${view}: Accepted student input`, () => {
76
- abortEarlySetup();
77
- before(() => {
78
- switch (view) {
79
- case 'Question preview':
80
- fillInTheGapsOverImageTextPage.steps.navigateToCreateQuestion('fill in the gaps over image with text');
81
- cy.barsPreLoaderWait();
82
- fillInTheGapsOverImageTextPage.steps.uploadFile('highlightImage.jpg');
83
- fillInTheGapsOverImageTextPage.steps.verifyImageIsUploaded();
84
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(80);
85
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(50);
86
- fillInTheGapsOverImageTextPage.steps.selectAcceptedStudentInputType(0, 'Number');
87
- fillInTheGapsOverImageTextPage.steps.selectAcceptedStudentInputType(1, 'Integer');
88
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
89
- break;
90
- case 'Item preview':
91
- cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
92
- itemPreviewPage.steps.switchToPreviewTab();
93
- break;
94
- case 'Student view':
95
- cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
96
- break;
97
- };
98
- });
99
- beforeEach(() => {
100
- switch (view) {
101
- case 'Question preview':
102
- break;
103
- case 'Item preview':
104
- break;
105
- case 'Student view':
106
- cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
107
- break;
108
- }
109
- });
110
- if (view === 'Question preview') {
111
- after(() => {
112
- fillInTheGapsOverImageTextPage.steps.clickOnSaveQuestionButton();
113
- fillInTheGapsOverImageTextPage.steps.clickOnConfirmButton();
114
- utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
115
- itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
116
- });
117
- };
118
-
119
- it(`When the user try to insert text in the response field where the accepted student input type set to number , then it should show a warning message in ${view}`, () => {
120
- fillInTheGapsOverImageTextPage.steps.enterTextInAnswerInputFieldsPreviewTab([{ responseIndex: 0, responseText: 'Flower' }]);
121
- utilities.verifyInnerText(fillInTheGapsOverImageTextPage.limitReachedWarningMessageContainer(), 'Only number can be typed.');
122
- });
123
- });
124
- });
125
70
  });
@@ -1,10 +1,6 @@
1
- import { fillInTheGapsOverImageTextPage, itemPreviewPage } from "../../../pages";
1
+ import { fillInTheGapsOverImageTextPage } from "../../../pages";
2
2
  import abortEarlySetup from "../../../support/helpers/abortEarly";
3
- import utilities from "../../../support/helpers/utilities";
4
3
  const css = Cypress.env('css');
5
- let correctAnswerViews = ['Question preview', 'Item preview', 'Student view'];
6
- const views = utilities.getViews(correctAnswerViews);
7
- let itemReferenceID = "";
8
4
 
9
5
  describe('Create item page - Fill in the gaps over image with text: Set limit section', () => {
10
6
  before(() => {
@@ -53,7 +49,7 @@ describe('Create item page - Fill in the gaps over image with text: Set limit se
53
49
 
54
50
  //Uncomment below code once https://redmine.zeuslearning.com/issues/566930 is resolved
55
51
  // fillInTheGapsOverImageTextPage.tests.verifyMaximumCharacterLimitWarningConditionsSpecifyCorrectAnswerSection();
56
-
52
+
57
53
  //Uncomment below code once https://redmine.zeuslearning.com/issues/566930 is resolved
58
54
  // fillInTheGapsOverImageTextPage.tests.verifyMinimumCharacterLimitWarningConditionsSpecifyCorrectAnswerSection();
59
55
  });
@@ -83,61 +79,11 @@ describe('Create item page - Fill in the gaps over image with text: Set limit se
83
79
  it('User should able to enter characters in the response field', () => {
84
80
  fillInTheGapsOverImageTextPage.steps.addTextInAnswerInputFieldsPreviewTab(0, 'Flower');
85
81
  });
86
-
82
+
87
83
  //Uncomment below code oncee https://redmine.zeuslearning.com/issues/566930 is resolved
88
84
  // fillInTheGapsOverImageTextPage.tests.verifyMaximumCharacterLimitWarningConditionsPreviewTab();
89
85
 
90
86
  //Uncomment below code once https://redmine.zeuslearning.com/issues/566930 is resolved
91
87
  // fillInTheGapsOverImageTextPage.tests.verifyMinimumCharacterLimitWarningConditionsPreviewTab();
92
88
  });
93
-
94
- views.forEach((view) => {
95
- describe(`${view}: Student view settings`, () => {
96
- abortEarlySetup();
97
- before(() => {
98
- switch (view) {
99
- case 'Question preview':
100
- fillInTheGapsOverImageTextPage.steps.navigateToCreateQuestion('fill in the gaps over image with text');
101
- cy.barsPreLoaderWait();
102
- fillInTheGapsOverImageTextPage.steps.uploadFile('highlightImage.jpg');
103
- fillInTheGapsOverImageTextPage.steps.verifyImageIsUploaded();
104
- fillInTheGapsOverImageTextPage.steps.insertResponseArea(80);
105
- fillInTheGapsOverImageTextPage.steps.setMaximumLimit(30)
106
- fillInTheGapsOverImageTextPage.steps.switchToPreviewTab();
107
- break;
108
- case 'Item preview':
109
- cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
110
- itemPreviewPage.steps.switchToPreviewTab();
111
- break;
112
- case 'Student view':
113
- cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
114
- break;
115
- };
116
- });
117
-
118
- beforeEach(() => {
119
- switch (view) {
120
- case 'Question preview':
121
- break;
122
- case 'Item preview':
123
- break;
124
- case 'Student view':
125
- cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
126
- break;
127
- }
128
- });
129
- if (view === 'Question preview') {
130
- after(() => {
131
- fillInTheGapsOverImageTextPage.steps.clickOnSaveQuestionButton();
132
- fillInTheGapsOverImageTextPage.steps.clickOnConfirmButton();
133
- utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
134
- itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
135
- });
136
- };
137
-
138
- it(`When the user sets the maximum character limit for the response field, it should be reflected in the ${view}`, () => {
139
- fillInTheGapsOverImageTextPage.steps.verifyMaximumCharacterLimitInPreviewTab(0, 30);
140
- });
141
- });
142
- });
143
89
  });
@@ -82,21 +82,21 @@ describe('Create item page - Fill in the gaps over image - text - Special charac
82
82
 
83
83
  it('CSS of special characters section', { tags: 'css' }, () => {
84
84
  utilities.verifyCSS(fillInTheGapsOverImageTextPage.specialCharactersLabel(), {
85
- 'color': css.color.codeBlockText,
85
+ 'color': css.color.labels,
86
86
  'font-size': css.fontSize.default,
87
87
  'font-weight': css.fontWeight.semibold
88
88
  });
89
89
  //checked state of enable special characters checkbox
90
- utilities.verifyCSS(fillInTheGapsOverImageTextPage.enableSpecialCharactersCheckboxWrapper().find('svg g g').eq(0), {
90
+ utilities.verifyCSS(fillInTheGapsOverImageTextPage.enableSpecialCharactersCheckbox().find('rect').eq(1), {
91
91
  'fill': css.color.activeButtons
92
92
  });
93
93
  utilities.verifyCSS(fillInTheGapsOverImageTextPage.groupByLanguageLabel(), {
94
- 'color': css.color.labelText,
94
+ 'color': css.color.labels,
95
95
  'font-size': css.fontSize.normal,
96
96
  'font-weight': css.fontWeight.regular
97
97
  });
98
98
  //selected state of radio button
99
- utilities.verifyCSS(fillInTheGapsOverImageTextPage.showOnlyCustomSpecialCharactersRadioButtonWrapper().find('svg'), {
99
+ utilities.verifyCSS(fillInTheGapsOverImageTextPage.showOnlyCustomSpecialCharactersRadioButton().find('svg'), {
100
100
  'fill': css.color.activeButtons
101
101
  });
102
102
  utilities.verifyCSS(fillInTheGapsOverImageTextPage.customSpecialCharactersLabel(), {
@@ -109,7 +109,7 @@ describe('Create item page - Fill in the gaps over image - text - Special charac
109
109
  'font-size': css.fontSize.default,
110
110
  'font-weight': css.fontWeight.regular
111
111
  });
112
- utilities.verifyCSS(fillInTheGapsOverImageTextPage.customSpecialCharactersInputFieldWrapper().find('fieldset'), {
112
+ utilities.verifyCSS(fillInTheGapsOverImageTextPage.customSpecialCharactersInputField().find('fieldset'), {
113
113
  'border': `1px solid ${css.color.figDefaultComponentBorder}`
114
114
  });
115
115
  utilities.verifyCSS(fillInTheGapsOverImageTextPage.customizeSpecialCharactersPreviewButton(), {
@@ -150,10 +150,13 @@ describe('Create item page - Fill in the gaps over image - text - Special charac
150
150
  });
151
151
  //Category tiles in de-selected state
152
152
  utilities.verifyCSS(fillInTheGapsOverImageTextPage.specialCharacterTileIcon().eq(0).find('svg'), {
153
- 'fill': css.color.optionColor
153
+ 'fill': css.color.secondaryBtn
154
+ });
155
+ utilities.verifyCSS(fillInTheGapsOverImageTextPage.specialCharacterTileSectionCategoriesDragIcon().eq(0).parent(), {
156
+ 'fill': css.color.secondaryBtn
154
157
  });
155
- utilities.verifyCSS(fillInTheGapsOverImageTextPage.specialCharacterTileSectionCategoriesDragIcon().eq(0).find('svg'), {
156
- 'fill': css.color.optionColor
158
+ utilities.verifyCSS(fillInTheGapsOverImageTextPage.specialCharacterTileSectionCategoriesDragIcon().eq(0).parent(), {
159
+ 'fill': css.color.defaultBackground
157
160
  });
158
161
  utilities.verifyCSS(fillInTheGapsOverImageTextPage.specialCharacterTileCategoryName().eq(0), {
159
162
  'color': css.color.secondaryBtn,
@@ -169,18 +172,18 @@ describe('Create item page - Fill in the gaps over image - text - Special charac
169
172
  utilities.verifyCSS(dialogBoxBase.dialogBoxTitle(), {
170
173
  'color': css.color.flyoutTitle,
171
174
  'font-size': css.fontSize.heading,
172
- 'font-weight': css.fontWeight.semibold
175
+ 'font-weight': css.fontWeight.bold
173
176
  });
174
177
  utilities.verifyCSS(fillInTheGapsOverImageTextPage.specialCharactersPreviewPopupCategoryLabel().eq(0), {
175
178
  'color': css.color.accordionLabel,
176
- 'font-size': css.fontSize.default,
177
- 'font-weight': css.fontWeight.bold
179
+ 'font-size': css.fontSize.normal,
180
+ 'font-weight': css.fontWeight.semibold
178
181
  });
179
182
  utilities.verifyCSS(fillInTheGapsOverImageTextPage.specialCharactersPreviewPopupCategoryAccordionExpandIcon().last().find('svg'), {
180
183
  'fill': css.color.activeButtons
181
184
  });
182
- utilities.verifyCSS(fillInTheGapsOverImageTextPage.specialCharactersPreviewPopupSymbol().eq(0).find('svg path'), {
183
- 'fill': css.color.activeButtons
185
+ utilities.verifyCSS(fillInTheGapsOverImageTextPage.specialCharactersPreviewPopupSymbol().eq(0).find('svg'), {
186
+ 'fill': css.color.defaultBackground
184
187
  });
185
188
  });
186
189
 
@@ -188,10 +191,10 @@ describe('Create item page - Fill in the gaps over image - text - Special charac
188
191
  cy.checkAccessibility(dialogBoxBase.dialogBox());
189
192
  cy.log('Closing preview popup');
190
193
  dialogBoxBase.steps.closeWarningPopup();
191
- cy.checkAccessibility(fillInTheGapsOverImageTextPage.specialCharactersLabel());
194
+ cy.checkAccessibility(fillInTheGapsOverImageTextPage.specialCharactersLabel().parent());
192
195
  cy.log('Selecting show only custom special characters radio button');
193
196
  fillInTheGapsOverImageTextPage.steps.selectShowOnlyCustomSpecialCharactersRadioButton();
194
- cy.checkAccessibility(fillInTheGapsOverImageTextPage.customSpecialCharactersInputFieldWrapper());
197
+ cy.checkAccessibility(fillInTheGapsOverImageTextPage.specialCharactersLabel().parent());
195
198
  });
196
199
  });
197
200