itemengine-cypress-automation 1.0.232-updatePackage-0fbfb66.0 → 1.0.235
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.
- package/cypress/e2e/ILC/ChartsBar/additionalSettings.js +4 -4
- package/cypress/e2e/ILC/ChartsLine/allOrNothingScoringForAllViews.smoke.js +2 -2
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perCorrectOptionCorrectPointsEqualToAlternativePoints.js +1 -0
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneCorrectPointsEqualToAlternativePoints.js +6 -6
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/perDropzoneCorrectPointsGreaterThanAlternativePoints.js +2 -2
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +4 -2
- package/cypress/e2e/ILC/EssayResponse/createCustomCategory.smoke.js +3 -2
- package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/dropzoneSettings.js +8 -4
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternativePoints.js +1 -1
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/styleAndLayoutCustomization.js +1 -1
- package/cypress/e2e/ILC/GridFill/customizeLayoutSectionShadeCellsGridBorders.js +1 -0
- package/cypress/e2e/ILC/ListOrderingNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -1
- package/cypress/e2e/ILC/Matching/Scoring/allOrNothingWithCorrectPointsEqualToAlternativePoints.js +1 -0
- package/cypress/e2e/ILC/MultipleSelectionGridNew/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +1 -1
- package/cypress/e2e/ILC/ShortTextResponseNew/editTabBasicSections.js +12 -1
- package/cypress/e2e/ILC/SingleSelectionGridNew/additionalSettings.js +4 -2
- package/cypress/e2e/ILC/TextEntryMath/evaluationMethodsWithoutSetResponse.js +14 -7
- package/cypress/e2e/ILC/TextEntryMathWithImage/backgroundImageAndCanvasProperties.js +2 -2
- package/cypress/e2e/ILC/TextSelection/Scoring/partialDifferentWeightsBasic.js +6 -6
- package/cypress/e2e/ILC/TextSelection/additionalSettings.js +2 -2
- package/cypress/e2e/ILC/TextSelection/previewContentsForAllViews.smoke.js +1 -1
- package/cypress/e2e/ILC/chartsDotsPlot/allOrNothingForAllViews.smoke.js +2 -2
- package/cypress/pages/chartsBarPage.js +1 -0
- package/cypress/pages/chartsDotPlotPage.js +2 -0
- package/cypress/pages/chartsLinePage.js +11 -0
- package/cypress/pages/components/additionalSettingsPanel.js +3 -1
- package/cypress/pages/components/commonComponents.js +21 -1
- package/cypress/pages/components/createCustomCategoryFlyout.js +17 -8
- package/cypress/pages/components/draggableOptionsStyleAndLayoutComponent.js +1 -1
- package/cypress/pages/components/figCommonStyleAndLayoutComponent.js +1 -1
- package/cypress/pages/components/gridQuestionCommonComponent.js +2 -1
- package/cypress/pages/gridFillPage.js +1 -1
- package/cypress/pages/numberLineLabelPage.js +2 -1
- package/cypress/pages/shortTextResponsePage.js +2 -0
- package/cypress/pages/textEntryMathPage.js +6 -1
- package/cypress/pages/textEntryMathWithImagePage.js +22 -19
- package/cypress/pages/textSelectionPage.js +18 -0
- package/package.json +2 -2
- package/scripts/sorry-cypress.mjs +2 -2
- /package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/{checkAnswerFunctionalityForAllViews.smoke.js → checkAnswerFunctionalityForAllViews.js} +0 -0
| @@ -30,8 +30,8 @@ describe('Create Item page : Charts - Line : Additional settings', () => { | |
| 30 30 |  | 
| 31 31 | 
             
                    chartsBarPage.tests.verifyFontSizeSectionContents();
         | 
| 32 32 | 
             
                });
         | 
| 33 | 
            -
             | 
