itemengine-cypress-automation 1.0.253-TEMSmokeTestUpdates-82559a5.0 → 1.0.253
Sign up to get free protection for your applications and to get access to all the features.
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddFeatureRadioButton.js +231 -0
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddTranscriptRadioButton .js +213 -0
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAudioPlayerStyle.js +148 -0
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabStudentViewSettings.js +249 -0
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerHeaderSectionAndButtons.js +164 -0
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTab.js +444 -0
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabSupportedFileTypes.js +102 -0
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabTranscript.js +134 -0
- package/cypress/e2e/ILC/CkEditorEquationEditor/equationEditorBasicFile.js +46 -0
- package/cypress/e2e/ILC/CkEditorInsertTable/insertTableEditorBasicFile.js +98 -0
- package/cypress/e2e/ILC/CkEditorInsertTable/tableDimension&FooterProperties.js +147 -0
- package/cypress/e2e/ILC/CkEditorInsertTable/tableHeaders.js +127 -0
- package/cypress/e2e/ILC/CkEditorInsertTable/tableRowAndColumn.js +71 -0
- package/cypress/e2e/ILC/CkEditorInsertTable/tableStyle.js +154 -0
- package/cypress/e2e/ILC/Compass/compassPreviewContent.smoke.js +1 -0
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +41 -17
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/allOrNothingBasicForGroupedOptionsLayout.js +24 -12
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +47 -20
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +43 -16
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/manuallyAndNonScoredScoring.js +5 -5
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionAlternativePointsGreaterThanCorrectPoints.js +52 -21
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionBasic.js +23 -11
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionCorrectPointsEqualToAlternativePoints.js +55 -21
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionCorrectPointsGreaterThanAlternativePoints.js +53 -21
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneAlternativePointsGreaterThanCorrectPoints.js +48 -19
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneBasic.js +23 -11
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneCorrectPointsEqualToAlternativePoints.js +47 -17
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneCorrectPointsGreaterThanAlternativePoints.js +50 -19
- package/cypress/e2e/ILC/DrawingResponse/drawingResponseCustomizeAdditionalOptions.js +0 -2
- package/cypress/e2e/ILC/DrawingResponse/drawingResponseGradingViewAndCorrectAnswerViewContents.smoke.js +3 -0
- package/cypress/e2e/ILC/DrawingResponse/drawingResponsePreviewTabContents.smoke.js +0 -3
- package/cypress/e2e/ILC/EssayResponse/createCustomCategory.smoke.js +2 -1
- package/cypress/e2e/ILC/EssayResponse/equationEditor.smoke.js +4 -4
- package/cypress/e2e/ILC/EssayResponse/essayResponseCustomizeFormattingOptions4.js +261 -0
- package/cypress/e2e/ILC/EssayResponse/gradingViewAndCorrectAnswerViewContents.smoke.js +4 -2
- package/cypress/e2e/ILC/EssayResponseBasic/gradingViewAndCorrectAnswerViewContents.smoke.js +4 -2
- package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/responseLevelAlternateAnswerBasicScoring.js +1 -1
- package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/dropzoneAlternateAnswerPopup.js +2 -2
- package/cypress/e2e/ILC/FillInTheGapsDropdownNew/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +5 -3
- package/cypress/e2e/ILC/FillInTheGapsDropdownNew/Scoring/partialDifferentWeightsWithCorrectPointsEqualToAlternativePoints.js +3 -2
- package/cypress/e2e/ILC/FillInTheGapsDropdownNew/Scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +3 -2
- package/cypress/e2e/ILC/FillInTheGapsDropdownNew/dropdownAlternateAnswerPopup.js +1 -0
- package/cypress/e2e/ILC/GridFill/customizeLayoutFillColor.js +3 -0
- package/cypress/e2e/ILC/GridFill/customizeLayoutFillImageBackgroundImage.js +15 -0
- package/cypress/e2e/ILC/GridFill/customizeLayoutSectionShadeCellsGridBorders.js +10 -0
- package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +2 -1
- package/cypress/e2e/ILC/GridFill/specifyCorrectAnswerSection.js +3 -2
- package/cypress/e2e/ILC/NumberLine/toolsAndControls.js +56 -8
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +1 -1
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -1
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +1 -1
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsScoringBasic.js +4 -4
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -1
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +1 -1
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +3 -3
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasic.js +2 -2
- package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViews.smoke.js +16 -16
- package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +4 -5
- package/cypress/e2e/ILC/TextEntryMath/customSettings.js +8 -22
- package/cypress/e2e/ILC/TextEntryMathWithImage/allOrNothingScoringForAllViews.smoke.js +19 -19
- package/cypress/e2e/ILC/TextEntryMathWithImage/backgroundImageAndCanvasProperties.js +2 -2
- package/cypress/e2e/ILC/TextEntryMathWithImage/previewTabContentsForAllViews.smoke.js +5 -5
- package/cypress/e2e/ILC/TextSelection/previewContentsForAllViews.smoke.js +1 -4
- package/cypress/e2e/ILC/ToolAudioPlayerNew/studentViewSettings.js +8 -2
- package/cypress/fixtures/theme/ilc.json +9 -5
- package/cypress/pages/components/ckEditorAudioPlayerComponent.js +615 -0
- package/cypress/pages/components/ckEditorEquationEditorComponent.js +41 -0
- package/cypress/pages/components/ckEditorInsertTableComponent.js +741 -0
- package/cypress/pages/components/essayResponseCommonComponents.js +145 -7
- package/cypress/pages/components/imageCanvasComponent.js +2 -2
- package/cypress/pages/components/index.js +2 -1
- package/cypress/pages/components/layoutSectionComponent.js +25 -4
- package/cypress/pages/components/numberLineCommonComponent.js +39 -0
- package/cypress/pages/components/optionsWrapperComponent.js +1 -1
- package/cypress/pages/components/scoringSectionBaseEditTab.js +1 -0
- package/cypress/pages/dragAndDropIntoCategoriesPage.js +28 -0
- package/cypress/pages/fillInTheGapsDragAndDropPage.js +1 -1
- package/cypress/pages/graphingPage.js +8 -8
- package/cypress/pages/gridFillPage.js +11 -11
- package/cypress/pages/multipleSelectionPage.js +12 -0
- package/cypress/pages/singleSelectionPage.js +1 -1
- package/cypress/pages/textEntryMathPage.js +18 -0
- package/cypress/pages/textEntryMathWithImagePage.js +15 -2
- package/cypress/pages/textSelectionPage.js +7 -1
- package/package.json +1 -1
@@ -31,13 +31,32 @@ const selectors = {
|
|
31
31
|
return cy.get('.essay-preview-wrapper a[role="button"]')
|
32
32
|
}
|
33
33
|
},
|
34
|
-
|
34
|
+
popupLabel: () => cy.get('[class*="ColorOptionsDialogstyles__PopupHeading"]'),
|
35
|
+
colorOption: () => cy.get('.color-block'),
|
36
|
+
responseFieldText: () => cy.get('.cke_contents p'),
|
37
|
+
colorPicker: () => cy.get('[class*="ColorPickerstyles__ColorPickerIconWrapper"]'),
|
38
|
+
colorOptionEditTab: () => cy.get('[class*="ColorSelectionComponentstyles__ColorPickerWrapper"] .color-picker-block'),
|
39
|
+
defaultColorLabel: () => cy.get('[class*="ColorSelectionComponentstyles__LabelWrapper"]'),
|
40
|
+
enableColorPickerLabel: () => cy.get('[data-ngie-testid="enable-color-picker-checkbox"] .MuiFormControlLabel-label'),
|
41
|
+
enableColorPickerCheckbox: () => cy.get('[data-ngie-testid="enable-color-picker-checkbox"] .MuiCheckbox-root'),
|
42
|
+
fontSizeOption: (fontSizeOption = null) => {
|
43
|
+
if (fontSizeOption) {
|
44
|
+
return cy.get(`[class*="cke_panel_list"][title*="(${fontSizeOption})"]`)
|
45
|
+
} else {
|
46
|
+
return cy.get('li[class*="cke_panel_list"]')
|
47
|
+
}
|
48
|
+
},
|
49
|
+
clearTextMessage: () => cy.get('[class*="indexstyle__ClearPopupContent"]'),
|
50
|
+
cancelButton: () => cy.get('.reject-button'),
|
51
|
+
clearAllButton: () => cy.get('.accept-button'),
|
52
|
+
clearAllLabel: () => cy.get('.dialog-title-clear-all-popup'),
|
53
|
+
selectColorLabel: () => cy.get('[class*="ColorOptionsDialogstyles__LabelWrapper"]'),
|
35
54
|
//Customize Formatting options section
|
36
55
|
customizeFormattingOptionsAccordionLabel: () => cy.get('.customize-formatting-options-label'),
|
37
56
|
customizeFormattingOptionsSectionExpandIcon: () => cy.get('.customize-formatting-option-wrapper [class*="expandIconWrapper"]'),
|
38
57
|
customizeFormattingOptionsTiles: (formattingOption = null) => {
|
39
58
|
if (formattingOption) {
|
40
|
-
return cy.get(`.
|
59
|
+
return cy.get(`.icon-button-custom-format[aria-label*="${formattingOption}"]`)
|
41
60
|
} else {
|
42
61
|
return cy.get('.toolbar-options-wrapper .icon-button-custom-format')
|
43
62
|
}
|
@@ -56,6 +75,7 @@ const selectors = {
|
|
56
75
|
responseField: () => cy.get('[title="Enter your response to the question here."]'),
|
57
76
|
responseFieldWordCount: () => cy.get('[class*="InputLimitLabelWrapper"]'),
|
58
77
|
responseFieldEquation: () => cy.get('.cke_widget_element'),
|
78
|
+
responseFieldText: () => cy.get('[class*="EssayResponseGradingViewstyle__GradingViewWrapper"] .question-text-wrapper'),
|
59
79
|
|
60
80
|
//Additional settings, These are old selectors. Need to update them along with additional settings file revamp
|
61
81
|
studentResponseAndLayoutLabel: () => cy.get('.layout-text'),
|
@@ -293,8 +313,10 @@ const steps = {
|
|
293
313
|
},
|
294
314
|
|
295
315
|
verifyGradingViewResponseFieldIsNonEditable: () => {
|
296
|
-
essayResponseCommonComponents.
|
297
|
-
.
|
316
|
+
essayResponseCommonComponents.responseFieldText()
|
317
|
+
.then(($el) => {
|
318
|
+
expect($el[0].isContentEditable).to.be.false;
|
319
|
+
});
|
298
320
|
},
|
299
321
|
|
300
322
|
/**
|
@@ -320,7 +342,7 @@ const steps = {
|
|
320
342
|
* @description Select the toolbar option in preview tab.
|
321
343
|
*/
|
322
344
|
selectPreviewTabToolbarOption: (toolbarOption) => {
|
323
|
-
if (toolbarOption == 'Insert Horizontal Line' || toolbarOption == 'Code Editor' || toolbarOption == 'Increase Indent' || toolbarOption == 'Decrease Indent' || toolbarOption == 'Remove Format') {
|
345
|
+
if (toolbarOption == 'Insert Horizontal Line' || toolbarOption == 'Code Editor' || toolbarOption == 'Increase Indent' || toolbarOption == 'Decrease Indent' || toolbarOption == 'Remove Format' || toolbarOption == 'Clear all') {
|
324
346
|
essayResponseCommonComponents.previewTabToolbarOption(toolbarOption)
|
325
347
|
.click()
|
326
348
|
.should('have.attr', 'aria-pressed', 'false');
|
@@ -328,7 +350,12 @@ const steps = {
|
|
328
350
|
essayResponseCommonComponents.previewTabToolbarOption(toolbarOption)
|
329
351
|
.click()
|
330
352
|
.should('have.attr', 'aria-pressed', 'true');
|
331
|
-
}
|
353
|
+
}
|
354
|
+
else if (toolbarOption == 'Text Color' || toolbarOption == 'Highlight Text' || toolbarOption == 'Font Size') {
|
355
|
+
essayResponseCommonComponents.previewTabToolbarOption(toolbarOption)
|
356
|
+
.click()
|
357
|
+
}
|
358
|
+
else {
|
332
359
|
essayResponseCommonComponents.previewTabToolbarOption(toolbarOption)
|
333
360
|
.click();
|
334
361
|
}
|
@@ -565,7 +592,118 @@ const steps = {
|
|
565
592
|
}
|
566
593
|
essayResponseCommonComponents.responseField()
|
567
594
|
.verifyInnerHTML(formattedText);
|
568
|
-
}
|
595
|
+
},
|
596
|
+
|
597
|
+
/**
|
598
|
+
* select color option in preview tab.
|
599
|
+
* @param {number} index - The color option number.
|
600
|
+
*/
|
601
|
+
selectColorOptionInPreviewTab: (index) => {
|
602
|
+
essayResponseCommonComponents.colorOption()
|
603
|
+
.eq(index)
|
604
|
+
.click()
|
605
|
+
},
|
606
|
+
|
607
|
+
/**
|
608
|
+
* verify response field text in preview tab.
|
609
|
+
* @param {string} color - The color option number.
|
610
|
+
*/
|
611
|
+
verifyResponseFieldTextColor: (color) => {
|
612
|
+
utilities.verifyCSS(essayResponseCommonComponents.responseFieldText().find('span'), {
|
613
|
+
'color': color
|
614
|
+
});
|
615
|
+
},
|
616
|
+
|
617
|
+
/**
|
618
|
+
* verify response field text font size in preview tab.
|
619
|
+
* @param {number} size - The font size.
|
620
|
+
*/
|
621
|
+
verifyResponseFieldTextFontSize: (size) => {
|
622
|
+
utilities.verifyCSS(essayResponseCommonComponents.responseFieldText().find('span'), {
|
623
|
+
'font-size': `${size}px`
|
624
|
+
});
|
625
|
+
},
|
626
|
+
|
627
|
+
/**
|
628
|
+
* verify response field text font size in preview tab.
|
629
|
+
* @param {number} size - The font size.
|
630
|
+
*/
|
631
|
+
verifyResponseFieldTextFontSizeNew: (size) => {
|
632
|
+
utilities.verifyCSS(essayResponseCommonComponents.responseFieldText(), {
|
633
|
+
'font-size': `${size}px`
|
634
|
+
});
|
635
|
+
},
|
636
|
+
|
637
|
+
/**
|
638
|
+
* verify response field text is highted preview tab.
|
639
|
+
* @param {string} color - The color option number.
|
640
|
+
* @param {string} text -response field text
|
641
|
+
*/
|
642
|
+
verifyResponseFieldTextIsHighlighted: (color, text) => {
|
643
|
+
utilities.verifyCSS(essayResponseCommonComponents.responseFieldText().find('span').contains(text), {
|
644
|
+
'background-color': color
|
645
|
+
});
|
646
|
+
},
|
647
|
+
|
648
|
+
clickOnColorPicker: () => {
|
649
|
+
essayResponseCommonComponents.colorPicker()
|
650
|
+
.click()
|
651
|
+
},
|
652
|
+
|
653
|
+
/**
|
654
|
+
* verify font size list content.
|
655
|
+
* @param {string} option - The font size option.
|
656
|
+
*/
|
657
|
+
verifyFontSizeListContent: (option) => {
|
658
|
+
cy.getIframeBody()
|
659
|
+
.within(() => {
|
660
|
+
essayResponseCommonComponents.fontSizeOption()
|
661
|
+
.contains(option, { matchCase: false })
|
662
|
+
.should('exist');
|
663
|
+
});
|
664
|
+
},
|
665
|
+
|
666
|
+
/**
|
667
|
+
* verify font size list content.
|
668
|
+
* @param {string} option - The font size option.
|
669
|
+
*/
|
670
|
+
selectFontSizeOption: (option) => {
|
671
|
+
cy.getIframeBody()
|
672
|
+
.within(() => {
|
673
|
+
essayResponseCommonComponents.fontSizeOption()
|
674
|
+
.contains(option, { matchCase: false })
|
675
|
+
.click();
|
676
|
+
});
|
677
|
+
},
|
678
|
+
|
679
|
+
/**
|
680
|
+
* verify font size list content.
|
681
|
+
* @param {string} option - The font size option.
|
682
|
+
*/
|
683
|
+
verifySelectedFontSize: (option) => {
|
684
|
+
essayResponseCommonComponents.fontSizeOption(option)
|
685
|
+
.should('have.attr', 'aria-selected', 'true')
|
686
|
+
},
|
687
|
+
|
688
|
+
clickOnClearAllButton: () => {
|
689
|
+
essayResponseCommonComponents.clearAllButton()
|
690
|
+
.click()
|
691
|
+
},
|
692
|
+
|
693
|
+
clickOnEnableColorPickerCheckbox: () => {
|
694
|
+
essayResponseCommonComponents.enableColorPickerCheckbox()
|
695
|
+
.click()
|
696
|
+
},
|
697
|
+
|
698
|
+
/**
|
699
|
+
* verify response field text in preview tab.
|
700
|
+
* @param {string} color - The color option number.
|
701
|
+
*/
|
702
|
+
verifyResponseFieldTextNewColor: (color) => {
|
703
|
+
utilities.verifyCSS(essayResponseCommonComponents.responseFieldText(), {
|
704
|
+
'color': color
|
705
|
+
});
|
706
|
+
},
|
569
707
|
}
|
570
708
|
|
571
709
|
const tests = {
|
@@ -144,13 +144,13 @@ const steps = {
|
|
144
144
|
verifyCanvasImageTopLeftAligned: () => {
|
145
145
|
imageCanvasComponent.canvasImage()
|
146
146
|
.should('have.css', 'top', '0px')
|
147
|
-
.and('have.css', 'left', '
|
147
|
+
.and('have.css', 'left', '1px');
|
148
148
|
},
|
149
149
|
|
150
150
|
verifyCanvasImageTopLeftAlignedInPreviewTab: () => {
|
151
151
|
imageCanvasComponent.canvasImageInPreviewTab()
|
152
152
|
.should('have.css', 'top', '0px')
|
153
|
-
.and('have.css', 'left', '
|
153
|
+
.and('have.css', 'left', '1px');
|
154
154
|
},
|
155
155
|
|
156
156
|
verifyCanvasImageTopRightAligned: () => {
|
@@ -66,4 +66,5 @@ export * from './figCommonStyleAndLayoutComponent'
|
|
66
66
|
export * from './showAvailableOptionsToStudents';
|
67
67
|
export * from './showStudentMaximumNumberOfPossibleSelections';
|
68
68
|
export * from './draggableOptionsStyleAndLayoutComponent';
|
69
|
-
export * from './connectorStyleStyleAndLayoutCustomizationComponent'
|
69
|
+
export * from './connectorStyleStyleAndLayoutCustomizationComponent';
|
70
|
+
export * from './ckEditorAudioPlayerComponent';
|
@@ -41,7 +41,9 @@ const selectors = {
|
|
41
41
|
showLabelsLabel: () => cy.get('[data-ngie-testid="display-values-checkbox"] .MuiFormControlLabel-label'),
|
42
42
|
showLabelsCheckbox: () => cy.get('[data-ngie-testid="display-values-checkbox"] input'),
|
43
43
|
showTicksLabel: () => cy.get('[data-ngie-testid="display-nodes-checkbox"] .MuiFormControlLabel-label'),
|
44
|
+
displayMinorNodeLabel: () => cy.get('[data-ngie-testid="display-minor-nodes-checkbox"] .MuiFormControlLabel-label'),
|
44
45
|
showTicksCheckbox: () => cy.get('[data-ngie-testid="display-nodes-checkbox"] input'),
|
46
|
+
displayMinorNodeCheckbox: () => cy.get('[data-ngie-testid="display-minor-nodes-checkbox"] input'),
|
45
47
|
showMinLabel: () => cy.get('[data-ngie-testid="show-min-checkbox"] .MuiFormControlLabel-label'),
|
46
48
|
showMinCheckbox: () => cy.get('[data-ngie-testid="show-min-checkbox"] input'),
|
47
49
|
showMaxLabel: () => cy.get('[data-ngie-testid="show-max-checkbox"] .MuiFormControlLabel-label'),
|
@@ -221,7 +223,7 @@ const steps = {
|
|
221
223
|
|
222
224
|
/**
|
223
225
|
* @description Verify that the specified checkbox is checked.
|
224
|
-
* @param {('Stagger response'|'Display values'|'Display nodes'|'Show min'|'Show max'|'Limit number of responses'|'Display minimum arrow'|'Display maximum arrow'|'Stack segment/ray')} checkboxName - The name of the checkbox to verify.
|
226
|
+
* @param {('Stagger response'|'Display values'|'Display nodes'|'Show min'|'Show max'|'Limit number of responses'|'Display minimum arrow'|'Display maximum arrow'|'Stack segment/ray'|'Display minor nodes')} checkboxName - The name of the checkbox to verify.
|
225
227
|
*/
|
226
228
|
verifyCheckboxChecked: (checkboxName) => {
|
227
229
|
switch (checkboxName) {
|
@@ -261,6 +263,10 @@ const steps = {
|
|
261
263
|
layoutSectionComponent.limitNumbersOfResponsesCheckbox()
|
262
264
|
.should('be.checked');
|
263
265
|
break;
|
266
|
+
case 'Display minor nodes':
|
267
|
+
layoutSectionComponent.displayMinorNodeCheckbox()
|
268
|
+
.should('be.checked');
|
269
|
+
break;
|
264
270
|
default:
|
265
271
|
throw new Error('invalid state string');
|
266
272
|
}
|
@@ -268,7 +274,7 @@ const steps = {
|
|
268
274
|
|
269
275
|
/**
|
270
276
|
* @description Verify that the specified checkbox is unchecked.
|
271
|
-
* @param {('Stagger response'|'Display values'|'Display nodes'|'Show min'|'Show max'|'Limit number of responses'|'Display minimum arrow'|'Display maximum arrow'|'Stack segment/ray')} checkboxName - The name of the checkbox to verify.
|
277
|
+
* @param {('Stagger response'|'Display values'|'Display nodes'|'Show min'|'Show max'|'Limit number of responses'|'Display minimum arrow'|'Display maximum arrow'|'Stack segment/ray'|'Display minor nodes')} checkboxName - The name of the checkbox to verify.
|
272
278
|
*/
|
273
279
|
verifyCheckboxUnchecked: (checkboxName) => {
|
274
280
|
switch (checkboxName) {
|
@@ -308,6 +314,10 @@ const steps = {
|
|
308
314
|
layoutSectionComponent.limitNumbersOfResponsesCheckbox()
|
309
315
|
.should('not.be.checked');
|
310
316
|
break;
|
317
|
+
case 'Display minor nodes':
|
318
|
+
layoutSectionComponent.displayMinorNodeCheckbox()
|
319
|
+
.should('not.be.checked');
|
320
|
+
break;
|
311
321
|
default:
|
312
322
|
throw new Error('invalid state string');
|
313
323
|
}
|
@@ -315,7 +325,7 @@ const steps = {
|
|
315
325
|
|
316
326
|
/**
|
317
327
|
*@description Checks the specified checkbox
|
318
|
-
* @param {('Stagger response'|'Display values'|'Display nodes'|'Show min'|'Show max'|'Limit number of responses'|'Display minimum arrow'|'Display maximum arrow'|'Stack segment/ray')} checkboxName - The name of the checkbox.
|
328
|
+
* @param {('Stagger response'|'Display values'|'Display nodes'|'Show min'|'Show max'|'Limit number of responses'|'Display minimum arrow'|'Display maximum arrow'|'Stack segment/ray'|'Display minor nodes')} checkboxName - The name of the checkbox.
|
319
329
|
*/
|
320
330
|
checkCheckbox: (checkboxName) => {
|
321
331
|
switch (checkboxName) {
|
@@ -364,6 +374,11 @@ const steps = {
|
|
364
374
|
.click()
|
365
375
|
.should('be.checked');
|
366
376
|
break;
|
377
|
+
case 'Display minor nodes':
|
378
|
+
layoutSectionComponent.displayMinorNodeCheckbox()
|
379
|
+
.click()
|
380
|
+
.should('be.checked');
|
381
|
+
break;
|
367
382
|
default:
|
368
383
|
throw new Error('invalid state string');
|
369
384
|
}
|
@@ -371,7 +386,7 @@ const steps = {
|
|
371
386
|
|
372
387
|
/**
|
373
388
|
*@description Unchecks the specified checkbox
|
374
|
-
* @param {('Stagger response'|'Display values'|'Display nodes'|'Show min'|'Show max'|'Limit number of responses'|'Display minimum arrow'|'Display maximum arrow'|'Stack segment/ray')} checkboxName - The name of the checkbox.
|
389
|
+
* @param {('Stagger response'|'Display values'|'Display nodes'|'Show min'|'Show max'|'Limit number of responses'|'Display minimum arrow'|'Display maximum arrow'|'Stack segment/ray'|'Display minor nodes')} checkboxName - The name of the checkbox.
|
375
390
|
*/
|
376
391
|
uncheckCheckbox: (checkboxName) => {
|
377
392
|
switch (checkboxName) {
|
@@ -420,6 +435,11 @@ const steps = {
|
|
420
435
|
.click()
|
421
436
|
.should('not.be.checked');
|
422
437
|
break;
|
438
|
+
case 'Display minor nodes':
|
439
|
+
layoutSectionComponent.displayMinorNodeCheckbox()
|
440
|
+
.click()
|
441
|
+
.should('not.be.checked');
|
442
|
+
break;
|
423
443
|
default:
|
424
444
|
throw new Error('invalid state string');
|
425
445
|
}
|
@@ -815,6 +835,7 @@ const tests = {
|
|
815
835
|
{ getLabelElement: layoutSectionComponent.showMinLabel, label: 'Show min', defaultChecked: true },
|
816
836
|
{ getLabelElement: layoutSectionComponent.showMaxLabel, label: 'Show max', defaultChecked: true },
|
817
837
|
{ getLabelElement: layoutSectionComponent.limitNumbersOfResponsesLabel, label: 'Limit number of responses', defaultChecked: true },
|
838
|
+
{ getLabelElement: layoutSectionComponent.displayMinorNodeLabel, label: 'Display minor nodes', defaultChecked: true },
|
818
839
|
];
|
819
840
|
|
820
841
|
it('Layout label should be displayed', () => {
|
@@ -20,6 +20,9 @@ const selectors = {
|
|
20
20
|
correctIncorrectAnswerTextWrapper: () => cy.get('[class*="CorrectIncorrectWrapper"]'),
|
21
21
|
warningMessage: () => cy.get('.disabled-wrapper-cls [class*="DisabledTextWrapper"]'),
|
22
22
|
warningMessageContainer: () => cy.get('.disabled-wrapper-cls'),
|
23
|
+
nodesOnNumberLineOfNumberLineSection: () => cy.get('[class*="LineGridSettingstyles__LineSettingWrapper"] .ngie-jxgbox [stroke-linecap="round"]'),
|
24
|
+
nodesOnNumberLineOfSpecifyCorrectAnswerSection: () => cy.get('[class*="AnswerAccordionstyles__AnswerPanel"] .ngie-jxgbox [stroke-linecap="round"]'),
|
25
|
+
nodesOnNumberLineInPreviewTab: () => cy.get('[class*="TabsComponentstyles__PreviewWrapper"] .ngie-jxgbox [stroke-linecap="round"]'),
|
23
26
|
}
|
24
27
|
|
25
28
|
const steps = {
|
@@ -422,6 +425,24 @@ const tests = {
|
|
422
425
|
it('When user checks Display nodes checkbox, then ticks on number line should be displayed in number line section and specify correct answer section', () => {
|
423
426
|
|
424
427
|
});
|
428
|
+
|
429
|
+
it('When user set annotation to 2, small node will appear between 2 major nodes in number line section and specify correct answer section', () => {
|
430
|
+
numberLineCommonComponent.steps.enterTextInAnnotateEveryInputField(2);
|
431
|
+
numberLineCommonComponent.steps.verifyTextInAnnotateEveryInputField(2);
|
432
|
+
numberLineCommonComponent.steps.verifyAnnotatedLabelsOnNumberLineNumberLineSection(-10, 2);
|
433
|
+
utilities.verifyElementCount(numberLineCommonComponent.nodesOnNumberLineOfNumberLineSection(), 21);
|
434
|
+
numberLineCommonComponent.steps.verifyAnnotatedLabelsOnNumberLineSpecifyCorrectAnswerSection(-10, 2);
|
435
|
+
utilities.verifyElementCount(numberLineCommonComponent.nodesOnNumberLineOfSpecifyCorrectAnswerSection(), 21);
|
436
|
+
});
|
437
|
+
|
438
|
+
it('When the user unchecks the \'Display minor nodes\' then the only major nodes should display on the number line of number line section and specify correct answer section', () => {
|
439
|
+
numberLineCommonComponent.steps.uncheckCheckbox('Display minor nodes');
|
440
|
+
utilities.verifyElementCount(numberLineCommonComponent.nodesOnNumberLineOfNumberLineSection(), 11);
|
441
|
+
utilities.verifyElementCount(numberLineCommonComponent.nodesOnNumberLineOfSpecifyCorrectAnswerSection(), 11);
|
442
|
+
numberLineCommonComponent.steps.checkCheckbox('Display minor nodes');
|
443
|
+
numberLineCommonComponent.steps.enterTextInAnnotateEveryInputField(1);
|
444
|
+
});
|
445
|
+
|
425
446
|
},
|
426
447
|
|
427
448
|
/**
|
@@ -517,6 +538,24 @@ const tests = {
|
|
517
538
|
it('When user checks Display nodes checkbox, then ticks on number line should be displayed in preview tab', () => {
|
518
539
|
|
519
540
|
});
|
541
|
+
|
542
|
+
it('When user set annotation to 2, small node will appear between 2 major nodes in number line section and specify correct answer section', () => {
|
543
|
+
numberLineCommonComponent.steps.switchToEditTab();
|
544
|
+
numberLineCommonComponent.steps.enterTextInAnnotateEveryInputField(2);
|
545
|
+
numberLineCommonComponent.steps.verifyTextInAnnotateEveryInputField(2);
|
546
|
+
numberLineCommonComponent.steps.switchToPreviewTab();
|
547
|
+
utilities.verifyElementCount(numberLineCommonComponent.nodesOnNumberLineInPreviewTab(), 21);
|
548
|
+
});
|
549
|
+
|
550
|
+
it('When the user unchecks the \'Display minor nodes\' then the only major nodes should display on the number line of number line section and specify correct answer section', () => {
|
551
|
+
numberLineCommonComponent.steps.switchToEditTab();
|
552
|
+
numberLineCommonComponent.steps.uncheckCheckbox('Display minor nodes');
|
553
|
+
numberLineCommonComponent.steps.switchToPreviewTab();
|
554
|
+
utilities.verifyElementCount(numberLineCommonComponent.nodesOnNumberLineInPreviewTab(), 11);
|
555
|
+
numberLineCommonComponent.steps.switchToEditTab();
|
556
|
+
numberLineCommonComponent.steps.checkCheckbox('Display minor nodes');
|
557
|
+
numberLineCommonComponent.steps.enterTextInAnnotateEveryInputField(1);
|
558
|
+
});
|
520
559
|
},
|
521
560
|
|
522
561
|
/**
|
@@ -183,7 +183,7 @@ const steps = {
|
|
183
183
|
.eq(index)
|
184
184
|
.find('[data-widget="ngie_equation"]')
|
185
185
|
.should('have.attr', 'aria-label', constants.CKEditorInputFieldEnteredEquationAriaLabel)
|
186
|
-
|
186
|
+
// .contains(constants.CKEditorInputFieldEnteredEquationText); ;
|
187
187
|
},
|
188
188
|
|
189
189
|
/**
|
@@ -154,6 +154,8 @@ const selectors = {
|
|
154
154
|
optionsWrapper: () => cy.get('[class*="StandardDropZonestyles__DraggableItemsGrid"]'),
|
155
155
|
optionsWrapperPreviewTab: () => cy.get('.edit-question-preview-wrapper [class*="StandardDropZonestyles__DraggableItemsGrid"]'),
|
156
156
|
optionsPreviewTab: () => cy.get('[class*="CellDropZonestyles__DraggableItemWrapper"]'),
|
157
|
+
iconWrapperInPreviewTab: () => cy.get('[class*="DragAndDropMatrixstyles__TickIconWrapper"]'),
|
158
|
+
gridBoxInPreviewTab: () => cy.get('[class*="CellDropZonestyles__DraggableWrapper"]'),
|
157
159
|
optionPanelWrapper: () => cy.get('.option-drag-and-drop')
|
158
160
|
}
|
159
161
|
|
@@ -482,6 +484,19 @@ const steps = {
|
|
482
484
|
});
|
483
485
|
},
|
484
486
|
|
487
|
+
/**
|
488
|
+
* Verifies the presence of an incorrect icon for a specified empty container in the Preview Tab.
|
489
|
+
* @param {number} optionIndex - The index of the container to verify.
|
490
|
+
*/
|
491
|
+
verifyIncorrectIconForEmptyContainer: (optionIndex) => {
|
492
|
+
dragAndDropIntoCategoriesPage.gridBoxInPreviewTab()
|
493
|
+
.eq(optionIndex)
|
494
|
+
.within(() => {
|
495
|
+
dragAndDropIntoCategoriesPage.iconWrapperInPreviewTab()
|
496
|
+
.should('have.class', 'incorrect-circle-icon');
|
497
|
+
});
|
498
|
+
},
|
499
|
+
|
485
500
|
/**
|
486
501
|
* Verifies the presence of a correct option icon for a specified option in the Preview Tab.
|
487
502
|
* @param {number} optionIndex - The index of the option to verify.
|
@@ -495,6 +510,19 @@ const steps = {
|
|
495
510
|
});
|
496
511
|
},
|
497
512
|
|
513
|
+
/**
|
514
|
+
* Verifies the presence of a correct icon for a specified empty container in the Preview Tab.
|
515
|
+
* @param {number} optionIndex - The index of the container to verify.
|
516
|
+
*/
|
517
|
+
verifyCorrectIconForEmptyContainer: (optionIndex) => {
|
518
|
+
dragAndDropIntoCategoriesPage.gridBoxInPreviewTab()
|
519
|
+
.eq(optionIndex)
|
520
|
+
.within(() => {
|
521
|
+
dragAndDropIntoCategoriesPage.iconWrapperInPreviewTab()
|
522
|
+
.should('have.class', 'correct-circle-icon');
|
523
|
+
});
|
524
|
+
},
|
525
|
+
|
498
526
|
setRowsAndColumnsForQuestion: () => {
|
499
527
|
dragAndDropIntoCategoriesPage.steps.modifyTableCellProperty(0, 'None');
|
500
528
|
dragAndDropIntoCategoriesPage.steps.modifyTableCellProperty(3, 'Heading');
|
@@ -38,9 +38,9 @@ const selectors = {
|
|
38
38
|
snapToGridCheckbox: () => cy.get('[data-ngie-testid="snap-to-grid-checkbox"] input'),
|
39
39
|
snapToGridLabel: () => cy.get('[data-ngie-testid="snap-to-grid-checkbox"] .MuiFormControlLabel-label'),
|
40
40
|
graphLine: () => cy.get('line[tabindex="null"]'),
|
41
|
-
graphCircle: () => cy.get('ellipse[
|
41
|
+
graphCircle: () => cy.get('ellipse[fill-opacity="0"]'),
|
42
42
|
graphPolygon: () => cy.get('polygon'),
|
43
|
-
graphSine: () => cy.get('
|
43
|
+
graphSine: () => cy.get('[pointer-events="visiblePainted"][tabindex="0"][fill-rule="evenodd"]'),
|
44
44
|
textOnGraphEditTab: (graphText) => {
|
45
45
|
if (graphText) {
|
46
46
|
return cy.get('[class*="GraphingWrapper"] .ngie-jxgbox .JXGtext').contains(graphText)
|
@@ -116,7 +116,7 @@ const selectors = {
|
|
116
116
|
yAxisGraphPreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg line[stroke-linecap="butt"]').eq(1),
|
117
117
|
graphLinePreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg').eq(0).find('line[tabindex="null"]'),
|
118
118
|
graphLineSegmentsPreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg').eq(0).find('line[tabindex="0"]'),
|
119
|
-
graphCirclePreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg').eq(0).find('ellipse[
|
119
|
+
graphCirclePreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg').eq(0).find('ellipse[fill-opacity="0"]'),
|
120
120
|
graphPolygonPreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg').eq(0).find('polygon'),
|
121
121
|
textOnGraphPreviewTab: (graphText) => {
|
122
122
|
if (graphText) {
|
@@ -125,7 +125,7 @@ const selectors = {
|
|
125
125
|
return cy.get('[class*="GraphingQuestion"] .ngie-jxgbox .JXGtext')
|
126
126
|
}
|
127
127
|
},
|
128
|
-
graphSineAndParabolaPreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg').eq(0).find('
|
128
|
+
graphSineAndParabolaPreviewTab: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg').eq(0).find('[pointer-events="visiblePainted"][tabindex="0"][fill-rule="evenodd"]'),
|
129
129
|
repeatedPointsSwitch: () => cy.get('.repeated-points-wrapper .MuiSwitch-input'),
|
130
130
|
graphLabelInputField: () => cy.get('.label-tool:visible'),
|
131
131
|
|
@@ -224,17 +224,17 @@ const selectors = {
|
|
224
224
|
makeResponsiveHelpText: () => cy.get('[class*="WhatIsThisDescriptionWrapper"]'),
|
225
225
|
|
226
226
|
//Grading view
|
227
|
-
gradingViewQuestionSineWave: () => cy.get('.ngie-jxgbox').eq(0).find('
|
228
|
-
gradingViewQuestionCircle: () => cy.get('.ngie-jxgbox').eq(0).find('ellipse[
|
227
|
+
gradingViewQuestionSineWave: () => cy.get('.ngie-jxgbox').eq(0).find('[pointer-events="visiblePainted"][tabindex="0"][fill-rule="evenodd"]'),
|
228
|
+
gradingViewQuestionCircle: () => cy.get('.ngie-jxgbox').eq(0).find('ellipse[fill-opacity="0"]'),
|
229
229
|
gradingViewQuestionLine: () => cy.get('.ngie-jxgbox').eq(0).find('line[tabindex="null"]'),
|
230
230
|
|
231
231
|
//Correct answer section
|
232
232
|
correctAnswerLabel: () => cy.get('[class*="AnswerLabel"]'),
|
233
233
|
graphCorrectAnswerSection: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox svg'),
|
234
|
-
graphCircleCorrectAnswerSection: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox').eq(1).find('ellipse[
|
234
|
+
graphCircleCorrectAnswerSection: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox').eq(1).find('ellipse[fill-opacity="0"]'),
|
235
235
|
graphLineCorrectAnswerSection: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox').eq(1).find('line[tabindex="null"]'),
|
236
236
|
graphPolygonCorrectAnswerSection: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox').eq(1).find('polygon'),
|
237
|
-
graphSineWaveCorrectAnswerSection: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox').eq(1).find('
|
237
|
+
graphSineWaveCorrectAnswerSection: () => cy.get('[class*="GraphingQuestion"] .ngie-jxgbox').eq(1).find('[pointer-events="visiblePainted"][tabindex="0"][fill-rule="evenodd"]'),
|
238
238
|
correctIncorrectStatusMessageText: () => cy.get('[class*="Graphingstyles__CorrectIncorrectWrapper"]'),
|
239
239
|
incorrectIcon: () => cy.get('[data-icon="Incorrect"]'),
|
240
240
|
correctIcon: () => cy.get('[data-icon="CorrectAnswer"]'),
|
@@ -2943,6 +2943,17 @@ const tests = {
|
|
2943
2943
|
it('When user selects a cell by clicking on it, then error message should not be displayed', () => {
|
2944
2944
|
gridFillPage.steps.selectCellSpecifyCorrectAnswerSection(0, 0);
|
2945
2945
|
commonComponents.steps.verifyErrorMessageIsNotDisplayed();
|
2946
|
+
if (accordionName == 'Correct') {
|
2947
|
+
autoScoredSpecifyCorrectAnswerSection.correctAnswerAccordion()
|
2948
|
+
.within(() => {
|
2949
|
+
utilities.verifyElementVisibilityState(autoScoredSpecifyCorrectAnswerSection.specifyCorrectAnswerErrorIcon(), 'notExist');
|
2950
|
+
});
|
2951
|
+
} else {
|
2952
|
+
autoScoredSpecifyCorrectAnswerSection.alternativeAnswerAccordion()
|
2953
|
+
.within(() => {
|
2954
|
+
utilities.verifyElementVisibilityState(autoScoredSpecifyCorrectAnswerSection.specifyCorrectAnswerErrorIcon(), 'notExist');
|
2955
|
+
});
|
2956
|
+
};
|
2946
2957
|
});
|
2947
2958
|
|
2948
2959
|
it(`\'Match exact position of cells\' label and checkbox should be displayed in the ${accordionName} accordion and the checkbox should be checked`, () => {
|
@@ -2973,17 +2984,6 @@ const tests = {
|
|
2973
2984
|
gridFillPage.steps.clearCellShadeCountInputField();
|
2974
2985
|
utilities.verifyElementVisibilityState(commonComponents.errorMessage(), 'visible')
|
2975
2986
|
utilities.verifyInnerText(commonComponents.errorMessage(), 'Error: Please set a correct answer.');
|
2976
|
-
if (accordionName == 'Correct') {
|
2977
|
-
autoScoredSpecifyCorrectAnswerSection.correctAnswerAccordion()
|
2978
|
-
.within(() => {
|
2979
|
-
utilities.verifyElementVisibilityState(autoScoredSpecifyCorrectAnswerSection.specifyCorrectAnswerErrorIcon(), 'visible');
|
2980
|
-
});
|
2981
|
-
} else {
|
2982
|
-
autoScoredSpecifyCorrectAnswerSection.alternativeAnswerAccordion()
|
2983
|
-
.within(() => {
|
2984
|
-
utilities.verifyElementVisibilityState(autoScoredSpecifyCorrectAnswerSection.specifyCorrectAnswerErrorIcon(), 'visible');
|
2985
|
-
});
|
2986
|
-
};
|
2987
2987
|
});
|
2988
2988
|
|
2989
2989
|
it('CSS of \'Cell shade count\' input field error message', { tags: 'css' }, () => {
|
@@ -1,6 +1,9 @@
|
|
1
1
|
import constants from "../fixtures/constants";
|
2
2
|
import utilities from "../support/helpers/utilities"
|
3
3
|
import { autoScoredScoringSectionMultiResponseType, autoScoredSpecifyCorrectAnswerSection, commonComponents, createQuestionBasePage, optionsWrapperComponent, questionInstructionsComponent, scoringSectionBaseEditTab, autoScoredScoringPreviewTab, autoScoredStudentViewSettings, additionalSettingsPanel, ckEditorToolbar, equationEditorFlyout, mcqAdditionalSettingsBase, randomizeOptionsComponent, lockUnlockOptionComponent, additionalSettingsAccessibilitySectionComponent } from "./components"
|
4
|
+
import { ckEditorAudioPlayerComponent } from "../pages/components/ckEditorAudioPlayerComponent"
|
5
|
+
import { ckEditorEquationEditorComponent } from "../pages/components/ckEditorEquationEditorComponent"
|
6
|
+
import { ckEditorInsertTableComponent } from "../pages/components/ckEditorInsertTableComponent"
|
4
7
|
const css = Cypress.env('css');
|
5
8
|
const options = ['Pollution caused by treating chemical waste', 'Pollution caused by cement production', 'Pollution caused by methane production', 'Pollution caused by cement and methane production'];
|
6
9
|
|
@@ -20,6 +23,9 @@ const selectors = {
|
|
20
23
|
...equationEditorFlyout,
|
21
24
|
...randomizeOptionsComponent,
|
22
25
|
...lockUnlockOptionComponent,
|
26
|
+
...ckEditorAudioPlayerComponent,
|
27
|
+
...ckEditorEquationEditorComponent,
|
28
|
+
...ckEditorInsertTableComponent,
|
23
29
|
//Specify correct answer section
|
24
30
|
optionWrapperSpecifyCorrectAnswerSection: () => cy.get('.mcq-option-wrapper'),
|
25
31
|
optionsText: () => cy.get('.mcq-label'),
|
@@ -83,6 +89,9 @@ const steps = {
|
|
83
89
|
...commonComponents.steps,
|
84
90
|
...randomizeOptionsComponent.steps,
|
85
91
|
...lockUnlockOptionComponent.steps,
|
92
|
+
...ckEditorAudioPlayerComponent.steps,
|
93
|
+
...ckEditorEquationEditorComponent.steps,
|
94
|
+
...ckEditorInsertTableComponent.steps,
|
86
95
|
/**
|
87
96
|
* Verifies the contents of an option wrapper in the 'Specify correct answer' section for multiple selection questions.
|
88
97
|
* @param {number} optionIndex - The index of the option wrapper to be verified.
|
@@ -843,6 +852,9 @@ const tests = {
|
|
843
852
|
...autoScoredStudentViewSettings.tests,
|
844
853
|
...additionalSettingsAccessibilitySectionComponent.tests,
|
845
854
|
...mcqAdditionalSettingsBase.tests,
|
855
|
+
...ckEditorAudioPlayerComponent.tests,
|
856
|
+
...ckEditorEquationEditorComponent.tests,
|
857
|
+
...ckEditorInsertTableComponent.tests,
|
846
858
|
/**
|
847
859
|
* Verifies the contents and functionality of the 'Specify correct answer' accordion for multiple selection questions.
|
848
860
|
* @param {{'Correct' | 'Alternative'}} accordionName - The name of the accordion to be used in the validation.
|
@@ -708,7 +708,7 @@ const tests = {
|
|
708
708
|
|
709
709
|
it('On deleting correct answer option(s), \'Error: Please set a correct answer.\' validation error message should be thrown along with an error icon on the \'Correct\' tab', () => {
|
710
710
|
singleSelectionPage.steps.deleteOption(1);
|
711
|
-
utilities.verifyElementVisibilityState(commonComponents.errorMessage(), '
|
711
|
+
utilities.verifyElementVisibilityState(commonComponents.errorMessage(), 'notExist');
|
712
712
|
autoScoredSpecifyCorrectAnswerSection.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
|
713
713
|
});
|
714
714
|
|
@@ -878,6 +878,13 @@ const steps = {
|
|
878
878
|
.should('not.be.checked');
|
879
879
|
},
|
880
880
|
|
881
|
+
switchToGradingView: () => {
|
882
|
+
autoScoredScoringPreviewTab.gradingViewRadioButton()
|
883
|
+
.click()
|
884
|
+
.should('be.checked');
|
885
|
+
cy.wait(1500);
|
886
|
+
},
|
887
|
+
|
881
888
|
//Additional settings
|
882
889
|
selectEquationEditorSectionCategories: (categoriesArray) => {
|
883
890
|
categoriesArray.forEach((categoryName) => {
|
@@ -906,6 +913,17 @@ const steps = {
|
|
906
913
|
addResponseContainer: () => {
|
907
914
|
textEntryMathPage.addResponseContainerButton()
|
908
915
|
.click();
|
916
|
+
},
|
917
|
+
|
918
|
+
/**
|
919
|
+
* @description type in the equation editor input field preview tab
|
920
|
+
* @param {string} text - text to be entered in the input field
|
921
|
+
* @param {number} index - index of input field in preview tab
|
922
|
+
*/
|
923
|
+
enterTextInPreviewInputFieldNew: (index, text) => {
|
924
|
+
textEntryMathPage.responseFieldPreviewTab()
|
925
|
+
.eq(index)
|
926
|
+
.type(text);
|
909
927
|
}
|
910
928
|
}
|
911
929
|
|