itemengine-cypress-automation 1.0.340-IEI-5539-0eefd17.0 → 1.0.341-IEI-5600-IEI-5708-defa90b.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cypress/e2e/ILC/BrowseItems/browseReviewItems.js +398 -0
- package/cypress/e2e/ILC/BrowseItems/browseReviewItemsMobileView.js +329 -0
- package/cypress/e2e/ILC/BrowseItems/browseThinkSphereItems.js +260 -0
- package/cypress/e2e/ILC/BrowseItems/browseThinkSphereItemsMobileView.js +368 -0
- package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/gradingViewAndCorrectAnswerView.smoke.js +1 -1
- package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightBasic.js +2 -2
- package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -0
- package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +1 -0
- package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +1 -0
- package/cypress/e2e/ILC/ChartsBar/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +1 -0
- package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightBasic.js +1 -0
- package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -0
- package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +1 -0
- package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +1 -0
- package/cypress/e2e/ILC/ChartsLine/Scoring/partialDifferentWeightsMinimumAndPenaltyScoring.js +1 -0
- package/cypress/e2e/ILC/ChartsLine/editQuestion.smoke.js +1 -3
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddFeatureRadioButton.js +2 -3
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddTranscriptRadioButton .js +0 -2
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabStudentViewSettings.js +3 -3
- package/cypress/e2e/ILC/CkEditorEquationEditor/equationEditorBasicFile.js +4 -4
- package/cypress/e2e/ILC/CkEditorInsertImage/imageInfo.js +1 -1
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +84 -0
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/allOrNothingBasicForAllViews.smoke.js +3 -3
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/checkAddAlternativeButton.js +33 -0
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/clickAndDrop.js +2 -4
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/draggableOptions.js +2 -4
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/editTabBasicSection.js +33 -0
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/headerSection.js +39 -6
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/manuallyAndNonScoredScoringEditTab.js +4 -1
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/minimumScoringPenaltyPointsAndRoundingDropdown.js +3 -0
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/styleAndLayoutCustomizationLayoutProperties.js +3 -0
- package/cypress/e2e/ILC/DrawingResponse/drawingResponseAdditionalSettings.js +1 -0
- package/cypress/e2e/ILC/DrawingResponse/drawingResponseBackground.js +2 -8
- package/cypress/e2e/ILC/DrawingResponse/drawingResponseCustomizeAdditionalOptions.js +1 -0
- package/cypress/e2e/ILC/DrawingResponse/drawingResponseEditTabBasicSection.js +3 -3
- package/cypress/e2e/ILC/DrawingResponse/drawingResponsePreviewTabContents.smoke.js +3 -4
- package/cypress/e2e/ILC/EssayResponse/createCustomCategory.smoke.js +1 -1
- package/cypress/e2e/ILC/EssayResponse/editCategoryFlyout.js +0 -1
- package/cypress/e2e/ILC/EssayResponse/editTabBasicSections.js +23 -37
- package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/Scoring/blankResponseScoring.js +29 -25
- package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/allOrNothingForAllViews.smoke.js +210 -0
- package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/dropzoneStyleAndLayoutCustomization.js +6 -3
- package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/editQuestion.smoke.js +3 -2
- package/cypress/e2e/ILC/FillInTheGapsDragAndDropNew/headerSection.js +1 -0
- package/cypress/e2e/ILC/FillInTheGapsDropdownNew/allOrNothingForAllView.smoke.js +201 -0
- package/cypress/e2e/ILC/FillInTheGapsDropdownNew/dropdownAndDropdownMenuSection.js +4 -1
- package/cypress/e2e/ILC/FillInTheGapsDropdownNew/dropdownOptionsSection.js +2 -2
- package/cypress/e2e/ILC/FillInTheGapsDropdownNew/editTabBasicSection.js +1 -1
- package/cypress/e2e/ILC/FillInTheGapsDropdownNew/specifyCorrectAnswerSection.js +0 -1
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/Scoring/blankResponseScoring.js +18 -20
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +96 -0
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/allOrNothingForAllViews.smoke.js +216 -0
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/backgroundImageAndCanvasProperties.js +0 -1
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/checkAddAlternative.js +37 -0
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/clickAndDrop.js +4 -6
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/editTabBasicSection.js +47 -0
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/headerSection.js +38 -9
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/studentViewSettings.js +5 -1
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/styleAndLayoutCustomization.js +2 -1
- package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/Scoring/blankResponseScoring.js +21 -30
- package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/allOrNothingForAllView.smoke.js +211 -0
- package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/dropdownAndDropdownMenuSection.js +4 -1
- package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/editTabBasicSection.js +0 -1
- package/cypress/e2e/ILC/FillInTheGapsOverImageDropdownNew/headerSection.js +2 -2
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/HeaderSection.js +2 -2
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/Scoring/blankResponseScoring.js +23 -30
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/allOrNothingForAllViews.smoke.js +213 -0
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/backgroundImageAndCanvasProperties.js +0 -1
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/editTabScoringSection.js +2 -0
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/responseAnswersAndAcceptedStudentInput.js +2 -0
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/supportedFileTypes.js +2 -4
- package/cypress/e2e/ILC/FillInTheGapsTextNew/Scoring/blankResponseScoring.js +25 -30
- package/cypress/e2e/ILC/FillInTheGapsTextNew/allOrNothingForAllViews.smoke.js +207 -0
- package/cypress/e2e/ILC/FillInTheGapsTextNew/editTabBasicSection.js +3 -11
- package/cypress/e2e/ILC/FillInTheGapsTextNew/editTabScoringSection.js +2 -0
- package/cypress/e2e/ILC/Graphing/headerSection.js +1 -2
- package/cypress/e2e/ILC/Graphing/layoutAndGridOptions.js +6 -3
- package/cypress/e2e/ILC/GridFill/customizeLayoutFillImageBackgroundImage.js +11 -0
- package/cypress/e2e/ILC/GridFill/customizeLayoutSectionShadeCellsGridBorders.js +2 -0
- package/cypress/e2e/ILC/GridFill/editTabScoringSection.js +3 -0
- package/cypress/e2e/ILC/GridFill/headerSection.js +2 -4
- package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +1 -2
- package/cypress/e2e/ILC/GridFill/specifyCorrectAnswerSection.js +2 -4
- package/cypress/e2e/ILC/ImageHighlight/Scoring/partialDifferentWeightsScoring.js +2 -1
- package/cypress/e2e/ILC/ImageHighlight/editQuestion.smoke.js +2 -1
- package/cypress/e2e/ILC/ImageHighlight/headerSection.js +2 -1
- package/cypress/e2e/ILC/ImageHighlight/studentViewSettings.js +2 -2
- package/cypress/e2e/ILC/ListOrderingNew/allOrNothingForAllViews.smoke.js +2 -1
- package/cypress/e2e/ILC/MultipleSelection/allOrNothingBasicForAllViews.smoke.js +226 -0
- package/cypress/e2e/ILC/MultipleSelection/allOrNothingWithAlternativeAnswer.js +6 -3
- package/cypress/e2e/ILC/MultipleSelection/checkScoringLabelBannerAndCorrectAnswer.js +3 -1
- package/cypress/e2e/ILC/MultipleSelection/editTabBasicSection.js +1 -1
- package/cypress/e2e/ILC/MultipleSelection/editTabScoringSection.js +6 -3
- package/cypress/e2e/ILC/MultipleSelection/headerSection.js +1 -0
- package/cypress/e2e/ILC/MultipleSelection/minimumScoringPenaltyPointsAndRoundingDropdown.js +1 -1
- package/cypress/e2e/ILC/MultipleSelection/partialDifferentWeightsBasic.js +1 -1
- package/cypress/e2e/ILC/MultipleSelection/partialDifferentWeightsWithAlternativeAnswer.js +69 -64
- package/cypress/e2e/ILC/MultipleSelection/partialEqualWeightsWithAlternativeAnswer.js +6 -4
- package/cypress/e2e/ILC/MultipleSelectionGridNew/allOrNothingBasicForAllViews.smoke.js +220 -0
- package/cypress/e2e/ILC/MultipleSelectionGridNew/editTabScoringSection.js +11 -5
- package/cypress/e2e/ILC/MultipleSelectionGridNew/styleAndLayoutCustomizationLayoutProperties.js +4 -2
- package/cypress/e2e/ILC/NumberLine/headerSection.js +1 -2
- package/cypress/e2e/ILC/NumberLineLabel/additionalSettingsBasic.js +1 -1
- package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +3 -4
- package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/editQuestion.smoke.js +1 -1
- package/cypress/e2e/ILC/Ruler/rulerEditTabFunctionality.js +10 -0
- package/cypress/e2e/ILC/ShortTextResponseNew/editTabBasicSections.js +31 -48
- package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +2 -2
- package/cypress/e2e/ILC/SingleSelection/allOrNothingBasicForAllViews.smoke.js +192 -0
- package/cypress/e2e/ILC/SingleSelection/checkScoringLabelBannerAndCorrectAnswer.js +3 -1
- package/cypress/e2e/ILC/SingleSelection/headerSection.js +1 -0
- package/cypress/e2e/ILC/SingleSelection/manuallyAndNonScoredScoring.js +94 -88
- package/cypress/e2e/ILC/SingleSelectionGridNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +3 -1
- package/cypress/e2e/ILC/SingleSelectionGridNew/allOrNothingBasicForAllViews.smoke.js +209 -0
- package/cypress/e2e/ILC/SingleSelectionGridNew/editTabScoringSection.js +5 -0
- package/cypress/e2e/ILC/SingleSelectionGridNew/styleAndLayoutCustomizationLayoutProperties.js +8 -2
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +1 -3
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsScoringBasic.js +3 -10
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -4
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +3 -5
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsScoringBasic.js +0 -4
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAddEvaluation.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAlternateAnswer.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/blankResponseScoring.js +2 -8
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsScoringBasic.js +0 -8
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasic.js +0 -1
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasicForAlternateAnswer.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViews.smoke.js +77 -6
- package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/customSettings.js +4 -0
- package/cypress/e2e/ILC/TextEntryMath/editQuestion.smoke.js +1 -1
- package/cypress/e2e/ILC/TextEntryMath/editTabBasicSection.js +1 -1
- package/cypress/e2e/ILC/TextEntryMath/equationEditor.smoke.js +8 -0
- package/cypress/e2e/ILC/TextEntryMath/evaluationMethodEquivalentStructures.smoke.js +86 -0
- package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchExact.smoke.js +97 -0
- package/cypress/e2e/ILC/TextEntryMath/evaluationMethodMatchValue.smoke.js +97 -0
- package/cypress/e2e/ILC/TextEntryMath/evaluationMethodSymbolsAreEquivalent.smoke.js +167 -0
- package/cypress/e2e/ILC/TextEntryMath/evaluationMethodValueIsEquivalent.smoke.js +167 -2
- package/cypress/e2e/ILC/TextEntryMath/evaluationMethodsWithoutSetResponse.smoke.js +1 -0
- package/cypress/e2e/ILC/TextEntryMath/previewContentsForAllViews.smoke.js +10 -7
- package/cypress/e2e/ILC/TextEntryMathWithImage/allOrNothingScoringForAllViews.smoke.js +1 -0
- package/cypress/e2e/ILC/TextEntryMathWithImage/styleAndLayoutCustomization.js +1 -1
- package/cypress/e2e/ILC/TextSelection/ScoringParagraph/allOrNothingAlternatePointsMoreThanCorrectPoints.js +80 -0
- package/cypress/e2e/ILC/TextSelection/ScoringParagraph/allOrNothingCorrectPointsMoreThanAlternatePoints.js +30 -0
- package/cypress/e2e/ILC/TextSelection/ScoringParagraph/checkScoringLabelBannerAndCorrectAnswerSection.js +109 -0
- package/cypress/e2e/ILC/TextSelection/checkAddAlternativeButton.js +46 -0
- package/cypress/e2e/ILC/TextSelection/editTabBasicSection.js +57 -0
- package/cypress/e2e/ILC/TextSelection/headerSection.js +38 -6
- package/cypress/e2e/ILC/TextSelection/questionInstructionsAndQuestion.js +1 -2
- package/cypress/e2e/ILC/TextSelection/textSelectionModesInSpecifyPossibleOptionsSection.js +7 -12
- package/cypress/e2e/ILC/ThinkSphere/additionalSettings.js +52 -0
- package/cypress/e2e/ILC/ThinkSphere/createReviewItem.js +112 -0
- package/cypress/e2e/ILC/ThinkSphere/editTabBasicSection.js +561 -0
- package/cypress/e2e/ILC/ThinkSphere/editThinkSphereQuestion.smoke.js +278 -0
- package/cypress/e2e/ILC/ThinkSphere/equationEditorCreateCustomCategory.smoke.js +417 -0
- package/cypress/e2e/ILC/ThinkSphere/equationEditorEditCategoryFlyOut.js +291 -0
- package/cypress/e2e/ILC/ThinkSphere/headerSection.js +53 -0
- package/cypress/e2e/ILC/ThinkSphere/planPhase.js +621 -0
- package/cypress/e2e/ILC/ThinkSphere/previewTabPlanSection.js +542 -0
- package/cypress/e2e/ILC/ThinkSphere/previewTabReviewSection.js +98 -0
- package/cypress/e2e/ILC/ThinkSphere/solvePhase.js +296 -0
- package/cypress/e2e/ILC/ThinkSphere/studentViewPlanTabSection.js +394 -0
- package/cypress/e2e/ILC/ThinkSphere/studentViewReviewTabSection.js +142 -0
- package/cypress/e2e/ILC/ToolSettings/toolSettingsPreviewContents.smoke.js +1 -0
- package/cypress/e2e/Sessions/fetchResponses.js +3 -3
- package/cypress/e2e/Sessions/scores.js +9 -5
- package/cypress/e2e/applitools.config.js +3 -3
- package/cypress/fixtures/constants.js +5 -1
- package/cypress/fixtures/theme/ilc.json +16 -1
- package/cypress/fixtures/uploads/sample.webm +0 -0
- package/cypress/fixtures/uploads/sample.wmv +0 -0
- package/cypress/fixtures/uploads/sample20MB.mp4 +0 -0
- package/cypress/fixtures/uploads/sample2MB.mp4 +0 -0
- package/cypress/fixtures/uploads/sample2MB_2.mp4 +0 -0
- package/cypress/fixtures/uploads/sample30MB.mp4 +0 -0
- package/cypress/pages/audioPlayerPage.js +22 -22
- package/cypress/pages/brainingCampManipulativePage.js +1 -1
- package/cypress/pages/chartsLinePage.js +1 -1
- package/cypress/pages/components/additionalSettingsPanel.js +3 -2
- package/cypress/pages/components/autoScoredScoringPreviewTab.js +7 -1
- package/cypress/pages/components/autoScoredScoringSectionMultiResponseType.js +2 -0
- package/cypress/pages/components/autoScoredSpecifyCorrectAnswerSection.js +17 -51
- package/cypress/pages/components/backgroundImageUploadComponent.js +32 -25
- package/cypress/pages/components/browseItemsPage.js +998 -7
- package/cypress/pages/components/ckEditorAudioPlayerComponent.js +1 -1
- package/cypress/pages/components/ckEditorEquationEditorComponent.js +4 -4
- package/cypress/pages/components/ckEditorInsertImageComponent.js +3 -3
- package/cypress/pages/components/ckEditorLinkComponent.js +3 -3
- package/cypress/pages/components/commonComponents.js +8 -1
- package/cypress/pages/components/createQuestionBasePage.js +1 -1
- package/cypress/pages/components/defaultToolDropdown.js +7 -6
- package/cypress/pages/components/desmosToolComponent.js +1 -1
- package/cypress/pages/components/editCategoryFlyout.js +2 -2
- package/cypress/pages/components/equationEditorSectionCommonComponent.js +13 -26
- package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +3 -70
- package/cypress/pages/components/fillInTheGapsTextCommonComponent.js +29 -101
- package/cypress/pages/components/gridQuestionCommonComponent.js +8 -37
- package/cypress/pages/components/hideExpressionListComponent.js +53 -0
- package/cypress/pages/components/imageCanvasComponent.js +7 -6
- package/cypress/pages/components/index.js +1 -0
- package/cypress/pages/components/mcqAdditionalSettingsBase.js +4 -0
- package/cypress/pages/components/optionsWrapperComponent.js +1 -1
- package/cypress/pages/components/questionInstructionsComponent.js +7 -0
- package/cypress/pages/components/scoringSectionBaseEditTab.js +12 -13
- package/cypress/pages/desmos3DGraphingPage.js +368 -0
- package/cypress/pages/desmosGeometryPage.js +308 -0
- package/cypress/pages/dialogBoxBase.js +2 -1
- package/cypress/pages/dragAndDropIntoCategoriesPage.js +26 -6
- package/cypress/pages/drawingResponsePage.js +17 -16
- package/cypress/pages/fillInTheGapsDragAndDropPage.js +1 -68
- package/cypress/pages/fillInTheGapsOverImageDragAndDropPage.js +4 -4
- package/cypress/pages/fillInTheGapsOverImageDropdownPage.js +1 -1
- package/cypress/pages/gradingViewPage.js +8 -0
- package/cypress/pages/graphingPage.js +5 -8
- package/cypress/pages/gridFillPage.js +7 -8
- package/cypress/pages/imageHighlightPage.js +0 -66
- package/cypress/pages/index.js +3 -1
- package/cypress/pages/multipleSelectionGridPage.js +1 -68
- package/cypress/pages/multipleSelectionPage.js +10 -106
- package/cypress/pages/numberLineLabelPage.js +5 -8
- package/cypress/pages/numberLinePage.js +4 -7
- package/cypress/pages/selectQuestionResourceToolPage.js +8 -2
- package/cypress/pages/singleSelectionGridPage.js +1 -68
- package/cypress/pages/singleSelectionPage.js +0 -104
- package/cypress/pages/textSelectionPage.js +25 -6
- package/cypress/pages/thinkSpherePage.js +2170 -0
- package/cypress/support/commands.js +7 -4
- package/cypress/support/e2e.js +1 -0
- package/cypress/support/helpers/createItem.js +1181 -1
- package/cypress/support/helpers/utilities.js +75 -1
- package/deploy/smoke/deploy.yaml +2 -2
- package/package.json +3 -3
- package/scripts/dataApi.mjs +3 -0
- package/scripts/sorry-cypress.mjs +13 -0
@@ -64,6 +64,7 @@ describe('Create Item page - Text entry math: All or nothing ', () => {
|
|
64
64
|
switch (view) {
|
65
65
|
case 'Question preview':
|
66
66
|
textEntryMathWithImagePage.steps.navigateToCreateQuestion('Text Entry Math');
|
67
|
+
cy.wait(5000);//waiting for question instructions to load
|
67
68
|
cy.barsPreLoaderWait();
|
68
69
|
textEntryMathWithImagePage.steps.addBackground();
|
69
70
|
textEntryMathWithImagePage.steps.allotPoints(20);
|
@@ -299,7 +299,7 @@ describe('Create Item page - Text Entry Math: Style and layout customization', (
|
|
299
299
|
textEntryMathWithImagePage.steps.clearWidthInputField();
|
300
300
|
textEntryMathWithImagePage.steps.insertResponseArea(20);
|
301
301
|
textEntryMathWithImagePage.steps.switchToPreviewTab();
|
302
|
-
textEntryMathWithImagePage.steps.verifyHeightOfTextContainerInPreviewTab(1, '
|
302
|
+
textEntryMathWithImagePage.steps.verifyHeightOfTextContainerInPreviewTab(1, '46px');
|
303
303
|
textEntryMathWithImagePage.steps.verifyWidthOfTextContainerInPreviewTab(1, '122px');
|
304
304
|
});
|
305
305
|
});
|
@@ -231,4 +231,84 @@ describe('Create Item page - Text selection: Preview tab Scoring Section - All o
|
|
231
231
|
textSelectionPage.steps.verifyCorrectAnswerSectionNotExists();*/
|
232
232
|
});
|
233
233
|
});
|
234
|
+
|
235
|
+
|
236
|
+
describe('Question Preview: AutoScored - All or Nothing with blank scoring: When alternative answer points are more than correct answer points and alternative has no text highlighted', () => {
|
237
|
+
abortEarlySetup();
|
238
|
+
before(() => {
|
239
|
+
textSelectionPage.steps.navigateToCreateQuestion('text selection');
|
240
|
+
cy.barsPreLoaderWait();
|
241
|
+
textSelectionPage.steps.setQuestionAndOptionsInEditTab();
|
242
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[0]);
|
243
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[1]);
|
244
|
+
textSelectionPage.steps.allotPoints(12);
|
245
|
+
textSelectionPage.steps.addAlternativeAnswerAccordion(1);
|
246
|
+
textSelectionPage.steps.allotPoints(20);
|
247
|
+
textSelectionPage.steps.switchToPreviewTab();
|
248
|
+
});
|
249
|
+
|
250
|
+
it('When user attempts the question with responses from the correct accordion, then the user should be awarded points specified for correct points accordion (less than full points) and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, a status message with text \'Your answer is correct\' should be displayed and correct answer section should not be displayed', () => {
|
251
|
+
textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[0]);
|
252
|
+
textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[1]);
|
253
|
+
textSelectionPage.steps.verifyPreviewScore(12, 20);
|
254
|
+
textSelectionPage.steps.switchToGradingView();
|
255
|
+
textSelectionPage.steps.verifyCorrectIconForOption(paragraphTextArray[0]);
|
256
|
+
textSelectionPage.steps.verifyCorrectIconForOption(paragraphTextArray[1]);
|
257
|
+
textSelectionPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
|
258
|
+
textSelectionPage.steps.verifyCorrectAnswerSectionNotExists();
|
259
|
+
textSelectionPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
|
260
|
+
});
|
261
|
+
|
262
|
+
it('When user selects and deselects an option then full score should be awarded as alternative accordion has blank response', () => {
|
263
|
+
textSelectionPage.steps.resetQuestionPreview();
|
264
|
+
textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[0]);
|
265
|
+
textSelectionPage.steps.deselectOptionInPreviewTab(paragraphTextArray[0]);
|
266
|
+
textSelectionPage.steps.verifyPreviewScore(20, 20);
|
267
|
+
textSelectionPage.steps.switchToGradingView();
|
268
|
+
textSelectionPage.steps.verifyCorrectAnswerSectionNotExists();
|
269
|
+
textSelectionPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
|
270
|
+
textSelectionPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
|
271
|
+
});
|
272
|
+
});
|
273
|
+
|
274
|
+
describe('Question Preview: AutoScored - All or Nothing with blank scoring: When alternative answer points are more than correct answer points and correct answer has no text highlighted', () => {
|
275
|
+
abortEarlySetup();
|
276
|
+
before(() => {
|
277
|
+
textSelectionPage.steps.navigateToCreateQuestion('text selection');
|
278
|
+
cy.barsPreLoaderWait();
|
279
|
+
textSelectionPage.steps.setQuestionAndOptionsInEditTab();
|
280
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[0]);
|
281
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[1]);
|
282
|
+
textSelectionPage.steps.allotPoints(12);
|
283
|
+
textSelectionPage.steps.addAlternativeAnswerAccordion(1);
|
284
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[1]);
|
285
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[2]);
|
286
|
+
textSelectionPage.steps.allotPoints(20);
|
287
|
+
textSelectionPage.steps.expandCorrectAnswerAccordion();
|
288
|
+
textSelectionPage.steps.deselectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[0]);
|
289
|
+
textSelectionPage.steps.deselectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[1]);
|
290
|
+
textSelectionPage.steps.switchToPreviewTab();
|
291
|
+
});
|
292
|
+
|
293
|
+
it('When user attempts the question with responses from the correct accordion i.e select and deselects an option, then the user should be awarded points specified for correct points accordion (less than full points) and on switching to \'Grading\' view, correct icons should be displayed beside all the correct responses, a status message with text \'Your answer is correct\' should be displayed and correct answer section should not be displayed', () => {
|
294
|
+
textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[0]);
|
295
|
+
textSelectionPage.steps.deselectOptionInPreviewTab(paragraphTextArray[0]);
|
296
|
+
textSelectionPage.steps.verifyPreviewScore(12, 20);
|
297
|
+
textSelectionPage.steps.switchToGradingView();
|
298
|
+
textSelectionPage.steps.verifyCorrectAnswerSectionNotExists();
|
299
|
+
textSelectionPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
|
300
|
+
textSelectionPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
|
301
|
+
});
|
302
|
+
|
303
|
+
it('When user attempts the question with responses from the alternative accordion then full score should be awarded', () => {
|
304
|
+
textSelectionPage.steps.resetQuestionPreview();
|
305
|
+
textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[1]);
|
306
|
+
textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[2]);
|
307
|
+
textSelectionPage.steps.verifyPreviewScore(20, 20);
|
308
|
+
textSelectionPage.steps.switchToGradingView();
|
309
|
+
textSelectionPage.steps.verifyCorrectAnswerSectionNotExists();
|
310
|
+
textSelectionPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
|
311
|
+
textSelectionPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
|
312
|
+
});
|
313
|
+
});
|
234
314
|
});
|
@@ -231,4 +231,34 @@ describe('Create Item page - Text selection: Preview tab Scoring Section - All o
|
|
231
231
|
textSelectionPage.steps.verifyCorrectAnswerSectionNotExists();*/
|
232
232
|
});
|
233
233
|
});
|
234
|
+
|
235
|
+
describe('Question Preview: AutoScored - All or Nothing with blank scoring: When correct answer points are more than alternate answer points and correct answer has no text highlighted', () => {
|
236
|
+
abortEarlySetup();
|
237
|
+
before(() => {
|
238
|
+
textSelectionPage.steps.navigateToCreateQuestion('text selection');
|
239
|
+
cy.barsPreLoaderWait();
|
240
|
+
textSelectionPage.steps.setQuestionAndOptionsInEditTab();
|
241
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[0]);
|
242
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[1]);
|
243
|
+
textSelectionPage.steps.allotPoints(20);
|
244
|
+
textSelectionPage.steps.addAlternativeAnswerAccordion(1);
|
245
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[1]);
|
246
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[2]);
|
247
|
+
textSelectionPage.steps.allotPoints(12);
|
248
|
+
textSelectionPage.steps.expandCorrectAnswerAccordion();
|
249
|
+
textSelectionPage.steps.deselectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[0]);
|
250
|
+
textSelectionPage.steps.deselectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[1]);
|
251
|
+
textSelectionPage.steps.switchToPreviewTab();
|
252
|
+
});
|
253
|
+
|
254
|
+
it('When the user attempts the question with responses from the correct accordion, then the user should be awarded full points and on switching to \'Grading\' view, a status message with text \'Your answer is correct\' should be displayed and correct answer section should not be displayed', () => {
|
255
|
+
textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[0]);
|
256
|
+
textSelectionPage.steps.deselectOptionInPreviewTab(paragraphTextArray[0]);
|
257
|
+
textSelectionPage.steps.verifyPreviewScore(20, 20);
|
258
|
+
textSelectionPage.steps.switchToGradingView();
|
259
|
+
textSelectionPage.steps.verifyCorrectAnswerSectionNotExists();
|
260
|
+
textSelectionPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
|
261
|
+
textSelectionPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
|
262
|
+
});
|
263
|
+
});
|
234
264
|
});
|
@@ -0,0 +1,109 @@
|
|
1
|
+
import { textSelectionPage } from "../../../../pages";
|
2
|
+
import abortEarlySetup from "../../../../support/helpers/abortEarly";
|
3
|
+
|
4
|
+
const paragraphTextArray = [
|
5
|
+
'All animals have a unique role to play in maintaining the balance of nature.',
|
6
|
+
'A lot of animal species exist in both, land and water. As a result, each of them has a purpose for their existence.',
|
7
|
+
'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
|
+
'Birds are creatures with feathers, beaks, and the ability to lay eggs.',
|
9
|
+
'Many animal species are undocumented even today.',
|
10
|
+
'Research is going on to discover new species in the far corners of the earth'
|
11
|
+
]
|
12
|
+
|
13
|
+
describe('Create Item page - Text Selection', () => {
|
14
|
+
before(() => {
|
15
|
+
cy.loginAs('admin');
|
16
|
+
});
|
17
|
+
|
18
|
+
describe('Question Preview: Auto Scored With Points', () => {
|
19
|
+
abortEarlySetup();
|
20
|
+
before(() => {
|
21
|
+
textSelectionPage.steps.navigateToCreateQuestion('text selection');
|
22
|
+
cy.barsPreLoaderWait();
|
23
|
+
paragraphTextArray.forEach((paragraphText) => {
|
24
|
+
textSelectionPage.steps.addInputToQuestionInputField(`${paragraphText}{enter}`);
|
25
|
+
});
|
26
|
+
textSelectionPage.steps.switchTextSelectionMode('Paragraph');
|
27
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[0]);
|
28
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[1]);
|
29
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[2]);
|
30
|
+
textSelectionPage.steps.switchToPreviewTab();
|
31
|
+
});
|
32
|
+
|
33
|
+
it('In Preview tab, when an answer is not set then manually scored scoring label should be displayed', () => {
|
34
|
+
textSelectionPage.steps.checkManuallyScoredScoringLabel();
|
35
|
+
});
|
36
|
+
|
37
|
+
it('In Preview tab, when user switches to grading view then no banner and correct answer should be displayed', () => {
|
38
|
+
textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[0]);
|
39
|
+
textSelectionPage.steps.switchToGradingView();
|
40
|
+
textSelectionPage.steps.verifyAnswerStatusBannerNotExist();
|
41
|
+
textSelectionPage.steps.verifyCorrectAnswerSectionNotExist();
|
42
|
+
});
|
43
|
+
|
44
|
+
it('When user allocates points to the question then the scoring label should be displayed as manually scored and banner and correct answer status should not exist', () => {
|
45
|
+
textSelectionPage.steps.switchToEditTab();
|
46
|
+
textSelectionPage.steps.allotPoints(2);
|
47
|
+
textSelectionPage.steps.switchToPreviewTab();
|
48
|
+
textSelectionPage.steps.checkManuallyScoredScoringLabel();
|
49
|
+
textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[0]);
|
50
|
+
textSelectionPage.steps.switchToGradingView();
|
51
|
+
textSelectionPage.steps.verifyAnswerStatusBannerNotExist();
|
52
|
+
textSelectionPage.steps.verifyCorrectAnswerSectionNotExist();
|
53
|
+
});
|
54
|
+
});
|
55
|
+
|
56
|
+
describe('Question Preview: Auto Scored Without Points', () => {
|
57
|
+
abortEarlySetup();
|
58
|
+
before(() => {
|
59
|
+
textSelectionPage.steps.navigateToCreateQuestion('text selection');
|
60
|
+
cy.barsPreLoaderWait();
|
61
|
+
paragraphTextArray.forEach((paragraphText) => {
|
62
|
+
textSelectionPage.steps.addInputToQuestionInputField(`${paragraphText}{enter}`);
|
63
|
+
});
|
64
|
+
textSelectionPage.steps.switchTextSelectionMode('Paragraph');
|
65
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[0]);
|
66
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[1]);
|
67
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[2]);
|
68
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[0]);
|
69
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[1]);
|
70
|
+
textSelectionPage.steps.switchToPreviewTab();
|
71
|
+
});
|
72
|
+
|
73
|
+
it('In Preview tab, when points are not set then manually scored scoring label should be displayed', () => {
|
74
|
+
textSelectionPage.steps.checkManuallyScoredScoringLabel();
|
75
|
+
});
|
76
|
+
|
77
|
+
it('In Preview tab, when user switches to grading view then banner and correct answer should be displayed', () => {
|
78
|
+
textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[0]);
|
79
|
+
textSelectionPage.steps.switchToGradingView();
|
80
|
+
textSelectionPage.steps.verifyAnswerStatusBannerExist();
|
81
|
+
textSelectionPage.steps.verifyCorrectAnswerSectionExist();
|
82
|
+
});
|
83
|
+
});
|
84
|
+
|
85
|
+
describe('Question Preview: Non Scored', () => {
|
86
|
+
abortEarlySetup();
|
87
|
+
before(() => {
|
88
|
+
textSelectionPage.steps.navigateToCreateQuestion('text selection');
|
89
|
+
cy.barsPreLoaderWait();
|
90
|
+
paragraphTextArray.forEach((paragraphText) => {
|
91
|
+
textSelectionPage.steps.addInputToQuestionInputField(`${paragraphText}{enter}`);
|
92
|
+
});
|
93
|
+
textSelectionPage.steps.switchTextSelectionMode('Paragraph');
|
94
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[0]);
|
95
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[1]);
|
96
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[2]);
|
97
|
+
});
|
98
|
+
|
99
|
+
it('When the user selects \'Grading\' view without setting the answer, correct answers section and answer status banner should not be displayed', () => {
|
100
|
+
textSelectionPage.steps.expandScoringTypeDropdown();
|
101
|
+
textSelectionPage.steps.selectOptionFromScoringTypeDropdown('Non scored');
|
102
|
+
textSelectionPage.steps.switchToPreviewTab();
|
103
|
+
textSelectionPage.steps.selectOptionInPreviewTab(paragraphTextArray[0]);
|
104
|
+
textSelectionPage.steps.switchToGradingView();
|
105
|
+
textSelectionPage.steps.verifyAnswerStatusBannerNotExist();
|
106
|
+
textSelectionPage.steps.verifyCorrectAnswerSectionNotExist();
|
107
|
+
});
|
108
|
+
});
|
109
|
+
});
|
@@ -0,0 +1,46 @@
|
|
1
|
+
import { textSelectionPage } from "../../../pages";
|
2
|
+
import abortEarlySetup from "../../../support/helpers/abortEarly";
|
3
|
+
|
4
|
+
const paragraphTextArray = [
|
5
|
+
'All animals have a unique role to play in maintaining the balance of nature.',
|
6
|
+
'A lot of animal species exist in both, land and water. As a result, each of them has a purpose for their existence.',
|
7
|
+
'The animals divide into specific groups in biology. Amphibians are those which can live on both, land and water.',
|
8
|
+
'Mammals are ones which give birth to their offspring in the womb and have mammary glands.'
|
9
|
+
];
|
10
|
+
|
11
|
+
describe('Create question page - Text Selection', () => {
|
12
|
+
before(() => {
|
13
|
+
cy.loginAs('admin');
|
14
|
+
});
|
15
|
+
|
16
|
+
describe('Check Alternative Answer Button', () => {
|
17
|
+
abortEarlySetup();
|
18
|
+
before(() => {
|
19
|
+
textSelectionPage.steps.navigateToCreateQuestion('text selection');
|
20
|
+
cy.barsPreLoaderWait();
|
21
|
+
paragraphTextArray.forEach((paragraphText) => {
|
22
|
+
textSelectionPage.steps.addInputToQuestionInputField(`${paragraphText}{enter}`);
|
23
|
+
});
|
24
|
+
textSelectionPage.steps.addInputToQuestionInputField('{backspace}');
|
25
|
+
textSelectionPage.steps.switchTextSelectionMode('Paragraph');
|
26
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[0]);
|
27
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[1]);
|
28
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[2]);
|
29
|
+
});
|
30
|
+
|
31
|
+
it('When correct answer is not set then alternative answer should be disabled', () => {
|
32
|
+
textSelectionPage.steps.checkAlternativeButtonDisabled();
|
33
|
+
});
|
34
|
+
|
35
|
+
it('When correct answer is set then alternative answer should be enabled', () => {
|
36
|
+
textSelectionPage.steps.allotPoints(20);
|
37
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[1]);
|
38
|
+
textSelectionPage.steps.checkAlternativeButtonEnabled();
|
39
|
+
});
|
40
|
+
|
41
|
+
it('User should be able to add \'Alternative\' answer using the \'Add alternative\' button, when user has not set any answer in the \'Alternative\' accordion and clicks on the \'Correct\' accordion then \'Correct\' accordion should be expanded', () => {
|
42
|
+
textSelectionPage.steps.clickOnAddAlternativeAnswerButton();
|
43
|
+
textSelectionPage.steps.expandCorrectAnswerAccordion();
|
44
|
+
});
|
45
|
+
});
|
46
|
+
});
|
@@ -0,0 +1,57 @@
|
|
1
|
+
import { textSelectionPage } from "../../../pages";
|
2
|
+
import abortEarlySetup from "../../../support/helpers/abortEarly";
|
3
|
+
|
4
|
+
const paragraphTextArray = [
|
5
|
+
'All animals have a unique role to play in maintaining the balance of nature.',
|
6
|
+
'A lot of animal species exist in both, land and water. As a result, each of them has a purpose for their existence.',
|
7
|
+
'The animals divide into specific groups in biology. Amphibians are those which can live on both, land and water.',
|
8
|
+
'Mammals are ones which give birth to their offspring in the womb and have mammary glands.'
|
9
|
+
];
|
10
|
+
|
11
|
+
describe('Create item page - Text Selection', () => {
|
12
|
+
before(() => {
|
13
|
+
cy.loginAs('admin');
|
14
|
+
});
|
15
|
+
|
16
|
+
describe('User should be able to edit incomplete authored question', () => {
|
17
|
+
abortEarlySetup();
|
18
|
+
before(() => {
|
19
|
+
textSelectionPage.steps.navigateToCreateQuestion('text selection');
|
20
|
+
cy.barsPreLoaderWait();
|
21
|
+
textSelectionPage.steps.saveAQuestionWithIncompleteAuthoring();
|
22
|
+
textSelectionPage.steps.editItem();
|
23
|
+
});
|
24
|
+
|
25
|
+
it('Warning icons should be displayed on the required input fields', () => {
|
26
|
+
textSelectionPage.steps.verifyWarningIconOnRequiredFields([
|
27
|
+
'Please specify a possible option',
|
28
|
+
'Please set points',
|
29
|
+
]);
|
30
|
+
});
|
31
|
+
|
32
|
+
it('When required input fields are filled then warning icons should disappear', () => {
|
33
|
+
textSelectionPage.steps.clearQuestionInputField();
|
34
|
+
paragraphTextArray.forEach((paragraphText) => {
|
35
|
+
textSelectionPage.steps.addInputToQuestionInputField(`${paragraphText}{enter}`);
|
36
|
+
});
|
37
|
+
textSelectionPage.steps.addInputToQuestionInputField('{backspace}');
|
38
|
+
textSelectionPage.steps.switchTextSelectionMode('Paragraph');
|
39
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[0]);
|
40
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[1]);
|
41
|
+
textSelectionPage.steps.clickOnOptionInSpecifyPossibleOptionsSection(paragraphTextArray[2]);
|
42
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[0]);
|
43
|
+
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection(paragraphTextArray[1]);
|
44
|
+
textSelectionPage.steps.allotPoints(10);
|
45
|
+
textSelectionPage.steps.verifyErrorMessageIsNotDisplayed();
|
46
|
+
textSelectionPage.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
|
47
|
+
});
|
48
|
+
|
49
|
+
it('Clicking on Save Question button the question should get saved and a snackbar with text \'Saved successfully!\' should be displayed', () => {
|
50
|
+
textSelectionPage.steps.saveAQuestionAndVerifySnackbar();
|
51
|
+
});
|
52
|
+
|
53
|
+
it('Warning icon should not be visible', () => {
|
54
|
+
textSelectionPage.steps.verifyWarningIconNotExist();
|
55
|
+
});
|
56
|
+
});
|
57
|
+
});
|
@@ -1,8 +1,12 @@
|
|
1
1
|
import abortEarlySetup from "../../../support/helpers/abortEarly";
|
2
|
-
import { dialogBoxBase, textSelectionPage } from "../../../pages";
|
2
|
+
import { dialogBoxBase, textSelectionPage, itemPreviewPage } from "../../../pages";
|
3
|
+
import { browseItemsPage } from "../../../pages/components";
|
3
4
|
import utilities from "../../../support/helpers/utilities";
|
4
5
|
const options = ['Bat', 'Eagle'];
|
5
6
|
|
7
|
+
var itemReferenceID = "";
|
8
|
+
|
9
|
+
|
6
10
|
describe('Create item page - Text selection: Header section and Saving question', () => {
|
7
11
|
before(() => {
|
8
12
|
cy.loginAs('admin');
|
@@ -43,19 +47,16 @@ describe('Create item page - Text selection: Header section and Saving question'
|
|
43
47
|
});
|
44
48
|
|
45
49
|
describe('Validation error messages', () => {
|
46
|
-
dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton();
|
50
|
+
dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please specify a possible option', 'Please set points']);
|
47
51
|
|
48
52
|
it('Validation error messages should be displayed below required input fields', () => {
|
49
53
|
textSelectionPage.steps.verifyQuestionInstructionsErrorMessageIsNotDisplayed();
|
50
|
-
textSelectionPage.steps.
|
51
|
-
utilities.verifyInnerText(textSelectionPage.specifyCorrectAnswerErrorMessage(), 'Error: Please set a correct answer.');
|
54
|
+
textSelectionPage.steps.verifyWarningIconOnRequiredFields(['Please specify a possible option', 'Please set points']);
|
52
55
|
});
|
53
56
|
|
54
57
|
it('Validation error messages should disappear when required input fields are filled', () => {
|
55
58
|
textSelectionPage.steps.selectOptionInSpecifyPossibleOptionsSection('Custom', 'Lorem');
|
56
59
|
textSelectionPage.steps.selectOptionInSpecifyCorrectAnswerSection('Lorem');
|
57
|
-
utilities.verifyElementVisibilityState(textSelectionPage.specifyCorrectAnswerErrorMessage(), 'notExist');
|
58
|
-
textSelectionPage.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
|
59
60
|
textSelectionPage.steps.allotPoints(10);
|
60
61
|
});
|
61
62
|
|
@@ -68,5 +69,36 @@ describe('Create item page - Text selection: Header section and Saving question'
|
|
68
69
|
});
|
69
70
|
textSelectionPage.tests.verifySavedSuccessfullySnackbarCSSAndA11y();
|
70
71
|
});
|
72
|
+
|
73
|
+
describe('Saving a question with incomplete authoring', () => {
|
74
|
+
abortEarlySetup();
|
75
|
+
before(() => {
|
76
|
+
textSelectionPage.steps.navigateToCreateQuestion('fill in the gaps over image with drag and drop');
|
77
|
+
cy.barsPreLoaderWait();
|
78
|
+
});
|
79
|
+
|
80
|
+
it('User should be able to save the question with incomplete authoring and display a snackbar with the text "Saved successfully!" when the Save Question button is clicked', () => {
|
81
|
+
dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please enter all option values', 'Please set points']);
|
82
|
+
textSelectionPage.steps.saveAQuestionWithIncompleteAuthoring();
|
83
|
+
});
|
84
|
+
textSelectionPage.tests.verifySavedSuccessfullySnackbarCSSAndA11y();
|
85
|
+
});
|
86
|
+
});
|
87
|
+
|
88
|
+
|
89
|
+
describe('Save as you go - Browse item page contents', () => {
|
90
|
+
abortEarlySetup();
|
91
|
+
before(() => {
|
92
|
+
textSelectionPage.steps.navigateToCreateQuestion('fill in the gaps over image with drag and drop');
|
93
|
+
cy.barsPreLoaderWait();
|
94
|
+
textSelectionPage.steps.saveAQuestionWithIncompleteAuthoring();
|
95
|
+
utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
|
96
|
+
itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
|
97
|
+
browseItemsPage.steps.navigateToBrowseItemsPage();
|
98
|
+
});
|
99
|
+
|
100
|
+
it('When user saves an incompletely authored question then a warning icon should be visible in browse items page', () => {
|
101
|
+
browseItemsPage.steps.verifyWarningIconInBrowseItemPage(`${itemReferenceID}`);
|
102
|
+
});
|
71
103
|
});
|
72
104
|
});
|
@@ -50,8 +50,7 @@ describe('Create Item page - Text selection: Question Instructions and Question
|
|
50
50
|
it('When the user removes all the text from the question input field and focuses out of it, an error message \'Error: Question is required.\' should be displayed', () => {
|
51
51
|
textSelectionPage.steps.clearQuestionInputField();
|
52
52
|
textSelectionPage.steps.focusOutOfQuestionInputField();
|
53
|
-
utilities.
|
54
|
-
textSelectionPage.steps.verifyErroredStateOfQuestionInputField();
|
53
|
+
utilities.verifyElementVisibilityState(textSelectionPage.errorMessage(), 'notExist');
|
55
54
|
});
|
56
55
|
|
57
56
|
textSelectionPage.tests.verifyErrorMessageCSSAndA11y();
|
@@ -71,7 +71,7 @@ describe('Create Item page - Text selection: Text selection modes in specify pos
|
|
71
71
|
textSelectionPage.steps.verifyOptionCounterTextAndValue(1);
|
72
72
|
});
|
73
73
|
|
74
|
-
it('When user clears all selected options with the \'Clear\' button, then all the selected options should be deselected and the specify possible options field should be in errored state with the error message
|
74
|
+
it('When user clears all selected options with the \'Clear\' button, then all the selected options should be deselected and the specify possible options field should not be in errored state with the error message', () => {
|
75
75
|
cy.log('Pre-step: Selecting multiple texts to create options');
|
76
76
|
textSelectionPage.steps.selectOptionInSpecifyPossibleOptionsSection('Custom', customTextArray[0]);
|
77
77
|
textSelectionPage.steps.selectOptionInSpecifyPossibleOptionsSection('Custom', customTextArray[1]);
|
@@ -211,19 +211,16 @@ describe('Create Item page - Text selection: Text selection modes in specify pos
|
|
211
211
|
textSelectionPage.steps.verifyOptionIsNotSelectedInSpecifyPossibleOptionsSection(paragraphTextArray[2]);
|
212
212
|
});
|
213
213
|
|
214
|
-
it('When user clicks on \'Confirm\' button of the Clear popup, then the popup should be closed and all the selected options should be deselected and the specify possible options field should be in errored state with the error message
|
214
|
+
it('When user clicks on \'Confirm\' button of the Clear popup, then the popup should be closed and all the selected options should be deselected and the specify possible options field should not be in errored state with the error message', () => {
|
215
215
|
cy.log('Pre-step: Again clicking on Clear button to open Clear popup');
|
216
216
|
textSelectionPage.steps.clickOnClearOptionsButtonInSpecifyPossibleOptionSection();
|
217
217
|
textSelectionPage.steps.clickOnAcceptButtonInDialogBox();
|
218
218
|
for (let arrayIndex = 0; arrayIndex < paragraphTextArray.length; arrayIndex++) {
|
219
219
|
textSelectionPage.steps.verifyOptionIsNotSelectedInSpecifyPossibleOptionsSection(paragraphTextArray[arrayIndex]);
|
220
220
|
}
|
221
|
-
|
222
|
-
textSelectionPage.steps.verifyErroredStateOfSpecifyPossibleOptionsSection();
|
221
|
+
textSelectionPage.steps.verifyErrorMessageIsNotDisplayed();
|
223
222
|
});
|
224
223
|
|
225
|
-
textSelectionPage.tests.verifyErrorMessageCSSAndA11y();
|
226
|
-
|
227
224
|
it('When user click on a deselected option, the option should be selected and the error message should disappear and option counter should display 1 count', () => {
|
228
225
|
textSelectionPage.steps.selectOptionInSpecifyPossibleOptionsSection('Paragraph', paragraphTextArray[0]);
|
229
226
|
utilities.verifyElementVisibilityState(textSelectionPage.errorMessage(), 'notExist');
|
@@ -286,8 +283,7 @@ describe('Create Item page - Text selection: Text selection modes in specify pos
|
|
286
283
|
it('When user clears all selected options with the \'Clear\' button, then all the selected options should be deselected and the specify possible options field should be in errored state with the error message \'Error: Minimum one highlight option is required.\'', () => {
|
287
284
|
textSelectionPage.steps.clearSelectedOptionsInSpecifyPossibleOptionSection();
|
288
285
|
utilities.verifyElementVisibilityState(textSelectionPage.selectedOptionSpecifyPossibleOptions(), 'notExist');
|
289
|
-
|
290
|
-
textSelectionPage.steps.verifyErroredStateOfSpecifyPossibleOptionsSection();
|
286
|
+
textSelectionPage.steps.verifyErrorMessageIsNotDisplayed();
|
291
287
|
});
|
292
288
|
|
293
289
|
textSelectionPage.tests.verifyErrorMessageCSSAndA11y();
|
@@ -355,18 +351,17 @@ describe('Create Item page - Text selection: Text selection modes in specify pos
|
|
355
351
|
textSelectionPage.steps.verifyHoverStateOfDeselectedOptionInSpecifyPossibleOptionsSection(wordTextArray[2], 'blue');
|
356
352
|
});
|
357
353
|
|
358
|
-
it('When user clears all selected options with the \'Clear\' button, then all the selected options should be deselected and the specify possible options field should be in errored state with the error message
|
354
|
+
it('When user clears all selected options with the \'Clear\' button, then all the selected options should be deselected and the specify possible options field should not be in errored state with the error message', () => {
|
359
355
|
textSelectionPage.steps.clearSelectedOptionsInSpecifyPossibleOptionSection();
|
360
356
|
for (let arrayIndex = 0; arrayIndex < sentenceTextArray.length; arrayIndex++) {
|
361
357
|
textSelectionPage.steps.verifyOptionIsNotSelectedInSpecifyPossibleOptionsSection(wordTextArray[arrayIndex]);
|
362
358
|
}
|
363
|
-
|
364
|
-
textSelectionPage.steps.verifyErroredStateOfSpecifyPossibleOptionsSection();
|
359
|
+
textSelectionPage.steps.verifyErrorMessageIsNotDisplayed();
|
365
360
|
});
|
366
361
|
|
367
362
|
textSelectionPage.tests.verifyErrorMessageCSSAndA11y();
|
368
363
|
|
369
|
-
it('When user click on a deselected option, the option should be selected and the error message should
|
364
|
+
it('When user click on a deselected option, the option should be selected and the error message should not be displayed and option counter should display 1 count', () => {
|
370
365
|
textSelectionPage.steps.selectOptionInSpecifyPossibleOptionsSection('Word', wordTextArray[0]);
|
371
366
|
utilities.verifyElementVisibilityState(textSelectionPage.errorMessage(), 'notExist');
|
372
367
|
textSelectionPage.steps.verifyOptionCounterTextAndValue(1);
|
@@ -0,0 +1,52 @@
|
|
1
|
+
import { thinkSpherePage } from "../../../pages";
|
2
|
+
import abortEarlySetup from "../../../support/helpers/abortEarly";
|
3
|
+
import utilities from "../../../support/helpers/utilities";
|
4
|
+
const css = Cypress.env('css');
|
5
|
+
|
6
|
+
const fontSizeDropdownOptions = ['Tiny', 'Small', 'Default', 'Normal', 'Big', 'Huge'];
|
7
|
+
const fontSizes = ['12px', '14px', '16px', '18px', '22px', '26px'];
|
8
|
+
|
9
|
+
describe('ThinkSphere: Additional Settings accordion', () => {
|
10
|
+
before(() => {
|
11
|
+
cy.loginAs('admin');
|
12
|
+
});
|
13
|
+
|
14
|
+
describe('Additional Settings accordion', () => {
|
15
|
+
abortEarlySetup();
|
16
|
+
before(() => {
|
17
|
+
thinkSpherePage.steps.navigateToThinkSphereCreateQuestion();
|
18
|
+
cy.barsPreLoaderWait();
|
19
|
+
});
|
20
|
+
|
21
|
+
thinkSpherePage.tests.verifyAdditionalSettingsAccordionProperties();
|
22
|
+
});
|
23
|
+
|
24
|
+
describe('Additional settings: Font size contents', () => {
|
25
|
+
abortEarlySetup();
|
26
|
+
before(() => {
|
27
|
+
thinkSpherePage.steps.navigateToThinkSphereCreateQuestion();
|
28
|
+
cy.barsPreLoaderWait();
|
29
|
+
thinkSpherePage.steps.expandAdditionalSettings();
|
30
|
+
});
|
31
|
+
|
32
|
+
thinkSpherePage.tests.verifyFontSizeSectionContents();
|
33
|
+
});
|
34
|
+
|
35
|
+
describe('Additional settings: Font size functionality preview tab', () => {
|
36
|
+
abortEarlySetup();
|
37
|
+
before(() => {
|
38
|
+
thinkSpherePage.steps.navigateToThinkSphereCreateQuestion();
|
39
|
+
cy.barsPreLoaderWait();
|
40
|
+
thinkSpherePage.steps.addQuestionInstructions();
|
41
|
+
thinkSpherePage.steps.expandAdditionalSettings();
|
42
|
+
utilities.verifyElementVisibilityState(thinkSpherePage.fontSizeDropdown(), 'visible');
|
43
|
+
});
|
44
|
+
|
45
|
+
fontSizeDropdownOptions.forEach((option, _) => {
|
46
|
+
it(`When the user selects '${option}' option from the Font Size dropdown, then font size of the preview tab should change to ${option} accordingly`, () => {
|
47
|
+
thinkSpherePage.steps.selectFontSizeOptionFromFontSizeDropdown(option);
|
48
|
+
utilities.verifyInnerText(thinkSpherePage.fontSizeDropdown(), `${option}`);
|
49
|
+
});
|
50
|
+
});
|
51
|
+
});
|
52
|
+
});
|