| 34 | 
            -
                describe('Additional settings: Font size - Select chart type and Specify correct answer section', () => {
         | 
| 33 | 
            +
                //Remove the skip once https://redmine.zeuslearning.com/issues/577171 is resolved
         | 
| 34 | 
            +
                describe.skip('Additional settings: Font size - Select chart type and Specify correct answer section', () => {
         | 
| 35 35 | 
             
                    abortEarlySetup();
         | 
| 36 36 | 
             
                    before(() => {
         | 
| 37 37 | 
             
                        chartsBarPage.steps.navigateToCreateQuestion('charts');
         | 
| @@ -78,8 +78,8 @@ describe('Create Item page : Charts - Line : Additional settings', () => { | |
| 78 78 | 
             
                        });
         | 
| 79 79 | 
             
                    });
         | 
| 80 80 | 
             
                });
         | 
| 81 | 
            -
             | 
| 82 | 
            -
                describe('Additional settings: Font size - preview tab', () => {
         | 
| 81 | 
            +
                //Remove the skip once https://redmine.zeuslearning.com/issues/577171 is resolved
         | 
| 82 | 
            +
                describe.skip('Additional settings: Font size - preview tab', () => {
         | 
| 83 83 | 
             
                    abortEarlySetup();
         | 
| 84 84 | 
             
                    before(() => {
         | 
| 85 85 | 
             
                        chartsBarPage.steps.navigateToCreateQuestion('charts');
         | 
| @@ -101,8 +101,8 @@ describe('Create item page - Charts - Line: All or nothing ', () => { | |
| 101 101 | 
             
                                itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
         | 
| 102 102 | 
             
                            });
         | 
| 103 103 | 
             
                        };
         | 
| 104 | 
            -
             | 
| 105 | 
            -
                        it('When the user selects \'Grading\' view without attempting the question, the correct answer should be displayed in the correct answer section graph and correct/incorrect status message should not be displayed', () => {
         | 
| 104 | 
            +
                        //Need to remove skip once https://redmine.zeuslearning.com/issues/577535, https://redmine.zeuslearning.com/issues/577716 is resolved
         | 
| 105 | 
            +
                        it.skip('When the user selects \'Grading\' view without attempting the question, the correct answer should be displayed in the correct answer section graph and correct/incorrect status message should not be displayed', () => {
         | 
| 106 106 | 
             
                            if (view === 'Grading view') {
         | 
| 107 107 | 
             
                                studentViewPage.steps.submitResponse();
         | 
| 108 108 | 
             
                                utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
         | 
| @@ -229,6 +229,7 @@ describe('Create item page - Drag and drop into categories: Per correct option w | |
| 229 229 | 
             
                    });
         | 
| 230 230 |  | 
| 231 231 | 
             
                    it('When the user attempts the question partially correct with equal number of correct options exclusively from the alternative accordion and correct accordion in the different cell and on switching to \'Grading\' view, then correct icon should be displayed besides the correct accordion responses, incorrect icon should be displayed besides alternative accordion responses, correct/incorrect answer status message should not be displayed and the correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
         | 
| 232 | 
            +
                        dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
         | 
| 232 233 | 
             
                        dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Bat': 0, 'Octopus': 5 });
         | 
| 233 234 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(5, 30);
         | 
| 234 235 | 
             
                        dragAndDropIntoCategoriesPage.steps.switchToGradingView();
         | 
| @@ -156,7 +156,7 @@ describe('Create item page - Drag and drop into categories: Per dropzone with al | |
| 156 156 | 
             
                        dragAndDropIntoCategoriesPage.steps.switchToGradingView();
         | 
| 157 157 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
         | 
| 158 158 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(1);
         | 
| 159 | 
            -
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectIconsForDropzone({ 'incorrect': 0, 'incorrect': 1, 'correct': 2, 'incorrect': 3, 'incorrect': 4, ' | 
| 159 | 
            +
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectIconsForDropzone({ 'incorrect': 0, 'incorrect': 1, 'correct': 2, 'incorrect': 3, 'incorrect': 4, 'correct': 5 });
         | 
| 160 160 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
         | 
| 161 161 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
         | 
| 162 162 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
         | 
| @@ -190,7 +190,7 @@ describe('Create item page - Drag and drop into categories: Per dropzone with al | |
| 190 190 | 
             
                    it('When the user attempts the question partially correct such that equal number of dropzones are correct according to correct accordion and alternative accordion mappings and points achieved from the correct accordion mapping is equal to the points achieved from alternative accordion mapping, then the points achieved should be according to the correct accordion mapping and on switching to \'Grading\' view, correct icon should be displayed besides correct accordion responses, incorrect icon should be displayed besides alternative accordion responses, correct icon should be displayed for correct dropzone, incorrect icon should be displayed for incorrect dropzone. correct/incorrect answer status message and correct answer section with all correct answers from the correct accordion along with dropzone numeration should be displayed', () => {
         | 
| 191 191 | 
             
                        dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
         | 
| 192 192 | 
             
                        dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0, 'Eagle': 1, 'Parrot': 1, 'Ostrich': 3 });
         | 
| 193 | 
            -
                        dragAndDropIntoCategoriesPage.steps.verifyPreviewScore( | 
| 193 | 
            +
                        dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(15, 30);
         | 
| 194 194 | 
             
                        dragAndDropIntoCategoriesPage.steps.switchToGradingView();
         | 
| 195 195 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(0);
         | 
| 196 196 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
         | 
| @@ -212,19 +212,19 @@ describe('Create item page - Drag and drop into categories: Per dropzone with al | |
| 212 212 | 
             
                    });
         | 
| 213 213 |  | 
| 214 214 | 
             
                    //Failing due to https://redmine.zeuslearning.com/issues/556773
         | 
| 215 | 
            -
                    it('When the user attempts the question such that more number of dropzones are correct as per the alternative accordion mapping than the correct accordion mapping and points achieved from the alternative accordion mapping is more than the points achieved from correct accordion mapping, then the points achieved should be according to the alternative accordion mapping and on switching to \'Grading\' view,, correct icon should be displayed besides alternative accordion responses, incorrect icon should be displayed besides the correct accordion responses, correct icon should be displayed for correct dropzone, incorrect icon should be displayed for incorrect dropzone. correct/incorrect answer status message should not be displayed and correct answer section with all correct answers from the  | 
| 215 | 
            +
                    it('When the user attempts the question such that more number of dropzones are correct as per the alternative accordion mapping than the correct accordion mapping and points achieved from the alternative accordion mapping is more than the points achieved from correct accordion mapping, then the points achieved should be according to the alternative accordion mapping and on switching to \'Grading\' view,, correct icon should be displayed besides alternative accordion responses, incorrect icon should be displayed besides the correct accordion responses, correct icon should be displayed for correct dropzone, incorrect icon should be displayed for incorrect dropzone. correct/incorrect answer status message should not be displayed and correct answer section with all correct answers from the alternate accordion along with dropzone numeration should be displayed', () => {
         | 
| 216 216 | 
             
                        dragAndDropIntoCategoriesPage.steps.resetQuestionPreview();
         | 
| 217 217 | 
             
                        dragAndDropIntoCategoriesPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Flying squirrel': 0, 'Eagle': 1, 'Parrot': 1, 'Platypus': 4, 'Octopus': 5 });
         | 
| 218 | 
            -
                        dragAndDropIntoCategoriesPage.steps.verifyPreviewScore( | 
| 218 | 
            +
                        dragAndDropIntoCategoriesPage.steps.verifyPreviewScore(20, 30);
         | 
| 219 219 | 
             
                        dragAndDropIntoCategoriesPage.steps.switchToGradingView();
         | 
| 220 220 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
         | 
| 221 221 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
         | 
| 222 222 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(2);
         | 
| 223 | 
            -
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(2);
         | 
| 224 223 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
         | 
| 224 | 
            +
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(4);
         | 
| 225 225 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectIconsForDropzone({ 'correct': 0, 'incorrect': 1, 'correct': 2, 'incorrect': 3, 'correct': 4, 'correct': 5 });
         | 
| 226 226 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
         | 
| 227 | 
            -
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([[' | 
| 227 | 
            +
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Flying squirrel'], ['Eagle', 'Peacock'], ['Ostrich'], ['Platypus'], ['Octopus']], ['1', '2', '4', '5', '6']);
         | 
| 228 228 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
         | 
| 229 229 | 
             
                        /*cy.log('When the user has attempted the question such that more number of dropzones are correct as per the alternative accordion mapping than the correct accordion mapping and clicks on \'Check answer\' button, then correct icon should be displayed besides alternative accordion responses, incorrect icon should be displayed besides the correct accordion responses, correct icon should be displayed for correct dropzone, incorrect icon should be displayed for incorrect dropzone. correct/incorrect answer status message and correct answer section should not be displayed')
         | 
| 230 230 | 
             
                        dragAndDropIntoCategoriesPage.steps.checkAnswer();
         | 
| @@ -222,8 +222,8 @@ describe('Create item page - Drag and drop into categories: Per dropzone with al | |
| 222 222 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(0);
         | 
| 223 223 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(1);
         | 
| 224 224 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyIncorrectOptionIcon(2);
         | 
| 225 | 
            -
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(2);
         | 
| 226 225 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(3);
         | 
| 226 | 
            +
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectOptionIcon(4);
         | 
| 227 227 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectIconsForDropzone({ 'correct': 0, 'incorrect': 1, 'correct': 2, 'incorrect': 3, 'correct': 4, 'correct': 5 });
         | 
| 228 228 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectIncorrectStatusMessageNotExists();
         | 
| 229 229 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyCorrectAnswerResponsesInCorrectAnswerSectionAndCount([['Bat'], ['Eagle', 'Parrot'], ['Platypus'], ['Ostrich'], ['Whale']], ['1', '2', '3', '4', '5']);
         | 
| @@ -245,7 +245,7 @@ describe('Create item page - Drag and drop into categories: Per dropzone with al | |
| 245 245 | 
             
                        dragAndDropIntoCategoriesPage.steps.switchToEditTab();
         | 
| 246 246 | 
             
                        dragAndDropIntoCategoriesPage.steps.expandCorrectAnswerAccordion();
         | 
| 247 247 | 
             
                        dragAndDropIntoCategoriesPage.steps.allotPoints(12);
         | 
| 248 | 
            -
                        dragAndDropIntoCategoriesPage.steps.expandAlternativeAnswerAccordion(1);
         | 
| 248 | 
            +
                        dragAndDropIntoCategoriesPage.steps.expandAlternativeAnswerAccordion(-1);
         | 
| 249 249 | 
             
                        dragAndDropIntoCategoriesPage.steps.allotPoints(4);
         | 
| 250 250 | 
             
                        dragAndDropIntoCategoriesPage.steps.switchToPreviewTab();
         | 
| 251 251 |  | 
| @@ -47,14 +47,16 @@ describe('Create item page - Drag and drop into categories: Minimum scoring, Pen | |
| 47 47 |  | 
| 48 48 | 
             
                    dragAndDropIntoCategoriesPage.tests.verifyPenaltyPointsErrorState();
         | 
| 49 49 |  | 
| 50 | 
            -
                     | 
| 50 | 
            +
                    //need to remove comment once this https://redmine.zeuslearning.com/issues/578881 is resolved
         | 
| 51 | 
            +
                    it.skip('When the user selects \'Penalty points for each incorrect dropzone\' from the penalty scoring dropdown, a penalty points detail section with an empty input field and \'Penalty points for each incorrect dropzone\' label should be displayed', () => {
         | 
| 51 52 | 
             
                        dragAndDropIntoCategoriesPage.steps.expandPenaltyScoringDropdown();
         | 
| 52 53 | 
             
                        dragAndDropIntoCategoriesPage.steps.selectOptionFromPenaltyScoringDropdown(penaltyPerDropzoneScoringTypeArray[2]);
         | 
| 53 54 | 
             
                        dragAndDropIntoCategoriesPage.steps.verifyPenaltyPointsForEachIncorrectDropzone('');
         | 
| 54 55 | 
             
                        utilities.verifyInnerText(dragAndDropIntoCategoriesPage.penaltyPointsForEachIncorrectOptionOrDropzoneLabel(), 'Penalty points for each incorrect dropzone');
         | 
| 55 56 | 
             
                    });
         | 
| 56 57 |  | 
| 57 | 
            -
                     | 
| 58 | 
            +
                    //need to remove comment once this https://redmine.zeuslearning.com/issues/578881 is resolved
         | 
| 59 | 
            +
                    it.skip('User should be able to allot \'Penalty points for each incorrect dropzone\'', () => {
         | 
| 58 60 | 
             
                        dragAndDropIntoCategoriesPage.steps.allotPenaltyPointsForEachIncorrectDropzone(5);
         | 
| 59 61 | 
             
                    });
         | 
| 60 62 |  | 
| @@ -287,7 +287,7 @@ describe('Create question page - Essay Response: Create custom category', () => | |
| 287 287 | 
             
                        });
         | 
| 288 288 |  | 
| 289 289 | 
             
                        it('When a user de-selects a symbol by clicking on it from the \'Selected symbols:\' section then the symbol should get deselected from the category as well as the \'Selected symbols:\' section', () => {
         | 
| 290 | 
            -
                            createCustomCategoryFlyout.steps.deselectSymbolInSelectedSymbolsSection(`${equationEditorCategoriesAndSymbols.greek.symbols.varEpsilon. | 
| 290 | 
            +
                            createCustomCategoryFlyout.steps.deselectSymbolInSelectedSymbolsSection(`${equationEditorCategoriesAndSymbols.greek.symbols.varEpsilon.ariaLabel}`);
         | 
| 291 291 | 
             
                            createCustomCategoryFlyout.steps.verifySymbolIsNotSelectedInCreateCustomCategoryFlyout(`${equationEditorCategoriesAndSymbols['greek'].displayName}`, `${equationEditorCategoriesAndSymbols.greek.symbols.varEpsilon.ariaLabel}`);
         | 
| 292 292 | 
             
                        });
         | 
| 293 293 |  | 
| @@ -297,10 +297,11 @@ describe('Create question page - Essay Response: Create custom category', () => | |
| 297 297 | 
             
                            createCustomCategoryFlyout.steps.clickOnCancelButton();
         | 
| 298 298 | 
             
                            createCustomCategoryFlyout.steps.openCreateCustomCategoryFlyout();
         | 
| 299 299 | 
             
                            createCustomCategoryFlyout.steps.checkCategoryAccordionCheckbox('Other Symbols');
         | 
| 300 | 
            +
                            createCustomCategoryFlyout.steps.expandCategoryAccordion('Other Symbols');
         | 
| 300 301 | 
             
                            otherSymbolsArray.forEach((symbol) => {
         | 
| 301 302 | 
             
                                createCustomCategoryFlyout.steps.deselectSymbolInSelectedSymbolsSection(symbol);
         | 
| 302 303 | 
             
                            });
         | 
| 303 | 
            -
                            createCustomCategoryFlyout.steps.verifyUncheckedStateOfCategoryAccordionCheckbox( | 
| 304 | 
            +
                            createCustomCategoryFlyout.steps.verifyUncheckedStateOfCategoryAccordionCheckbox('Other Symbols');
         | 
| 304 305 | 
             
                        });
         | 
| 305 306 | 
             
                    });
         | 
| 306 307 | 
             
                }
         | 
| @@ -27,14 +27,16 @@ describe('Create item page - Fill in the gaps with drag and drop: Dropzone setti | |
| 27 27 | 
             
                        utilities.verifyInnerText(fillInTheGapsDragAndDropPage.responseAreaSettingsWidthLabel(), 'Width (px)');
         | 
| 28 28 | 
             
                        utilities.verifyElementVisibilityState(fillInTheGapsDragAndDropPage.responseAreaSettingsWidthLabel(), 'visible');
         | 
| 29 29 | 
             
                        utilities.verifyElementVisibilityState(fillInTheGapsDragAndDropPage.responseAreaSettingsWidthInputField(), 'visible');
         | 
| 30 | 
            -
                         | 
| 30 | 
            +
                        //need to remove comment after https://redmine.zeuslearning.com/issues/573051 is resolved
         | 
| 31 | 
            +
                        // fillInTheGapsDragAndDropPage.steps.verifyResponseAreaSettingsWidthInputFieldValue(160);
         | 
| 31 32 | 
             
                        utilities.verifyInnerText(fillInTheGapsDragAndDropPage.responseAreaSettingsHeightLabel(), 'Height (px)');
         | 
| 32 33 | 
             
                        utilities.verifyElementVisibilityState(fillInTheGapsDragAndDropPage.responseAreaSettingsHeightLabel(), 'visible');
         | 
| 33 34 | 
             
                        utilities.verifyElementVisibilityState(fillInTheGapsDragAndDropPage.responseAreaSettingsHeightInputField(), 'visible');
         | 
| 34 35 | 
             
                        fillInTheGapsDragAndDropPage.steps.verifyResponseAreaSettingsHeightInputFieldValue(54);
         | 
| 35 36 | 
             
                    });
         | 
| 36 37 |  | 
| 37 | 
            -
                     | 
| 38 | 
            +
                    //need to remove skip after https://redmine.zeuslearning.com/issues/573051 is resolved
         | 
| 39 | 
            +
                    it.skip('The minimum allowed value for \'Width (px)\' and \'Height (px)\' input fields should be \'80\' and \'32\' respectively', () => {
         | 
| 38 40 | 
             
                        fillInTheGapsDragAndDropPage.steps.verifyMinimumValueOfWidthAndHeightInputFields();
         | 
| 39 41 | 
             
                    });
         | 
| 40 42 |  | 
| @@ -43,7 +45,8 @@ describe('Create item page - Fill in the gaps with drag and drop: Dropzone setti | |
| 43 45 | 
             
                        fillInTheGapsDragAndDropPage.steps.verifyResponseAreaSettingsWidthInputFieldValue(80);
         | 
| 44 46 | 
             
                    });
         | 
| 45 47 |  | 
| 46 | 
            -
                     | 
| 48 | 
            +
                    //need to skip comment after https://redmine.zeuslearning.com/issues/573051 is resolved
         | 
| 49 | 
            +
                    it.skip('When user gives an input lower than \'32\' in \'Height (px)\' input field, then the input field value should be automatically set to 32', () => {
         | 
| 47 50 | 
             
                        fillInTheGapsDragAndDropPage.steps.addInputToHeightInputField(30);
         | 
| 48 51 | 
             
                        fillInTheGapsDragAndDropPage.steps.verifyResponseAreaSettingsHeightInputFieldValue(32);
         | 
| 49 52 | 
             
                    });
         | 
| @@ -75,7 +78,8 @@ describe('Create item page - Fill in the gaps with drag and drop: Dropzone setti | |
| 75 78 | 
             
                        utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'notExist');
         | 
| 76 79 | 
             
                        cy.log('Reopening dropzone settings popup and verifying changes not retained');
         | 
| 77 80 | 
             
                        fillInTheGapsDragAndDropPage.steps.clickOnResponseAreaSettingsButton(0);
         | 
| 78 | 
            -
                         | 
| 81 | 
            +
                        //need to remove comment after https://redmine.zeuslearning.com/issues/573051 is resolved
         | 
| 82 | 
            +
                        // fillInTheGapsDragAndDropPage.steps.verifyResponseAreaSettingsWidthInputFieldValue(160);
         | 
| 79 83 | 
             
                        fillInTheGapsDragAndDropPage.steps.verifyResponseAreaSettingsHeightInputFieldValue(54);
         | 
| 80 84 | 
             
                        fillInTheGapsDragAndDropPage.steps.verifyWordWrapCheckboxUnchecked();
         | 
| 81 85 | 
             
                        fillInTheGapsDragAndDropPage.steps.verifySetForAllDropzoneCheckboxChecked();
         | 
| @@ -208,7 +208,7 @@ describe('Create item page - Fill in the gaps over image with drag and drop: Par | |
| 208 208 | 
             
                        fillInTheGapsOverImageDragAndDropPage.steps.allotPoints(23);
         | 
| 209 209 | 
             
                        fillInTheGapsOverImageDragAndDropPage.steps.switchToPreviewTab();
         | 
| 210 210 | 
             
                        fillInTheGapsOverImageDragAndDropPage.steps.clickAndDropOptionInDropzonePreviewTab({ 'Roots': 0, 'Stem': 1, 'Leaves': 2 });
         | 
| 211 | 
            -
                        fillInTheGapsOverImageDragAndDropPage.steps.verifyPreviewScore(7. | 
| 211 | 
            +
                        fillInTheGapsOverImageDragAndDropPage.steps.verifyPreviewScore(7.6667, 23);
         | 
| 212 212 | 
             
                        fillInTheGapsOverImageDragAndDropPage.steps.switchToGradingView();
         | 
| 213 213 | 
             
                        fillInTheGapsOverImageDragAndDropPage.steps.verifyIncorrectOptionIcon(0);
         | 
| 214 214 | 
             
                        fillInTheGapsOverImageDragAndDropPage.steps.verifyIncorrectOptionIcon(1);
         | 
| @@ -38,7 +38,7 @@ describe('Create Item page - Fill in the gaps over image with text: Style and la | |
| 38 38 |  | 
| 39 39 | 
             
                    fillInTheGapsOverImageTextPage.tests.verifyFillColorSectionContents();
         | 
| 40 40 |  | 
| 41 | 
            -
                    fillInTheGapsOverImageTextPage.tests. | 
| 41 | 
            +
                    fillInTheGapsOverImageTextPage.tests.verifyBorderColorSectiaonContents();
         | 
| 42 42 |  | 
| 43 43 | 
             
                    fillInTheGapsOverImageTextPage.tests.verifyBorderStyleSectionContents('Dashed');
         | 
| 44 44 |  | 
| @@ -468,6 +468,7 @@ describe('Create item page - Grid fill: Customize layout section - \'Shade the c | |
| 468 468 | 
             
                        gridFillPage.steps.switchToEditTab();
         | 
| 469 469 | 
             
                        gridFillPage.steps.selectGridBordersToggleButton('None');
         | 
| 470 470 | 
             
                        gridFillPage.steps.switchToPreviewTab();
         | 
| 471 | 
            +
                        gridFillPage.steps.switchToStudentView();
         | 
| 471 472 | 
             
                        gridFillPage.steps.verifyCellBorderNotDisplayedForNoneToggleButtonInPreviewTab();
         | 
| 472 473 | 
             
                    });
         | 
| 473 474 |  | 
| @@ -64,7 +64,7 @@ describe('Create item page - List ordering: Minimum scoring, Penalty scoring, Ro | |
| 64 64 |  | 
| 65 65 | 
             
                    it('When the user deletes an option, then \'points for each incorrect option\' should get updated accordingly', () => {
         | 
| 66 66 | 
             
                        listOrderingPage.steps.deleteOption(0);
         | 
| 67 | 
            -
                        listOrderingPage.steps.verifyPenaltyPointsForEachIncorrectOption(1. | 
| 67 | 
            +
                        listOrderingPage.steps.verifyPenaltyPointsForEachIncorrectOption(1.6667);
         | 
| 68 68 | 
             
                    });
         | 
| 69 69 |  | 
| 70 70 | 
             
                    it('When the user adds a new option, then \'points for each incorrect option\' should get updated accordingly', () => {
         | 
    
        package/cypress/e2e/ILC/Matching/Scoring/allOrNothingWithCorrectPointsEqualToAlternativePoints.js
    CHANGED
    
    | @@ -116,6 +116,7 @@ describe('Create item page - Matching: All or nothing with alternative answers', | |
| 116 116 | 
             
                        matchingPage.steps.verifyCorrectAnswerSectionNotExists();*/
         | 
| 117 117 | 
             
                    });
         | 
| 118 118 |  | 
| 119 | 
            +
                    //Failing due to https://redmine.zeuslearning.com/issues/579028 
         | 
| 119 120 | 
             
                    it('When the user attempts the question partially correct with all the responses correct as per the alternative accordion but one response incomplete, then the user should be awarded 0 points and on switching to \'Grading\' view, correct icon should be displayed besides the response from the correct accordion and alternative accordion and  no icon should be displayed beside unattempted response, a status message with text \'Your answer is incorrect\' and correct answer section with all correct answers from the correct accordion along with dropzone cell numeration should be displayed', () => {
         | 
| 120 121 | 
             
                        matchingPage.steps.resetQuestionPreview();
         | 
| 121 122 | 
             
                        matchingPage.steps.clickAndDropOptionInDropzonePreviewTab([{ optionText: 'Bear', dropzoneIndex: 0 }, { optionText: 'Cat', dropzoneIndex: 2 }]);
         | 
| @@ -210,7 +210,7 @@ describe('Create item page - Multiple selection grid: Partial different weights' | |
| 210 210 | 
             
                        multipleSelectionGridPage.steps.allotTotalPenaltyPoints(4);
         | 
| 211 211 | 
             
                        multipleSelectionGridPage.steps.switchToPreviewTab();
         | 
| 212 212 | 
             
                        multipleSelectionGridPage.steps.selectOptionsForAllQuestionStemsInPreviewTab([{ row: 1, column: 1 }, { row: 2, column: 0 }, { row: 3, column: 2 }]);
         | 
| 213 | 
            -
                        multipleSelectionGridPage.steps.verifyPreviewScore(- | 
| 213 | 
            +
                        multipleSelectionGridPage.steps.verifyPreviewScore(-3, 24);
         | 
| 214 214 | 
             
                    });
         | 
| 215 215 |  | 
| 216 216 | 
             
                    it('When the user attempts the question correctly but with an incorrect row, then penalty points should get deducted from the awarded points', () => {
         | 
| @@ -16,7 +16,18 @@ describe('Create question page - Short text response: Question Instructions, Set | |
| 16 16 | 
             
                        cy.barsPreLoaderWait();
         | 
| 17 17 | 
             
                    });
         | 
| 18 18 |  | 
| 19 | 
            -
                     | 
| 19 | 
            +
                    it('When user has not entered any text in the Question instructions input field in the \'Edit\' tab then nothing should be displayed in the \'Preview\' tab', () => {
         | 
| 20 | 
            +
                        shortTextResponsePage.steps.switchToPreviewTab();
         | 
| 21 | 
            +
                        //Failing due to https://redmine.zeuslearning.com/issues/553382
         | 
| 22 | 
            +
                        utilities.verifyElementVisibilityState(shortTextResponsePage.questionInstructionsText(), 'notExist')
         | 
| 23 | 
            +
                    });
         | 
| 24 | 
            +
             | 
| 25 | 
            +
                    it('When the user specifies question instructions, then the added question instructions should be displayed in the \'Preview\' tab', () => {
         | 
| 26 | 
            +
                        shortTextResponsePage.steps.switchToEditTab();
         | 
| 27 | 
            +
                        shortTextResponsePage.steps.addTextInQuestionInstructionsInputField('Which of the following is the major contributor to increased carbon dioxide levels because of urbanization? Select your answer from the options below.');
         | 
| 28 | 
            +
                        shortTextResponsePage.steps.switchToPreviewTab();
         | 
| 29 | 
            +
                        utilities.verifyTextContent(utilities.getNthElement(shortTextResponsePage.questionInstructionsText(), 0), 'Which of the following is the major contributor to increased carbon dioxide levels because of urbanization? Select your answer from the options below.');
         | 
| 30 | 
            +
                    });
         | 
| 20 31 | 
             
                });
         | 
| 21 32 |  | 
| 22 33 | 
             
                describe('Question Instructions input field - Preview tab', () => {
         | 
| @@ -71,7 +71,8 @@ describe('Multiple selection grid - Additional settings', () => { | |
| 71 71 | 
             
                        singleSelectionGridPage.steps.addInputToRowInputStepper(2);
         | 
| 72 72 | 
             
                    });
         | 
| 73 73 |  | 
| 74 | 
            -
                     | 
| 74 | 
            +
                    //need to remove skip after https://redmine.zeuslearning.com/issues/574176 is resolved
         | 
| 75 | 
            +
                    // singleSelectionGridPage.tests.verifyARIALabelContentsAndFunctionalityEditTab();
         | 
| 75 76 | 
             
                });
         | 
| 76 77 |  | 
| 77 78 | 
             
                describe('Additional settings: ARIA label for row headers - functionality in preview tab', () => {
         | 
| @@ -84,6 +85,7 @@ describe('Multiple selection grid - Additional settings', () => { | |
| 84 85 | 
             
                        singleSelectionGridPage.steps.switchToPreviewTab();
         | 
| 85 86 | 
             
                    });
         | 
| 86 87 |  | 
| 87 | 
            -
                     | 
| 88 | 
            +
                    //need to remove skip after https://redmine.zeuslearning.com/issues/574176 is resolved
         | 
| 89 | 
            +
                    // singleSelectionGridPage.tests.verifyARIALabelFunctionalityPreviewTab();
         | 
| 88 90 | 
             
                });
         | 
| 89 91 | 
             
            });
         | 
| @@ -106,7 +106,8 @@ describe('Create item page - Text entry math: All or nothing scoring', () => { | |
| 106 106 | 
             
                        // textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
         | 
| 107 107 | 
             
                    });
         | 
| 108 108 |  | 
| 109 | 
            -
                     | 
| 109 | 
            +
                    //Need to remove skip once https://redmine.zeuslearning.com/issues/562013 is resolved
         | 
| 110 | 
            +
                    it.skip('When the user attempts the question using correct greater than comparison for polynomials using parenthesis then it should be treated as correct', () => {
         | 
| 110 111 | 
             
                        textEntryMathPage.steps.resetQuestionPreview();
         | 
| 111 112 | 
             
                        textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
         | 
| 112 113 | 
             
                        equationEditorFlyout.steps.enterTextInPreviewInputField('6i>i+2i');
         | 
| @@ -126,7 +127,8 @@ describe('Create item page - Text entry math: All or nothing scoring', () => { | |
| 126 127 | 
             
                        // textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
         | 
| 127 128 | 
             
                    });
         | 
| 128 129 |  | 
| 129 | 
            -
                     | 
| 130 | 
            +
                    //Need to remove skip once https://redmine.zeuslearning.com/issues/562013 is resolved
         | 
| 131 | 
            +
                    it.skip('When the user attempts the question using correct equal to comparison for polynomials using parenthesis then it should be treated as correct', () => {
         | 
| 130 132 | 
             
                        textEntryMathPage.steps.resetQuestionPreview();
         | 
| 131 133 | 
             
                        textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
         | 
| 132 134 | 
             
                        equationEditorFlyout.steps.enterTextInPreviewInputField('2(3x)y');
         | 
| @@ -354,7 +356,8 @@ describe('Create item page - Text entry math: All or nothing scoring', () => { | |
| 354 356 | 
             
                        // textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
         | 
| 355 357 | 
             
                    });
         | 
| 356 358 |  | 
| 357 | 
            -
                     | 
| 359 | 
            +
                    //Need to remove skip once https://redmine.zeuslearning.com/issues/562013 is resolved
         | 
| 360 | 
            +
                    it.skip('When the user attempts the question using addition of matrices then it should be treated as correct', () => {
         | 
| 358 361 | 
             
                        textEntryMathPage.steps.resetQuestionPreview();
         | 
| 359 362 | 
             
                        textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
         | 
| 360 363 | 
             
                        equationEditorFlyout.steps.enterEquation([{ categoryName: 'matrices', symbolName: ['twoByTwoMatrixBoundedBrackets'] }]);
         | 
| @@ -528,7 +531,8 @@ describe('Create item page - Text entry math: All or nothing scoring', () => { | |
| 528 531 | 
             
                        // textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
         | 
| 529 532 | 
             
                    });
         | 
| 530 533 |  | 
| 531 | 
            -
                     | 
| 534 | 
            +
                    //Need to remove skip once https://redmine.zeuslearning.com/issues/562013 is resolved
         | 
| 535 | 
            +
                    it.skip('When the user attempts the question using simplified trigonometric functions then it should be treated as incorrect', () => {
         | 
| 532 536 | 
             
                        textEntryMathPage.steps.resetQuestionPreview();
         | 
| 533 537 | 
             
                        textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
         | 
| 534 538 | 
             
                        equationEditorFlyout.steps.enterEquation([{ categoryName: 'trig', symbolName: ['sin'] }, { categoryName: 'intermediate', symbolName: ['square', 'x'] }, { categoryName: 'numPad', symbolName: ['add'] }, { categoryName: 'trig', symbolName: ['cos'] }, { categoryName: 'intermediate', symbolName: ['square', 'x'] }]);
         | 
| @@ -573,7 +577,8 @@ describe('Create item page - Text entry math: All or nothing scoring', () => { | |
| 573 577 | 
             
                        // textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
         | 
| 574 578 | 
             
                    });
         | 
| 575 579 |  | 
| 576 | 
            -
                     | 
| 580 | 
            +
                    //Need to remove skip once https://redmine.zeuslearning.com/issues/562013 is resolved
         | 
| 581 | 
            +
                    it.skip('When the user attempts the question using integration then it should be treated as correct', () => {
         | 
| 577 582 | 
             
                        textEntryMathPage.steps.resetQuestionPreview();
         | 
| 578 583 | 
             
                        textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
         | 
| 579 584 | 
             
                        equationEditorFlyout.steps.enterEquation([{ categoryName: 'calculus', symbolName: ['integral'] }, { categoryName: 'intermediate', symbolName: ['x'] }]);
         | 
| @@ -584,7 +589,8 @@ describe('Create item page - Text entry math: All or nothing scoring', () => { | |
| 584 589 | 
             
                        // textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
         | 
| 585 590 | 
             
                    });
         | 
| 586 591 |  | 
| 587 | 
            -
                     | 
| 592 | 
            +
                    //Need to remove skip once https://redmine.zeuslearning.com/issues/562013 is resolved
         | 
| 593 | 
            +
                    it.skip('When the user attempts the question using epsilon then it should be treated as correct', () => {
         | 
| 588 594 | 
             
                        textEntryMathPage.steps.resetQuestionPreview();
         | 
| 589 595 | 
             
                        textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
         | 
| 590 596 | 
             
                        equationEditorFlyout.steps.enterEquation([{ categoryName: 'greek', symbolName: ['varEpsilon'] }]);
         | 
| @@ -633,7 +639,8 @@ describe('Create item page - Text entry math: All or nothing scoring', () => { | |
| 633 639 | 
             
                        // textEntryMathPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
         | 
| 634 640 | 
             
                    });
         | 
| 635 641 |  | 
| 636 | 
            -
                     | 
| 642 | 
            +
                    //Need to remove skip once https://redmine.zeuslearning.com/issues/562013 is resolved
         | 
| 643 | 
            +
                    it.skip('When the user attempts the question using arithmetic square operation in un-simplified format then it should be treated as incorrect', () => {
         | 
| 637 644 | 
             
                        textEntryMathPage.steps.resetQuestionPreview();
         | 
| 638 645 | 
             
                        textEntryMathPage.steps.focusInResponseAnswerInputFieldPreviewTab(0);
         | 
| 639 646 | 
             
                        equationEditorFlyout.steps.enterEquation([{ categoryName: 'numPad', symbolName: ['three'] }, { categoryName: 'intermediate', symbolName: ['square'] }]);
         | 
| @@ -320,9 +320,9 @@ describe('Create item page - Text entry math: Question instructions, Options sec | |
| 320 320 | 
             
                        textEntryMathWithImagePage.steps.switchToEditTab();
         | 
| 321 321 | 
             
                        textEntryMathWithImagePage.steps.selectCanvasMenuButton('Select text container');
         | 
| 322 322 | 
             
                        textEntryMathWithImagePage.steps.selectResponseArea(0);
         | 
| 323 | 
            -
                        textEntryMathWithImagePage.steps.selectResponseAreaPointerStyle(textContainerPointerStyles[ | 
| 323 | 
            +
                        textEntryMathWithImagePage.steps.selectResponseAreaPointerStyle(textContainerPointerStyles[8]);
         | 
| 324 324 | 
             
                        textEntryMathWithImagePage.steps.switchToPreviewTab();
         | 
| 325 | 
            -
                        textEntryMathWithImagePage.steps.verifyResponsePointerStyleInPreviewTab(textContainerPointerStyles[ | 
| 325 | 
            +
                        textEntryMathWithImagePage.steps.verifyResponsePointerStyleInPreviewTab(textContainerPointerStyles[8], 0);
         | 
| 326 326 | 
             
                        textEntryMathWithImagePage.steps.verifyResponsePointerStyleInPreviewTab(textContainerPointerStyles[0], 1);
         | 
| 327 327 | 
             
                    });
         | 
| 328 328 |  | 
| @@ -342,7 +342,7 @@ describe('Create item page - Text selection: Partial different weights', () => { | |
| 342 342 | 
             
                        textSelectionPage.steps.allotTotalPenaltyPoints(4);
         | 
| 343 343 | 
             
                        textSelectionPage.steps.switchToPreviewTab();
         | 
| 344 344 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[3]);
         | 
| 345 | 
            -
                        textSelectionPage.steps.verifyPreviewScore(- | 
| 345 | 
            +
                        textSelectionPage.steps.verifyPreviewScore(-1, 20);
         | 
| 346 346 | 
             
                    });
         | 
| 347 347 |  | 
| 348 348 | 
             
                    it('When the user attempts the question correctly along with an incorrect option, then penalty points should get deducted from the awarded points', () => {
         | 
| @@ -384,7 +384,7 @@ describe('Create item page - Text selection: Partial different weights', () => { | |
| 384 384 | 
             
                        textSelectionPage.steps.allotPenaltyPointsForEachIncorrectOption(4);
         | 
| 385 385 | 
             
                        textSelectionPage.steps.switchToPreviewTab();
         | 
| 386 386 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[3]);
         | 
| 387 | 
            -
                        textSelectionPage.steps.verifyPreviewScore(- | 
| 387 | 
            +
                        textSelectionPage.steps.verifyPreviewScore(-4, 20);
         | 
| 388 388 | 
             
                    });
         | 
| 389 389 |  | 
| 390 390 | 
             
                    it('When the user attempts the question correctly along with an incorrect option, then penalty points should get deducted from the awarded points', () => {
         | 
| @@ -393,7 +393,7 @@ describe('Create item page - Text selection: Partial different weights', () => { | |
| 393 393 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[1]);
         | 
| 394 394 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[2]);
         | 
| 395 395 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[3]);
         | 
| 396 | 
            -
                        textSelectionPage.steps.verifyPreviewScore( | 
| 396 | 
            +
                        textSelectionPage.steps.verifyPreviewScore(16, 20);
         | 
| 397 397 | 
             
                    });
         | 
| 398 398 |  | 
| 399 399 | 
             
                    it('When the user attempts the question correctly along with multiple incorrect options, then penalty points for each incorrect answer should get deducted from the awarded points', () => {
         | 
| @@ -423,7 +423,7 @@ describe('Create item page - Text selection: Partial different weights', () => { | |
| 423 423 | 
             
                        textSelectionPage.steps.checkAutomaticallySetPenaltyPointsCheckbox();
         | 
| 424 424 | 
             
                        textSelectionPage.steps.switchToPreviewTab();
         | 
| 425 425 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[3]);
         | 
| 426 | 
            -
                        textSelectionPage.steps.verifyPreviewScore(- | 
| 426 | 
            +
                        textSelectionPage.steps.verifyPreviewScore(-5, 20);
         | 
| 427 427 | 
             
                    });
         | 
| 428 428 |  | 
| 429 429 | 
             
                    it('When the user attempts the question correctly along with an incorrect option, then penalty points should get deducted from the awarded points', () => {
         | 
| @@ -432,7 +432,7 @@ describe('Create item page - Text selection: Partial different weights', () => { | |
| 432 432 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[1]);
         | 
| 433 433 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[2]);
         | 
| 434 434 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[3]);
         | 
| 435 | 
            -
                        textSelectionPage.steps.verifyPreviewScore( | 
| 435 | 
            +
                        textSelectionPage.steps.verifyPreviewScore(15, 20);
         | 
| 436 436 | 
             
                    });
         | 
| 437 437 |  | 
| 438 438 | 
             
                    it('When the user attempts the question correctly along with multiple incorrect options, then penalty points for each incorrect answer should get deducted from the awarded points', () => {
         | 
| @@ -440,7 +440,7 @@ describe('Create item page - Text selection: Partial different weights', () => { | |
| 440 440 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[0]);
         | 
| 441 441 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[1]);
         | 
| 442 442 | 
             
                        textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[3]);
         | 
| 443 | 
            -
                        textSelectionPage.steps.verifyPreviewScore( | 
| 443 | 
            +
                        textSelectionPage.steps.verifyPreviewScore(10, 20);
         | 
| 444 444 | 
             
                    });
         | 
| 445 445 |  | 
| 446 446 | 
             
                    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', () => {
         | 
| @@ -4,7 +4,7 @@ import utilities from "../../../support/helpers/utilities"; | |
| 4 4 |  | 
| 5 5 | 
             
            const fontSizeDropdownOptions = ['Tiny', 'Small', 'Default', 'Normal', 'Big', 'Huge'];
         | 
| 6 6 | 
             
            const fontSizes = ['12px', '14px', '16px', '18px', '22px', '26px'];
         | 
| 7 | 
            -
            const paragraphTextArray = ['All animals have a unique role to play | 
| 7 | 
            +
            const paragraphTextArray = ['All animals have a unique role to play.', 'A lot of animal species exist in both, land and water. As a result, each of them has a purpose for their existence.', 'The animals divide into specific groups in biology. Amphibians are those which can live on both, land and water.', 'Mammals are ones which give birth to their offspring in the womb and have mammary glands.'];
         | 
| 8 8 |  | 
| 9 9 | 
             
            describe('Create Item page - Text selection : Additional settings', () => {
         | 
| 10 10 | 
             
                before(() => {
         | 
| @@ -100,7 +100,7 @@ describe('Create Item page - Text selection : Additional settings', () => { | |
| 100 100 | 
             
                        });
         | 
| 101 101 | 
             
                    });
         | 
| 102 102 | 
             
                });
         | 
| 103 | 
            -
             | 
| 103 | 
            +
             | 
| 104 104 | 
             
                describe('Additional settings: Accessibility section', () => {
         | 
| 105 105 | 
             
                    abortEarlySetup();
         | 
| 106 106 | 
             
                    before(() => {
         | 
| @@ -6,7 +6,7 @@ let previewContentViews = ['Question preview', 'Item view', 'Item preview', 'Stu | |
| 6 6 | 
             
            const views = utilities.getViews(previewContentViews);
         | 
| 7 7 | 
             
            var itemReferenceID = "";
         | 
| 8 8 |  | 
| 9 | 
            -
            const paragraphTextArray = ['All animals have a unique role to play in maintaining the balance of nature.', 'A lot of animal species exist in both, land and water. As a result, each of them has a purpose | 
| 9 | 
            +
            const paragraphTextArray = ['All animals have a unique role to play in maintaining the balance of nature.', 'A lot of animal species exist in both, land and water. As a result, each of them has a purpose.', 'The animals divide into specific groups in biology. Amphibians are those which can live on both, land and water.', 'Mammals are ones which give birth to their offspring in the womb and have mammary glands.'];
         | 
| 10 10 |  | 
| 11 11 | 
             
            describe('Create item page - Text selection : Preview contents', () => {
         | 
| 12 12 | 
             
                before(() => {
         | 
| @@ -115,8 +115,8 @@ describe('Create Item page - Charts - Dot: All or nothing ', () => { | |
| 115 115 | 
             
                            });
         | 
| 116 116 | 
             
                        };
         | 
| 117 117 |  | 
| 118 | 
            -
                        // | 
| 119 | 
            -
                        it('When the user selects \'Grading\' view without attempting the question, then by default correct dot column should have correct icons, incorrect dot column should have incorrect icons, the correct answer should be displayed in the correct answer section number line axis and correct/incorrect status message should not be displayed', () => {
         | 
| 118 | 
            +
                        //Remove the skip after https://redmine.zeuslearning.com/issues/570904 is resolved
         | 
| 119 | 
            +
                        it.skip('When the user selects \'Grading\' view without attempting the question, then by default correct dot column should have correct icons, incorrect dot column should have incorrect icons, the correct answer should be displayed in the correct answer section number line axis and correct/incorrect status message should not be displayed', () => {
         | 
| 120 120 | 
             
                            if (view === 'Grading view') {
         | 
| 121 121 | 
             
                                studentViewPage.steps.submitResponse();
         | 
| 122 122 | 
             
                                utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
         | 
| @@ -90,6 +90,7 @@ const steps = { | |
| 90 90 | 
             
                ...dialogBoxBase.steps,
         | 
| 91 91 | 
             
                ...additionalSettingsPanel.steps,
         | 
| 92 92 | 
             
                ...selectQuestionResourceToolPage.steps,
         | 
| 93 | 
            +
                ...commonComponents.steps,
         | 
| 93 94 | 
             
                /**
         | 
| 94 95 | 
             
                 * @description set the bar height/value in the select chart type section chart
         | 
| 95 96 | 
             
                 * @param {Object} barProperties - The properties and changes to be done on the bar
         | 
| @@ -96,6 +96,7 @@ const selectors = { | |
| 96 96 | 
             
                dotIconCorrectAnswerSection: () => cy.get('.dot-icon'),
         | 
| 97 97 | 
             
                numberLineAxisCorrectAnswerSection: () => cy.get('[class*="question-preview-wrapper"] .number-line-wrapper').eq(0),
         | 
| 98 98 | 
             
                labelsNumberLineAxisCorrectAnswerSection: () => cy.get('[class*="question-preview-wrapper"] [class*="DotPlotChartstyles__BottomWrapper"]').eq(0).find('.label-wrapper [class*="DotPlotChartstyles__Label"]'),
         | 
| 99 | 
            +
                pointsInputField: () => cy.get('[class*="points-wrapper"] .points-input-field input'),
         | 
| 99 100 | 
             
            }
         | 
| 100 101 |  | 
| 101 102 | 
             
            const steps = {
         | 
| @@ -112,6 +113,7 @@ const steps = { | |
| 112 113 | 
             
                ...additionalSettingsPanel.steps,
         | 
| 113 114 | 
             
                ...selectQuestionResourceToolPage.steps,
         | 
| 114 115 | 
             
                ...dialogBoxBase.steps,
         | 
| 116 | 
            +
                ...commonComponents.steps,
         | 
| 115 117 |  | 
| 116 118 | 
             
                //select chart type
         | 
| 117 119 | 
             
                selectDotPlot: () => {
         | 
| @@ -24,6 +24,7 @@ const selectors = { | |
| 24 24 | 
             
                //specify correct answer section
         | 
| 25 25 | 
             
                specifyCorrectAnswerPoint: () => cy.get('.ngie-accordion .ngie-chart-point'),
         | 
| 26 26 | 
             
                specifyCorrectAnswerPointLabel: () => cy.get('.ngie-accordion [class*="ChartGridstyle__NameDiv-"]'),
         | 
| 27 | 
            +
                specifyCorrectAnswerLabelPoints: () => cy.get('.ngie-accordion [class*="input-field-label"]'),
         | 
| 27 28 |  | 
| 28 29 | 
             
                //Preview tab
         | 
| 29 30 | 
             
                previewTabPoint: () => cy.get('[class*="question-preview-wrapper"] [class*="ChartsPreviewstyles__PreviewWrapper"] .ngie-chart-point'),
         | 
| @@ -47,6 +48,8 @@ const steps = { | |
| 47 48 | 
             
                ...chartsCommonComponent.steps,
         | 
| 48 49 | 
             
                ...autoScoredSpecifyCorrectAnswerSection.steps,
         | 
| 49 50 | 
             
                ...correctIncorrectAnswerLabelComponent.steps,
         | 
| 51 | 
            +
                ...commonComponents.steps,
         | 
| 52 | 
            +
                
         | 
| 50 53 | 
             
                /**
         | 
| 51 54 | 
             
                 * @description set the point height/value in the select chart type section chart
         | 
| 52 55 | 
             
                 * @param {Object} pointProperties - The properties and changes to be done on the point
         | 
| @@ -260,6 +263,9 @@ const steps = { | |
| 260 263 | 
             
                *@param {number} pointIndex Index of the point to be deleted
         | 
| 261 264 | 
             
                */
         | 
| 262 265 | 
             
                deletePointInSpecifyCorrectAnswerSection: (pointIndex) => {
         | 
| 266 | 
            +
                    chartsLinePage.specifyCorrectAnswerPoint()
         | 
| 267 | 
            +
                        .eq(pointIndex)
         | 
| 268 | 
            +
                        .trigger('mouseover', { force: true });
         | 
| 263 269 | 
             
                    utilities.triggerMouseover(utilities.getNthElement(chartsLinePage.specifyCorrectAnswerPoint(), pointIndex))
         | 
| 264 270 | 
             
                    chartsLinePage.barAndPointTooltipDeleteButton()
         | 
| 265 271 | 
             
                        .click();
         | 
| @@ -479,6 +485,8 @@ const steps = { | |
| 479 485 | 
             
                    chartsLinePage.steps.addInputToChartLabelPopupInputField(pointLabel);
         | 
| 480 486 | 
             
                    chartsLinePage.steps.saveGraphLabelPopup();
         | 
| 481 487 | 
             
                    utilities.triggerMouseout(utilities.getNthElement(chartsLinePage.specifyCorrectAnswerPoint(), pointIndex));
         | 
| 488 | 
            +
                    cy.log('Need the following click to remove focus from the above element');
         | 
| 489 | 
            +
                    chartsLinePage.specifyCorrectAnswerLabelPoints().click();
         | 
| 482 490 | 
             
                    utilities.verifyInnerText(utilities.getNthElement(chartsLinePage.specifyCorrectAnswerPointLabel(), pointIndex), pointLabel);
         | 
| 483 491 | 
             
                },
         | 
| 484 492 |  | 
| @@ -593,6 +601,9 @@ const tests = { | |
| 593 601 |  | 
| 594 602 | 
             
                    it(`User should be able to delete bar in ${accordionName} accordion and labels for other bars should not change`, () => {
         | 
| 595 603 | 
             
                        utilities.triggerMouseout(utilities.getNthElement(chartsLinePage.selectChartTypePoint(), 0));
         | 
| 604 | 
            +
                        cy.log('Need the following click to remove focus from the above element');
         | 
| 605 | 
            +
                        chartsLinePage.specifyCorrectAnswerLabelPoints()
         | 
| 606 | 
            +
                            .click();
         | 
| 596 607 | 
             
                        steps.deletePointInSpecifyCorrectAnswerSection(1);
         | 
| 597 608 | 
             
                        steps.verifyPointLabelSpecifyCorrectAnswer(0, 'Point 1');
         | 
| 598 609 | 
             
                        steps.verifyPointLabelSpecifyCorrectAnswer(1, 'Point 3');
         | 
| @@ -30,7 +30,9 @@ const selectors = { | |
| 30 30 | 
             
            const steps = {
         | 
| 31 31 | 
             
                expandAdditionalSettings: () => {
         | 
| 32 32 | 
             
                    additionalSettingsPanel.additionalSettingsPanel()
         | 
| 33 | 
            -
                        .click()
         | 
| 33 | 
            +
                        .click();
         | 
| 34 | 
            +
                    cy.log('Need this wait in order for the font size dropdown to render properly');
         | 
| 35 | 
            +
                    cy.wait(2000);
         | 
| 34 36 | 
             
                    additionalSettingsPanel.additionalSettingsPanel()
         | 
| 35 37 | 
             
                        .should('have.attr', 'aria-expanded', 'true');
         | 
| 36 38 | 
             
                },
         | 
| @@ -16,7 +16,8 @@ const selectors = { | |
| 16 16 | 
             
                deleteButton: () => cy.get('button[aria-label*="Delete option"]'),
         | 
| 17 17 | 
             
                tickIconForOptionButtons: () => cy.get('.ngie-toggle-button-tick-icon'),
         | 
| 18 18 | 
             
                errorIcon: () => cy.get('[id="Icon_material-error"]'),
         | 
| 19 | 
            -
                alertMessage: () => cy.get('[role="alert"]:visible')
         | 
| 19 | 
            +
                alertMessage: () => cy.get('[role="alert"]:visible'),
         | 
| 20 | 
            +
                warningIcon: () => cy.get('[class*="WarningIcon"]')
         | 
| 20 21 | 
             
            }
         | 
| 21 22 |  | 
| 22 23 | 
             
            const steps = {
         | 
| @@ -73,6 +74,25 @@ const steps = { | |
| 73 74 | 
             
                verifyDropdownIsCollapsed: () => {
         | 
| 74 75 | 
             
                    utilities.verifyElementVisibilityState(commonComponents.dropdownList(), 'notExist');
         | 
| 75 76 | 
             
                },
         | 
| 77 | 
            +
             | 
| 78 | 
            +
                verifyWarningIconExist: () => {
         | 
| 79 | 
            +
                    utilities.verifyElementVisibilityState(commonComponents.warningIcon(), 'exist');
         | 
| 80 | 
            +
                },
         | 
| 81 | 
            +
             | 
| 82 | 
            +
                verifyWarningIconNotExist: () => {
         | 
| 83 | 
            +
                    utilities.verifyElementVisibilityState(commonComponents.warningIcon(), 'notExist');
         | 
| 84 | 
            +
                },
         | 
| 85 | 
            +
             | 
| 86 | 
            +
                /**
         | 
| 87 | 
            +
                 * This function verifies the tooltip text on the warning icon
         | 
| 88 | 
            +
                 * @param {string} warningMessage message displayed on the tooltip
         | 
| 89 | 
            +
                 */
         | 
| 90 | 
            +
                verifyWarningIconTooltip: (warningMessage) => {
         | 
| 91 | 
            +
                    utilities.hoverOverElement(commonComponents.warningIcon());
         | 
| 92 | 
            +
                    utilities.verifyTextContent(commonComponents.tooltipText(), warningMessage);
         | 
| 93 | 
            +
                    utilities.hoverAwayFromElement(commonComponents.warningIcon());
         | 
| 94 | 
            +
                    utilities.verifyElementVisibilityState(commonComponents.tooltipText(), 'notExist');
         | 
| 95 | 
            +
                }
         | 
| 76 96 | 
             
            }
         | 
| 77 97 |  | 
| 78 98 | 
             
            const tests = {
         | 
| @@ -13,7 +13,13 @@ const selectors = { | |
| 13 13 | 
             
                selectSymbolsToDisplayLabel: () => cy.get('.custom-category-flyout-content .input-label').eq(3),
         | 
| 14 14 | 
             
                categoryNameInputField: () => cy.get('.input-field-custom-category input').eq(0),
         | 
| 15 15 | 
             
                categoryIconInputField: () => cy.get('.input-field-custom-category input').eq(1),
         | 
| 16 | 
            -
                selectedSymbols: () =>  | 
| 16 | 
            +
                selectedSymbols: (ariaLabel = null) => {
         | 
| 17 | 
            +
                    if (ariaLabel) {
         | 
| 18 | 
            +
                        return cy.get(`.EqEditorPopup .icon-button-custom-format[aria-label="${ariaLabel}"]`)
         | 
| 19 | 
            +
                    } else {
         | 
| 20 | 
            +
                        return cy.get('.EqEditorPopup .drag-item-flex-parent-wrapper')
         | 
| 21 | 
            +
                    }
         | 
| 22 | 
            +
                },
         | 
| 17 23 | 
             
                selectedSymbolsWrapper: () => cy.get('.EqEditorPopup.essay-response-grid-wrapper'),
         | 
| 18 24 | 
             
                categoryAccordions: () => cy.get('.accordian-structure-equation-editor .MuiExpansionPanelSummary-root'),
         | 
| 19 25 | 
             
                categoryAccordionIcon: () => cy.get('[class*="expandIcon"]'),
         | 
| @@ -285,15 +291,18 @@ const steps = { | |
| 285 291 | 
             
                },
         | 
| 286 292 |  | 
| 287 293 | 
             
                /**
         | 
| 288 | 
            -
             | 
| 289 | 
            -
             | 
| 290 | 
            -
             | 
| 294 | 
            +
              * Deselect symbol in selected symbols section
         | 
| 295 | 
            +
              * @param {string} symbol aria label of symbol 
         | 
| 296 | 
            +
              */
         | 
| 291 297 | 
             
                deselectSymbolInSelectedSymbolsSection: (symbol) => {
         | 
| 292 | 
            -
                     | 
| 293 | 
            -
             | 
| 294 | 
            -
                         | 
| 298 | 
            +
                    let normalizedLabel;
         | 
| 299 | 
            +
                    if (symbol === 'propTo') {
         | 
| 300 | 
            +
                        normalizedLabel = 'Propto';
         | 
| 301 | 
            +
                    } else {
         | 
| 302 | 
            +
                        normalizedLabel = symbol;
         | 
| 303 | 
            +
                    }
         | 
| 304 | 
            +
                    createCustomCategoryFlyout.selectedSymbols(`${normalizedLabel} selected`)
         | 
| 295 305 | 
             
                        .click();
         | 
| 296 | 
            -
                    utilities.verifyElementVisibilityState(createCustomCategoryFlyout.selectedSymbols().contains(symbol), 'notExist');
         | 
| 297 306 | 
             
                },
         | 
| 298 307 |  | 
| 299 308 | 
             
                /**
         | 
| @@ -10,7 +10,7 @@ const selectors = { | |
| 10 10 | 
             
                noneDragHandleIconButton: () => cy.get('button[aria-label="none drag handle icon"]'),
         | 
| 11 11 | 
             
                fillColorLabel: () => cy.get('.draggable-options-color-wrapper .sub-section-label').eq(0),
         | 
| 12 12 | 
             
                borderColorLabel: () => cy.get('.draggable-options-color-wrapper .sub-section-label').eq(1),
         | 
| 13 | 
            -
                colorBlock: () => cy.get('.draggable-options-color-wrapper .color-picker-block'),
         | 
| 13 | 
            +
                colorBlock: () => cy.get('.draggable-options-color-wrapper .color-grid-wrapper .color-picker-block'),
         | 
| 14 14 | 
             
                editColorButton: () => cy.get('.draggable-options-color-wrapper button[aria-label="edit color"]'),
         | 
| 15 15 | 
             
                borderStyleLabel: () => cy.get('.options-border-style .options-label').eq(1),
         | 
| 16 16 | 
             
                dashedBorderStyleToggleButton: () => cy.get('[data-ngie-testid="dashed-toggle-button"]').eq(1),
         | 
| @@ -7,7 +7,7 @@ const selectors = { | |
| 7 7 | 
             
                componentContainerLabel: () => cy.get('[class*="styles__SectionWrapper"][class*="label"]').eq(0),
         | 
| 8 8 | 
             
                fillColorLabel: () => cy.get('.sub-section-label').eq(0),
         | 
| 9 9 | 
             
                borderColorLabel: () => cy.get('.sub-section-label').eq(1),
         | 
| 10 | 
            -
                colorBlock: () => cy.get('.color-picker-block'),
         | 
| 10 | 
            +
                colorBlock: () => cy.get('.color-grid-wrapper .color-picker-block'),
         | 
| 11 11 | 
             
                editColorButton: () => cy.get('button[aria-label="edit color"]'),
         | 
| 12 12 | 
             
                borderStyleLabel: () => cy.get('.options-border-style .options-label'),
         | 
| 13 13 | 
             
                dashedBorderStyleToggleButton: () => cy.get('[data-ngie-testid="dashed-toggle-button"]').eq(0),
         | 
| @@ -33,7 +33,7 @@ const selectors = { | |
| 33 33 | 
             
                editCellPropertyRow: () => gridQuestionCommonComponent.editCellPropertyTableWrapper().find('[class*="wrapper-row"]'),
         | 
| 34 34 | 
             
                editCellPropertyTableLeftPaginationButton: () => cy.get('.authoring-selection-grid [class*="SelectionGridstyles__PaginationLeftControl"]'),
         | 
| 35 35 | 
             
                editCellPropertyTableRightPaginationButton: () => cy.get('.authoring-selection-grid [class*="SelectionGridstyles__PaginationRightControl"]'),
         | 
| 36 | 
            -
                cellPropertyInputField: () => cy.get('[title*="text"], [class*="SelectionGridstyles__AuthoringHeadingWrapper"] input'),
         | 
| 36 | 
            +
                cellPropertyInputField: () => cy.get('[title*="text"], [class*="SelectionGridstyles__AuthoringHeadingWrapper"] input, [class*="SelectionGridstyles"] input'),
         | 
| 37 37 | 
             
                optionCellPropertyInputField: () => cy.get('[title="Option text or image..."],[placeholder="Option text or image..."]'),
         | 
| 38 38 | 
             
                tableRowSpecifyCorrectAnswerSection: () => cy.get('.correct-answer-accordion [class*="wrapper-row"]'),
         | 
| 39 39 | 
             
                tableRowPreviewTab: () => cy.get('[class*="question-preview-wrapper"] [class*="wrapper-row"]'),
         | 
| @@ -1433,6 +1433,7 @@ const steps = { | |
| 1433 1433 |  | 
| 1434 1434 | 
             
                expandColumnSpacingDropdown: () => {
         | 
| 1435 1435 | 
             
                    gridQuestionCommonComponent.columnSpacingDropdown()
         | 
| 1436 | 
            +
                        .eq(0)
         | 
| 1436 1437 | 
             
                        .click();
         | 
| 1437 1438 | 
             
                },
         | 
| 1438 1439 |  | 
| @@ -2086,11 +2086,11 @@ const steps = { | |
| 2086 2086 | 
             
                 * @param {string} BorderColor selected border color
         | 
| 2087 2087 | 
             
                 */
         | 
| 2088 2088 | 
             
                verifyDefaultStateCSSForGridInPreviewTabTab: (fillColor, BorderColor) => {
         | 
| 2089 | 
            +
                    utilities.hoverAwayFromElement(utilities.getNthElement(gridFillPage.cellInPreviewTab(), 0));
         | 
| 2089 2090 | 
             
                    utilities.verifyCSS(utilities.getNthElement(gridFillPage.cellInPreviewTab(), 0), {
         | 
| 2090 2091 | 
             
                        'background-color': `${fillColor}`,
         | 
| 2091 2092 | 
             
                        'border-color': `${BorderColor}`
         | 
| 2092 2093 | 
             
                    });
         | 
| 2093 | 
            -
                    utilities.triggerMouseout(utilities.getNthElement(gridFillPage.cellInPreviewTab(), 0));
         | 
| 2094 2094 | 
             
                    utilities.verifyCSS(utilities.getNthElement(gridFillPage.cellInPreviewTab(), 14), {
         | 
| 2095 2095 | 
             
                        'background-color': `${fillColor}`,
         | 
| 2096 2096 | 
             
                        'border-color': `${BorderColor}`
         | 
| @@ -56,6 +56,7 @@ const steps = { | |
| 56 56 | 
             
                ...additionalSettingsPanel.steps,
         | 
| 57 57 | 
             
                ...commonComponents.steps,
         | 
| 58 58 | 
             
                ...layoutSectionComponent.steps,
         | 
| 59 | 
            +
                ...createQuestionBasePage.steps,
         | 
| 59 60 | 
             
                navigateToLabelNumberLineTab: () => {
         | 
| 60 61 | 
             
                    numberLineLabelPage.labelNumberLineTab()
         | 
| 61 62 | 
             
                        .click();
         | 
| @@ -129,7 +130,7 @@ const steps = { | |
| 129 130 | 
             
                        .eq(index)
         | 
| 130 131 | 
             
                        .within(() => {
         | 
| 131 132 | 
             
                            numberLineLabelPage.labelInputField()
         | 
| 132 | 
            -
                                .should('have.attr', 'data-cke-editorplaceholder',  | 
| 133 | 
            +
                                .should('have.attr', 'data-cke-editorplaceholder', `Enter label ${index + 1}`);
         | 
| 133 134 | 
             
                            commonComponents.dragHandleButton()
         | 
| 134 135 | 
             
                                .should('exist');
         | 
| 135 136 | 
             
                            numberLineLabelPage.deleteLabelButton()
         | 
| @@ -323,6 +323,7 @@ const steps = { | |
| 323 323 | 
             
                        .clear();
         | 
| 324 324 | 
             
                    shortTextResponsePage.maximumLimitInputField()
         | 
| 325 325 | 
             
                        .type(maxLimit);
         | 
| 326 | 
            +
                    cy.wait(1000);
         | 
| 326 327 | 
             
                    shortTextResponsePage.maximumLimitInputField()
         | 
| 327 328 | 
             
                        .blur();
         | 
| 328 329 | 
             
                    shortTextResponsePage.maximumLimitInputField()
         | 
| @@ -363,6 +364,7 @@ const steps = { | |
| 363 364 | 
             
                clearAndFocusOutOfMinimumLimitInputField: () => {
         | 
| 364 365 | 
             
                    shortTextResponsePage.minimumLimitInputField()
         | 
| 365 366 | 
             
                        .clear();
         | 
| 367 | 
            +
                    cy.wait(1000);
         | 
| 366 368 | 
             
                    shortTextResponsePage.minimumLimitInputField()
         | 
| 367 369 | 
             
                        .blur();
         | 
| 368 370 | 
             
                    shortTextResponsePage.minimumLimitInputField()
         | 
| @@ -25,6 +25,7 @@ const selectors = { | |
| 25 25 | 
             
                responseAccordionPointsLabel: () => cy.get('[class*="ResponseAccordionstyles__PointsLabel"]'),
         | 
| 26 26 | 
             
                responseAccordionPointsScore: () => cy.get('[class*="ResponseAccordionstyles__Points-"]'),
         | 
| 27 27 | 
             
                responseAccordionPointsInputFieldWrapper: () => cy.get('[class*="ResponseEvaluationstyles__PartialPointsWrapper"]'),
         | 
| 28 | 
            +
                modalVisibilityTypeButton: () => cy.get('button[data-ngie-testid="modal-toggle-button"]'),
         | 
| 28 29 |  | 
| 29 30 | 
             
                //Evaluation tab
         | 
| 30 31 | 
             
                evaluationTab: () => cy.get('[data-ngie-testid*="evaluation"][data-ngie-testid*="tab"]'),
         | 
| @@ -840,8 +841,12 @@ const steps = { | |
| 840 841 | 
             
                            .contains(categoryName, { matchCase: false })
         | 
| 841 842 | 
             
                            .click();
         | 
| 842 843 | 
             
                    });
         | 
| 843 | 
            -
                }
         | 
| 844 | 
            +
                },
         | 
| 844 845 |  | 
| 846 | 
            +
                selectModalVisibilityTypeButton: () => {
         | 
| 847 | 
            +
                    textEntryMathPage.modalVisibilityTypeButton()
         | 
| 848 | 
            +
                        .click();
         | 
| 849 | 
            +
                }
         | 
| 845 850 | 
             
            }
         | 
| 846 851 |  | 
| 847 852 | 
             
            const tests = {
         | 
| @@ -16,6 +16,7 @@ const selectors = { | |
| 16 16 | 
             
                textAreaPreviewTab: () => cy.get('.label-image-with-text-preview [class*="TextBoxContainer"]'),
         | 
| 17 17 | 
             
                tickIcon: () => cy.get('.add-background-tick-icon-wrapper [data-name*="Rectangle"]'),
         | 
| 18 18 | 
             
                responseFieldWrapperPreviewTab: () => cy.get('[class*="question-preview-wrapper"] [class*="__PointerWrapper"]'),
         | 
| 19 | 
            +
                pointerPreviewTab: () => cy.get('[class*="question-preview-wrapper"] [class*="_PointerDiv"]'),
         | 
| 19 20 | 
             
                responseFieldNumerationPreviewTab: () => cy.get('.image-container .response-input-adornment')
         | 
| 20 21 | 
             
            }
         | 
| 21 22 |  | 
| @@ -34,47 +35,49 @@ const steps = { | |
| 34 35 | 
             
                    const getPosition = (option) => {
         | 
| 35 36 | 
             
                        switch (option) {
         | 
| 36 37 | 
             
                            case 'bottom':
         | 
| 37 | 
            -
                                return {  | 
| 38 | 
            +
                                return { top: '-24px', left: '-3px' };
         | 
| 38 39 | 
             
                            case 'bottom right':
         | 
| 39 | 
            -
                                return { top: '- | 
| 40 | 
            +
                                return { top: '-29.5px', left: '-36.5px' };
         | 
| 40 41 | 
             
                            case 'right':
         | 
| 41 | 
            -
                                return { top: '- | 
| 42 | 
            +
                                return { top: '-21px', left: '-37px' };
         | 
| 42 43 | 
             
                            case 'top right':
         | 
| 43 | 
            -
                                return { top: ' | 
| 44 | 
            +
                                return { top: '-23.5px', left: '-35.5px' };
         | 
| 44 45 | 
             
                            case 'top':
         | 
| 45 | 
            -
                                return { top: ' | 
| 46 | 
            +
                                return { top: '-22px', left: '9px' };
         | 
| 46 47 | 
             
                            case 'top left':
         | 
| 47 | 
            -
                                return { top: ' | 
| 48 | 
            +
                                return { top: '-21.5px', left: '-28px' };
         | 
| 48 49 | 
             
                            case 'left':
         | 
| 49 | 
            -
                                return { top: '- | 
| 50 | 
            +
                                return { top: '-28px', left: '-27px' };
         | 
| 50 51 | 
             
                            case 'bottom left':
         | 
| 51 | 
            -
                                return { top: '- | 
| 52 | 
            +
                                return { top: '-24.5px', left: '-27px' };
         | 
| 52 53 | 
             
                        }
         | 
| 53 54 | 
             
                    }
         | 
| 54 55 | 
             
                    const expectedPosition = getPosition(style);
         | 
| 55 56 | 
             
                    if (style == 'bottom') {
         | 
| 56 | 
            -
                        textEntryMathWithImagePage. | 
| 57 | 
            +
                        textEntryMathWithImagePage.pointerPreviewTab()
         | 
| 57 58 | 
             
                            .eq(responseIndex)
         | 
| 58 | 
            -
                            .should('have.css', ' | 
| 59 | 
            -
                            .and('have.css', 'left', expectedPosition.left);
         | 
| 59 | 
            +
                            .should('have.css', 'margin-top', expectedPosition.top)
         | 
| 60 | 
            +
                            .and('have.css', 'margin-left', expectedPosition.left);
         | 
| 60 61 | 
             
                    }
         | 
| 61 62 | 
             
                    else if (style == 'bottom right' || style == 'right' || style == 'top right') {
         | 
| 62 | 
            -
                        textEntryMathWithImagePage. | 
| 63 | 
            +
                        textEntryMathWithImagePage.pointerPreviewTab()
         | 
| 63 64 | 
             
                            .eq(responseIndex)
         | 
| 64 | 
            -
                            .should('have.css', 'top', expectedPosition.top)
         | 
| 65 | 
            -
                            .and('have.css', ' | 
| 65 | 
            +
                            .should('have.css', 'margin-top', expectedPosition.top)
         | 
| 66 | 
            +
                            .and('have.css', 'margin-left', expectedPosition.left);
         | 
| 66 67 | 
             
                    }
         | 
| 67 68 | 
             
                    else if (style == 'none') {
         | 
| 68 69 | 
             
                        textEntryMathWithImagePage.responseFieldPreviewTab()
         | 
| 69 70 | 
             
                            .eq(responseIndex)
         | 
| 70 | 
            -
                            . | 
| 71 | 
            -
             | 
| 71 | 
            +
                            .within(() => {
         | 
| 72 | 
            +
                                textEntryMathWithImagePage.pointerPreviewTab()
         | 
| 73 | 
            +
                                    .should('not.exist')
         | 
| 74 | 
            +
                            });
         | 
| 72 75 | 
             
                    }
         | 
| 73 76 | 
             
                    else {
         | 
| 74 | 
            -
                        textEntryMathWithImagePage. | 
| 77 | 
            +
                        textEntryMathWithImagePage.pointerPreviewTab()
         | 
| 75 78 | 
             
                            .eq(responseIndex)
         | 
| 76 | 
            -
                            .should('have.css', 'top', expectedPosition.top)
         | 
| 77 | 
            -
                            .and('have.css', 'left', expectedPosition.left);
         | 
| 79 | 
            +
                            .should('have.css', 'margin-top', expectedPosition.top)
         | 
| 80 | 
            +
                            .and('have.css', 'margin-left', expectedPosition.left);
         | 
| 78 81 | 
             
                    }
         | 
| 79 82 | 
             
                },
         | 
| 80 83 |  | 
| @@ -303,6 +303,7 @@ const steps = { | |
| 303 303 | 
             
                        .contains(optionText)
         | 
| 304 304 | 
             
                        .realClick();
         | 
| 305 305 | 
             
                    utilities.hoverAwayFromElement();
         | 
| 306 | 
            +
                    cy.wait(2000);
         | 
| 306 307 | 
             
                },
         | 
| 307 308 |  | 
| 308 309 | 
             
                /**
         | 
| @@ -952,6 +953,23 @@ const steps = { | |
| 952 953 | 
             
                    textSelectionPage.partialEqualWeightsPointsPerResponseScore()
         | 
| 953 954 | 
             
                        .should('have.text', points)
         | 
| 954 955 | 
             
                },
         | 
| 956 | 
            +
             | 
| 957 | 
            +
                verifyWarningIconOnRequiredFields: (requiredFieldsArray) => {
         | 
| 958 | 
            +
                    requiredFieldsArray.forEach((field) => {
         | 
| 959 | 
            +
                        if (field === 'Please set points') {
         | 
| 960 | 
            +
                            scoringSectionBaseEditTab.pointsWrapper()
         | 
| 961 | 
            +
                                .within(() => {
         | 
| 962 | 
            +
                                    utilities.verifyElementVisibilityState(commonComponents.warningIcon(), 'exist');
         | 
| 963 | 
            +
                                });
         | 
| 964 | 
            +
                        } else if (field === 'Please enter all option') {
         | 
| 965 | 
            +
                            textSelectionPage.specifyPossibleOptionsLabel()
         | 
| 966 | 
            +
                                .parents('[class*="LabelAndWarningWrapper"]')
         | 
| 967 | 
            +
                                .within(() => {
         | 
| 968 | 
            +
                                    utilities.verifyElementVisibilityState(commonComponents.warningIcon(), 'exist');
         | 
| 969 | 
            +
                                });
         | 
| 970 | 
            +
                        }
         | 
| 971 | 
            +
                    });
         | 
| 972 | 
            +
                }
         | 
| 955 973 | 
             
            }
         | 
| 956 974 |  | 
| 957 975 | 
             
            const tests = {
         | 
    
        package/package.json
    CHANGED
    
    | @@ -1,6 +1,6 @@ | |
| 1 1 | 
             
            {
         | 
| 2 2 | 
             
              "name": "itemengine-cypress-automation",
         | 
| 3 | 
            -
              "version": "1.0. | 
| 3 | 
            +
              "version": "1.0.235",
         | 
| 4 4 | 
             
              "description": "",
         | 
| 5 5 | 
             
              "main": "index.js",
         | 
| 6 6 | 
             
              "scripts": {
         | 
| @@ -35,4 +35,4 @@ | |
| 35 35 | 
             
                "node-fetch": "^3.3.2",
         | 
| 36 36 | 
             
                "react-uuid": "^2.0.0"
         | 
| 37 37 | 
             
              }
         | 
| 38 | 
            -
            }
         | 
| 38 | 
            +
            }
         | 
| @@ -99,7 +99,7 @@ export function runSorryCypressSpinnaker() { | |
| 99 99 | 
             
            /**
         | 
| 100 100 | 
             
             * @method runSorryCypressLocalSmoke
         | 
| 101 101 | 
             
             */
         | 
| 102 | 
            -
             | 
| 102 | 
            +
            export function runSorryCypressLocalSmoke() {
         | 
| 103 103 | 
             
                process.env.CYPRESS_API_URL = "https://cypress-director.imaginelearning.engineering/";
         | 
| 104 104 | 
             
                const user = OS.userInfo().username;
         | 
| 105 105 | 
             
                startTime = Math.round(Date.now() / 1000000);
         | 
| @@ -118,7 +118,7 @@ export function runSorryCypressSpinnakerSmoke() { | |
| 118 118 | 
             
                startTime = process.env.START_TIME;
         | 
| 119 119 | 
             
                ciBuildId = setCiBuildId("spinnaker", startTime);
         | 
| 120 120 | 
             
                const envArgs = setCommandLineEnvArgs()
         | 
| 121 | 
            -
                let command = `cy2 run --parallel --browser chrome --record --key imaginelearning/itemengine-cypress-automation --ci-build-id ${ciBuildId} ${envArgs} --spec "cypress/e2e/ILC/**/*.smoke.js"`;
         | 
| 121 | 
            +
                let command = `npx cypress-repeat cy2 run --parallel --browser chrome --record --key imaginelearning/itemengine-cypress-automation -n 2 --until-passes --rerun-failed-only --ci-build-id ${ciBuildId} ${envArgs} --spec "cypress/e2e/ILC/**/*.smoke.js"`;
         | 
| 122 122 | 
             
                console.log(`command: ${command}`);
         | 
| 123 123 | 
             
                execSync(command, { stdio: "inherit" });
         | 
| 124 124 | 
             
            }
         |