itemengine-cypress-automation 1.0.349-TEMRegression4-f1b48a1.0 → 1.0.349
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/Dockerfile +1 -0
- package/cypress/e2e/ILC/AudioResponseNew/editTabBasicSection.js +4 -16
- package/cypress/e2e/ILC/BrainingCampManipulative/editTabBasicSection.js +1 -1
- 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/checkScoringLabelBannerAndCorrectAnswerSection.js +33 -0
- 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/ChartsBar/editTabBasicSection.js +37 -0
- package/cypress/e2e/ILC/ChartsBar/headerSection.js +50 -2
- 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/headerSection.js +18 -1
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddFeatureRadioButton.js +2 -3
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabAddTranscriptRadioButton .js +2 -4
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerEditTabStudentViewSettings.js +3 -3
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerHeaderSectionAndButtons.js +2 -2
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTab.js +1 -1
- package/cypress/e2e/ILC/CkEditorAudioPlayer/audioPlayerPreviewTabTranscript.js +2 -3
- package/cypress/e2e/ILC/CkEditorEquationEditor/equationEditorBasicFile.js +4 -4
- package/cypress/e2e/ILC/CkEditorInsertImage/imageInfo.js +4 -4
- package/cypress/e2e/ILC/CkEditorInsertTable/tableStyle.js +2 -2
- package/cypress/e2e/ILC/CkEditorLink/uploadSection.js +1 -1
- package/cypress/e2e/ILC/ContentBlocks/editTabBasics.js +62 -4
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/allOrNothingBasicForAllViews.smoke.js +115 -6
- package/cypress/e2e/ILC/DragAndDropIntoCategoriesNew/headerSection.js +2 -0
- 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/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/specifyCorrectAnswerSection.js +0 -1
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/Scoring/blankResponseScoring.js +18 -20
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/allOrNothingForAllViews.smoke.js +216 -0
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/backgroundImageAndCanvasProperties.js +0 -1
- package/cypress/e2e/ILC/FillInTheGapsOverImageDragAndDrop/headerSection.js +1 -0
- 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/editTabScoringSection.js +2 -0
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/responseAnswersAndAcceptedStudentInput.js +2 -0
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/supportedFileTypes.js +1 -1
- 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 +2 -10
- package/cypress/e2e/ILC/FillInTheGapsTextNew/editTabScoringSection.js +2 -0
- package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +73 -0
- package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +38 -0
- package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +38 -0
- package/cypress/e2e/ILC/Graphing/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +87 -0
- package/cypress/e2e/ILC/Graphing/checkAddAlternativeButton.js +35 -0
- package/cypress/e2e/ILC/Graphing/editQuestion.smoke.js +28 -0
- package/cypress/e2e/ILC/Graphing/editTabBasicSection.js +38 -0
- package/cypress/e2e/ILC/Graphing/editTabScoringSection.js +1 -0
- package/cypress/e2e/ILC/Graphing/headerSection.js +36 -4
- package/cypress/e2e/ILC/Graphing/layoutAndGridOptions.js +6 -3
- package/cypress/e2e/ILC/GridFill/addAlternateButton.js +40 -0
- package/cypress/e2e/ILC/GridFill/customizeLayoutFillImageBackgroundImage.js +5 -6
- 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 +1 -3
- package/cypress/e2e/ILC/GridFill/scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +39 -0
- package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
- package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +39 -0
- package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountAllOrNothingCorrectPointsGreaterThanAlternativePoints.js +37 -0
- package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountallOrNothingCorrectPointsEqualToAlternativePoints.js +39 -0
- package/cypress/e2e/ILC/GridFill/scoring/cellshadeCountAllOrNothingAlternativePointsGreaterThanCorrectPoints.js +36 -0
- package/cypress/e2e/ILC/GridFill/scoring/checkLabelSaveAsYouGo.js +75 -0
- package/cypress/e2e/ILC/GridFill/specifyCorrectAnswerSection.js +2 -4
- package/cypress/e2e/ILC/ImageHighlight/Scoring/partialDifferentWeightsScoring.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/ListOrderingDropdown/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +24 -0
- package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +24 -0
- package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +24 -0
- package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +86 -0
- package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/partialEqualWeightsBasic.js +1 -1
- package/cypress/e2e/ILC/ListOrderingDropdown/allOrNothingForAllViews.smoke.js +1 -1
- package/cypress/e2e/ILC/ListOrderingDropdown/checkAddAlternativeButton.js +35 -0
- package/cypress/e2e/ILC/ListOrderingDropdown/editTabBasicSection.js +24 -0
- package/cypress/e2e/ILC/ListOrderingDropdown/headerSection.js +108 -0
- package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +6 -10
- package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js +2 -1
- package/cypress/e2e/ILC/ListOrderingNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +52 -0
- package/cypress/e2e/ILC/ListOrderingNew/editTabBasicSection.js +23 -0
- package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +35 -9
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +41 -0
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +30 -0
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +50 -0
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +101 -0
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/checkAddAlternativeButton.js +38 -0
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabBasicSection.js +24 -0
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabScoring.js +4 -1
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/headerSection.js +35 -1
- package/cypress/e2e/ILC/Matching/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +98 -0
- package/cypress/e2e/ILC/Matching/allOrNothingScoringForAllViews.smoke.js +210 -0
- package/cypress/e2e/ILC/Matching/checkAlternativeButton.js +38 -0
- package/cypress/e2e/ILC/Matching/clickAndDrop.js +3 -5
- package/cypress/e2e/ILC/Matching/draggableOptions.js +4 -0
- package/cypress/e2e/ILC/Matching/editTabBasicSection.js +41 -0
- package/cypress/e2e/ILC/Matching/headerSection.js +36 -11
- package/cypress/e2e/ILC/Matching/questionInstructionsAndPromptSection.js +2 -15
- package/cypress/e2e/ILC/MatchingDropdown/allOrNothingScoringForAllViews.smoke.js +208 -0
- package/cypress/e2e/ILC/MultipleSelection/allOrNothingBasicForAllViews.smoke.js +227 -0
- package/cypress/e2e/ILC/MultipleSelection/allOrNothingWithAlternativeAnswer.js +6 -3
- package/cypress/e2e/ILC/MultipleSelection/checkScoringLabelBannerAndCorrectAnswer.js +3 -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/Scoring/checkScoringLabelBannerAndCorrectAnswer.js +1 -0
- 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 +5 -2
- package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +79 -0
- package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +42 -0
- package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +42 -0
- package/cypress/e2e/ILC/NumberLine/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +75 -0
- package/cypress/e2e/ILC/NumberLine/checkAddAlternativeButton.js +32 -0
- package/cypress/e2e/ILC/NumberLine/editTabSection.js +38 -0
- package/cypress/e2e/ILC/NumberLine/headerSection.js +33 -4
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +81 -0
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +43 -0
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +43 -0
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +76 -0
- package/cypress/e2e/ILC/NumberLineLabel/additionalSettingsBasic.js +1 -1
- package/cypress/e2e/ILC/NumberLineLabel/checkAddAlternativeButton.js +34 -0
- package/cypress/e2e/ILC/NumberLineLabel/editTabSection.js +38 -0
- package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +37 -5
- package/cypress/e2e/ILC/NumberLineLabel/manuallyAndNonScoredEditTab.js +2 -1
- package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/editQuestion.smoke.js +1 -1
- package/cypress/e2e/ILC/ShortTextResponseNew/editTabBasicSections.js +31 -48
- package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +2 -4
- 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 +86 -0
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +86 -0
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +3 -1
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsScoringBasic.js +10 -3
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +4 -2
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +5 -3
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsScoringBasic.js +4 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +64 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAddEvaluation.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingBasicForAlternateAnswer.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +64 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +65 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialDifferentWeightsScoringBasic.js +8 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasic.js +1 -0
- package/cypress/e2e/ILC/TextEntryMath/Scoring/partialEqualWeightsScoringBasicForAlternateAnswer.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +2 -0
- package/cypress/e2e/ILC/TextEntryMath/editTabBasicSection.js +27 -3
- 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 -1
- package/cypress/e2e/ILC/TextEntryMath/headerSection.js +43 -0
- package/cypress/e2e/ILC/TextEntryMath/previewContentsForAllViews.smoke.js +7 -5
- package/cypress/e2e/ILC/TextSelection/ScoringParagraph/checkScoringLabelBannerAndCorrectAnswerSection.js +0 -1
- 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 +276 -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 +541 -0
- package/cypress/e2e/ILC/ThinkSphere/previewTabReviewSection.js +97 -0
- package/cypress/e2e/ILC/ThinkSphere/solvePhase.js +296 -0
- package/cypress/e2e/ILC/ThinkSphere/studentViewPlanTabSection.js +393 -0
- package/cypress/e2e/ILC/ThinkSphere/studentViewReviewTabSection.js +141 -0
- package/cypress/e2e/ILC/ToolAudioPlayerNew/headerSection.js +90 -2
- package/cypress/e2e/ILC/UploadResponse/editTabBasicSection.js +34 -0
- package/cypress/e2e/ILC/UploadResponse/headerSection.js +38 -1
- package/cypress/e2e/ILC/VideoResponseNew/editTabBasicSection.js +14 -29
- package/cypress/e2e/ILC/chartsDotsPlot/headerSection.js +16 -1
- package/cypress/e2e/Sessions/fetchResponses.js +3 -3
- package/cypress/e2e/Sessions/scores.js +8 -10
- package/cypress/e2e/applitools.config.js +3 -3
- package/cypress/fixtures/theme/ilc.json +14 -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 +47 -22
- package/cypress/pages/brainingCampManipulativePage.js +1 -1
- package/cypress/pages/chartsBarPage.js +20 -0
- 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 +16 -28
- 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 +5 -4
- package/cypress/pages/components/ckEditorInsertImageComponent.js +2 -2
- package/cypress/pages/components/ckEditorLinkComponent.js +8 -9
- package/cypress/pages/components/commonComponents.js +8 -1
- package/cypress/pages/components/createQuestionBasePage.js +15 -2
- package/cypress/pages/components/defaultToolDropdown.js +7 -6
- package/cypress/pages/components/editCategoryFlyout.js +2 -2
- package/cypress/pages/components/equationEditorSectionCommonComponent.js +10 -25
- package/cypress/pages/components/fillInTheGapsDropdownCommonComponent.js +3 -3
- package/cypress/pages/components/fillInTheGapsTextCommonComponent.js +29 -35
- package/cypress/pages/components/gridQuestionCommonComponent.js +8 -37
- package/cypress/pages/components/imageCanvasComponent.js +7 -6
- package/cypress/pages/components/mcqAdditionalSettingsBase.js +4 -0
- package/cypress/pages/components/questionInstructionsComponent.js +7 -0
- package/cypress/pages/components/scoringSectionBaseEditTab.js +5 -0
- package/cypress/pages/contentBlocksPage.js +2 -0
- package/cypress/pages/desmos3DGraphingPage.js +149 -4
- package/cypress/pages/desmosGeometryPage.js +184 -4
- package/cypress/pages/dialogBoxBase.js +2 -1
- package/cypress/pages/drawingResponsePage.js +6 -4
- package/cypress/pages/fillInTheGapsOverImageDropdownPage.js +1 -1
- package/cypress/pages/gradingViewPage.js +8 -0
- package/cypress/pages/graphingPage.js +27 -8
- package/cypress/pages/gridFillPage.js +15 -6
- package/cypress/pages/index.js +2 -1
- package/cypress/pages/listOrderingPage.js +32 -1
- package/cypress/pages/matchingPage.js +26 -7
- package/cypress/pages/multipleSelectionPage.js +10 -39
- package/cypress/pages/numberLineLabelPage.js +31 -8
- package/cypress/pages/numberLinePage.js +19 -7
- package/cypress/pages/selectQuestionResourceToolPage.js +8 -2
- package/cypress/pages/singleSelectionPage.js +0 -37
- package/cypress/pages/textEntryMathPage.js +24 -1
- package/cypress/pages/thinkSpherePage.js +2185 -0
- package/cypress/pages/uploadResponsePage.js +2 -1
- package/cypress/pages/videoResponsePage.js +3 -0
- package/cypress/support/commands.js +7 -4
- package/cypress/support/e2e.js +1 -0
- package/cypress/support/helpers/createItem.js +1200 -1
- package/cypress/support/helpers/utilities.js +88 -1
- package/package.json +3 -3
@@ -2,6 +2,7 @@ import abortEarlySetup from "../../../support/helpers/abortEarly";
|
|
2
2
|
import { uploadResponsePage } from "../../../pages";
|
3
3
|
import utilities from "../../../support/helpers/utilities";
|
4
4
|
import { supportedFileType } from "../../../fixtures/uploadResponseFileType";
|
5
|
+
import { commonComponents } from "../../../pages/components";
|
5
6
|
const css = Cypress.env('css');
|
6
7
|
|
7
8
|
const fileSizeLimitOptions = ['5', '10', '15', '20', '100'];
|
@@ -373,4 +374,37 @@ describe('Create question page - Upload Response: Question Instructions, Support
|
|
373
374
|
|
374
375
|
uploadResponsePage.tests.verifyWarningMessageDisappear();
|
375
376
|
});
|
377
|
+
|
378
|
+
describe('User should be able to edit incomplete authored question', () => {
|
379
|
+
abortEarlySetup();
|
380
|
+
before(() => {
|
381
|
+
uploadResponsePage.steps.navigateToCreateQuestion('upload response');
|
382
|
+
cy.barsPreLoaderWait();
|
383
|
+
uploadResponsePage.steps.clickOnSupportedFilesTypesAccordion();
|
384
|
+
uploadResponsePage.steps.uncheckDefaultSelectedFileTypes();
|
385
|
+
uploadResponsePage.steps.saveAQuestionWithIncompleteAuthoring();
|
386
|
+
uploadResponsePage.steps.editItem();
|
387
|
+
});
|
388
|
+
|
389
|
+
it('Warning icons should be displayed on the required fields', () => {
|
390
|
+
uploadResponsePage.steps.verifyWarningIconOnRequiredFields(['Please select a file type']);
|
391
|
+
});
|
392
|
+
|
393
|
+
it('When file type is selected then warning icons should disappear', () => {
|
394
|
+
uploadResponsePage.steps.clickOnSupportedFilesTypesAccordion();
|
395
|
+
uploadResponsePage.steps.selectSupportedFileTypeOption(0);
|
396
|
+
uploadResponsePage.supportedFileTypesAccordionWrapper()
|
397
|
+
.within(() => {
|
398
|
+
utilities.verifyElementVisibilityState(commonComponents.warningIcon(), 'notExist');
|
399
|
+
});
|
400
|
+
});
|
401
|
+
|
402
|
+
it('Clicking on Save Question button the question should get saved and a snackbar with text \'Saved successfully!\' should be displayed', () => {
|
403
|
+
uploadResponsePage.steps.saveAQuestionAndVerifySnackbar();
|
404
|
+
});
|
405
|
+
|
406
|
+
it('Warning icon should not be visible', () => {
|
407
|
+
utilities.verifyElementVisibilityState(uploadResponsePage.warningIcon(), 'notExist');
|
408
|
+
});
|
409
|
+
});
|
376
410
|
});
|
@@ -1,6 +1,9 @@
|
|
1
1
|
import abortEarlySetup from "../../../support/helpers/abortEarly";
|
2
|
-
import { uploadResponsePage, dialogBoxBase } from "../../../pages";
|
2
|
+
import { uploadResponsePage, dialogBoxBase, itemPreviewPage } from "../../../pages";
|
3
3
|
import utilities from "../../../support/helpers/utilities";
|
4
|
+
import { browseItemsPage } from "../../../pages/components";
|
5
|
+
var itemReferenceID = ""
|
6
|
+
|
4
7
|
|
5
8
|
describe('Create question page - Upload Response: Header section and Saving question', () => {
|
6
9
|
before(() => {
|
@@ -49,4 +52,38 @@ describe('Create question page - Upload Response: Header section and Saving ques
|
|
49
52
|
|
50
53
|
uploadResponsePage.tests.verifySavedSuccessfullySnackbarCSSAndA11y();
|
51
54
|
});
|
55
|
+
|
56
|
+
describe('Saving a question with incomplete authoring', () => {
|
57
|
+
abortEarlySetup();
|
58
|
+
before(() => {
|
59
|
+
uploadResponsePage.steps.navigateToCreateQuestion('upload response');
|
60
|
+
cy.barsPreLoaderWait();
|
61
|
+
uploadResponsePage.steps.clickOnSupportedFilesTypesAccordion();
|
62
|
+
uploadResponsePage.steps.uncheckDefaultSelectedFileTypes();
|
63
|
+
});
|
64
|
+
|
65
|
+
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', () => {
|
66
|
+
dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please select a file type']);
|
67
|
+
uploadResponsePage.steps.saveAQuestionWithIncompleteAuthoring();
|
68
|
+
});
|
69
|
+
uploadResponsePage.tests.verifySavedSuccessfullySnackbarCSSAndA11y();
|
70
|
+
});
|
71
|
+
|
72
|
+
describe('Save as you go - Browse item page contents', () => {
|
73
|
+
abortEarlySetup();
|
74
|
+
before(() => {
|
75
|
+
uploadResponsePage.steps.navigateToCreateQuestion('upload response');
|
76
|
+
cy.barsPreLoaderWait();
|
77
|
+
uploadResponsePage.steps.clickOnSupportedFilesTypesAccordion();
|
78
|
+
uploadResponsePage.steps.uncheckDefaultSelectedFileTypes();
|
79
|
+
uploadResponsePage.steps.saveAQuestionWithIncompleteAuthoring();
|
80
|
+
utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
|
81
|
+
itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
|
82
|
+
browseItemsPage.steps.navigateToBrowseItemsPage();
|
83
|
+
});
|
84
|
+
|
85
|
+
it('When user saves an incompletely authored question then a warning icon should be visible in browse items page', () => {
|
86
|
+
browseItemsPage.steps.verifyWarningIconInBrowseItemPage(`${itemReferenceID}`);
|
87
|
+
});
|
88
|
+
});
|
52
89
|
});
|
@@ -159,31 +159,21 @@ describe('Create item page - Video response: Question instructions, Maximum reco
|
|
159
159
|
});
|
160
160
|
});
|
161
161
|
|
162
|
-
it('When the user focuses in and out of the empty \'Maximum recording duration\' input field,
|
162
|
+
it('When the user focuses in and out of the empty \'Maximum recording duration\' input field, Validation error should not be displayed below the \'Maximum recording duration\' input field and it should take up default value i.e. 300', () => {
|
163
163
|
videoResponsePage.steps.clearMaximumRecordingDurationInputField();
|
164
|
-
|
165
|
-
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), '
|
164
|
+
videoResponsePage.steps.verifyMaximumRecordingDuration(300);
|
165
|
+
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), 'notExist');
|
166
166
|
});
|
167
167
|
|
168
|
-
videoResponsePage.tests.verifyErrorMessageCSSAndA11y();
|
169
|
-
|
170
168
|
it('When the user updates the \'Maximum recording duration\' value, then the validation message \'Error: Maximum recording duration is required.\' should disappear.', () => {
|
171
169
|
videoResponsePage.steps.setMaximumRecordingDuration(1000);
|
172
170
|
videoResponsePage.steps.verifyErrorMessageIsNotDisplayed();
|
173
171
|
});
|
174
172
|
|
175
|
-
it('When the user has set \'Maximum recording duration\' to \'0\' (zero),
|
173
|
+
it('When the user has set \'Maximum recording duration\' to \'0\' (zero), error message should not be displayed and it should take default value i.e 300', () => {
|
176
174
|
videoResponsePage.steps.setMaximumRecordingDuration(0);
|
177
|
-
videoResponsePage.steps.verifyMaximumRecordingDuration(
|
178
|
-
utilities.
|
179
|
-
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), 'visible');
|
180
|
-
});
|
181
|
-
|
182
|
-
videoResponsePage.tests.verifyErrorMessageCSSAndA11y();
|
183
|
-
|
184
|
-
it('When the user updates the \'Maximum recording duration\' value, then the validation message \'Error: Value must be greater than 0 secs.\' should disappear', () => {
|
185
|
-
videoResponsePage.steps.setMaximumRecordingDuration(1000);
|
186
|
-
videoResponsePage.steps.verifyErrorMessageIsNotDisplayed();
|
175
|
+
videoResponsePage.steps.verifyMaximumRecordingDuration(300);
|
176
|
+
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), 'notExist');
|
187
177
|
});
|
188
178
|
|
189
179
|
it('When user adds decimal values or alphanumeric values then only numeric values should be displayed in the maximum recording length input field', () => {
|
@@ -204,32 +194,27 @@ describe('Create item page - Video response: Question instructions, Maximum reco
|
|
204
194
|
videoResponsePage.steps.verifyMaximumRecordingDuration(5);
|
205
195
|
});
|
206
196
|
|
207
|
-
it('When the user focuses in and out of the empty \'Maximum recording duration\' input field,
|
197
|
+
it('When the user focuses in and out of the empty \'Maximum recording duration\' input field, validation error should not be displayed below the \'Maximum recording duration\' input field', () => {
|
208
198
|
videoResponsePage.steps.clearMaximumRecordingDurationInputField();
|
209
199
|
videoResponsePage.steps.toggleMaximumRecordingDurationInputField('Secs');
|
210
200
|
videoResponsePage.steps.clearMaximumRecordingDurationInputField();
|
211
|
-
utilities.
|
212
|
-
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), 'visible');
|
201
|
+
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), 'notExist');
|
213
202
|
});
|
214
203
|
|
215
|
-
|
216
|
-
|
217
|
-
it('When the user updates the \'Maximum recording duration\' value, then the validation message \'Error: Maximum recording duration is required.\' should disappear.', () => {
|
204
|
+
it('When the user updates the \'Maximum recording duration\' value, then the validation message should not be displayed', () => {
|
218
205
|
videoResponsePage.steps.setMaximumRecordingDuration(5);
|
219
206
|
videoResponsePage.steps.verifyErrorMessageIsNotDisplayed();
|
220
207
|
});
|
221
208
|
|
222
|
-
it('When the user has set \'Maximum recording duration\' to \'0\' (zero), a validation message
|
223
|
-
videoResponsePage.steps.
|
224
|
-
videoResponsePage.steps.verifyMaximumRecordingDuration(
|
209
|
+
it('When the user has set \'Maximum recording duration\' to \'0\' (zero), a validation message should not be displayed and it should take default value i.e. 300', () => {
|
210
|
+
videoResponsePage.steps.setMaximumRecordingDuration(0);
|
211
|
+
videoResponsePage.steps.verifyMaximumRecordingDuration(300);
|
225
212
|
// Uncomment once https://redmine.zeuslearning.com/issues/583618 is resolved
|
226
213
|
// utilities.verifyInnerText(videoResponsePage.errorMessage(), 'Error: Value must be greater than 0 mins.');
|
227
|
-
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), '
|
214
|
+
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), 'notExist');
|
228
215
|
});
|
229
216
|
|
230
|
-
|
231
|
-
|
232
|
-
it('When the user updates the \'Maximum recording duration\' value, then the validation message \'Error: Value must be greater than 0 mins.\' should disappear', () => {
|
217
|
+
it('When the user updates the \'Maximum recording duration\' value, then the validation message should not be displayed', () => {
|
233
218
|
videoResponsePage.steps.setMaximumRecordingDuration(5);
|
234
219
|
videoResponsePage.steps.verifyErrorMessageIsNotDisplayed();
|
235
220
|
videoResponsePage.steps.toggleMaximumRecordingDurationInputField('Mins');
|
@@ -98,7 +98,22 @@ describe('Create item page - Charts - Dot plot: Header section and saving questi
|
|
98
98
|
chartsDotPlotPage.steps.selectDotPlot();
|
99
99
|
});
|
100
100
|
|
101
|
-
|
101
|
+
describe('Validation error messages', () => {
|
102
|
+
dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(['Please set points']);
|
103
|
+
|
104
|
+
it('Validation error messages should be displayed below required input fields', () => {
|
105
|
+
chartsDotPlotPage.steps.verifyQuestionInstructionsErrorMessageIsNotDisplayed();
|
106
|
+
chartsDotPlotPage.steps.verifyWarningIconOnRequiredFields(['Please set points']);
|
107
|
+
chartsDotPlotPage.steps.verifySpecifyCorrectAnswerErrorIconNotExists();
|
108
|
+
});
|
109
|
+
|
110
|
+
it('Validation error messages should disappear when required input fields are filled', () => {
|
111
|
+
chartsDotPlotPage.steps.allotPoints(10);
|
112
|
+
chartsDotPlotPage.steps.verifyErrorMessageIsNotDisplayed();
|
113
|
+
});
|
114
|
+
|
115
|
+
chartsDotPlotPage.tests.verifyCreateItemWrapperContentsA11y();
|
116
|
+
});
|
102
117
|
|
103
118
|
describe('Saving a question', () => {
|
104
119
|
it('When user clicks on "Save question" button, then the question should get saved and a snackbar with text \'Saved successfully!\' should be displayed', () => {
|
@@ -15,7 +15,7 @@ describe('Fetch Responses API', () => {
|
|
15
15
|
let activityTemplateIdNew1;
|
16
16
|
before(() => {
|
17
17
|
cy.loginAs('admin');
|
18
|
-
cy.createItem('
|
18
|
+
cy.createItem('FetchResponseTest12');
|
19
19
|
cy.wait(5000)
|
20
20
|
cy.visit(`${Cypress.env('itemEngineHomePage')}`);
|
21
21
|
});
|
@@ -40,7 +40,7 @@ describe('Fetch Responses API', () => {
|
|
40
40
|
.click();
|
41
41
|
cy.get('textarea[class="body-param__text"]')
|
42
42
|
.clear()
|
43
|
-
.fill(`{\n "item_references": ["
|
43
|
+
.fill(`{\n "item_references": ["FetchResponseTest12"],\n "references": [],\n "types": [],\n "limit": 50,\n "sort_field": "created",\n "sort": "desc"\n}\n`);
|
44
44
|
cy.get('.execute')
|
45
45
|
.click();
|
46
46
|
cy.wait(2000);
|
@@ -52,7 +52,7 @@ describe('Fetch Responses API', () => {
|
|
52
52
|
.then((text) => {
|
53
53
|
// Parse the JSON from the DOM
|
54
54
|
const actualResponse = JSON.parse(text);
|
55
|
-
const test1Data = actualResponse.data.
|
55
|
+
const test1Data = actualResponse.data.FetchResponseTest12[0];
|
56
56
|
const { reference: ref1 } = test1Data;
|
57
57
|
itemReferenceIdNew = ref1;
|
58
58
|
});
|
@@ -6,7 +6,14 @@ describe('Scores API cases', () => {
|
|
6
6
|
var timestamp;
|
7
7
|
var dtScoreUpdateArray = [];
|
8
8
|
|
9
|
-
let itemReferenceIdNew
|
9
|
+
let itemReferenceIdNew;
|
10
|
+
const domainMapping = {
|
11
|
+
'sandbox.itemengine-qa.il-apps.com': "0ee6c7-ef6e-717-4b8-cda87eaac101",
|
12
|
+
'sandbox.itemengine-staging.il-apps.com': "a50ba14-5603-b55e-7cc-d17404ce5afb",
|
13
|
+
'sandbox.itemengine-prod.il-apps.com': "444d582-3e4-b18f-e52c-5c8c732717"
|
14
|
+
};
|
15
|
+
|
16
|
+
itemReferenceIdNew = domainMapping[domainName] || null;
|
10
17
|
let dt_score_update;
|
11
18
|
let response_id;
|
12
19
|
let dt_saved;
|
@@ -120,17 +127,8 @@ describe('Scores API cases', () => {
|
|
120
127
|
});
|
121
128
|
|
122
129
|
it('If the user clicks on the Scores option from the menu bar, user should be navigated to the Scores API page', () => {
|
123
|
-
cy.get('[aria-label="Navigation Drawer List"]')
|
124
|
-
.contains('Sessions')
|
125
|
-
.click()
|
126
|
-
.parents('[class*="MuiListItemButton-gutters"]')
|
127
|
-
.should('have.attr', 'aria-expanded', 'true');
|
128
130
|
cy.contains('Scores')
|
129
131
|
.click();
|
130
|
-
cy.contains('Scores')
|
131
|
-
.parent()
|
132
|
-
.parent()
|
133
|
-
.should('have.class', 'Mui-selected');
|
134
132
|
cy.url()
|
135
133
|
.should('eq', Cypress.config().baseUrl + '/item-engine/data-api/sessions/fetch-scores');
|
136
134
|
});
|
@@ -3,9 +3,9 @@ module.exports = {
|
|
3
3
|
serverUrl: 'https://eyes.applitools.com',
|
4
4
|
browser: [
|
5
5
|
{ width: 1366, height: 609, name: 'chrome' },
|
6
|
-
|
7
|
-
|
8
|
-
|
6
|
+
{ width: 1280, height: 832, name: 'edgechromium' },
|
7
|
+
{ width: 1536, height: 960, name: 'safari' },
|
8
|
+
{ width: 1024, height: 1366, name: 'safari' }
|
9
9
|
],
|
10
10
|
//Configuration options: https://applitools.com/tutorials/sdks/cypress/configuration
|
11
11
|
APPLITOOLS_IS_DISABLED: true
|
@@ -1,5 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"color": {
|
3
|
+
"boxShadow": "rgba(82, 0, 255, 0.1)",
|
3
4
|
"primaryBtn": "rgb(255, 255, 255)",
|
4
5
|
"primaryBtnBg": "rgb(82, 0, 255)",
|
5
6
|
"primaryBtnBorder": "rgb(0, 0, 124)",
|
@@ -157,7 +158,19 @@
|
|
157
158
|
"newFontColor": "rgb(128, 25, 0)",
|
158
159
|
"newResponseFieldColor": "rgb(119, 60, 60)",
|
159
160
|
"blackText": "rgb(0, 0, 0)",
|
160
|
-
"blackTextBoxText":"rgba(0, 0, 0, 0.38)"
|
161
|
+
"blackTextBoxText":"rgba(0, 0, 0, 0.38)",
|
162
|
+
"whiteColor": "rgba(255, 255, 255, 1)",
|
163
|
+
"phasesSectionBorderColor": "rgba(186, 201, 255, 1)",
|
164
|
+
"optionColor": "rgb(13, 71, 161)",
|
165
|
+
"borderColor": "rgb(205, 205, 206)",
|
166
|
+
"buttonHoverColor": "rgb(68, 0, 211)",
|
167
|
+
"tableRowHoverColor": "rgba(0, 0, 0, 0.04)",
|
168
|
+
"dialogBoxBoxShadow": "rgba(0, 0, 0, 0.25)",
|
169
|
+
"desktopMobileViewtoggleButtonSelectedBg": "rgb(227, 242, 253)",
|
170
|
+
"progressBarBackgroundColor": "rgba(0, 0, 46, 0.7)",
|
171
|
+
"questionInstructionBG": "rgb(235, 239, 255)",
|
172
|
+
"deletePageColor": "rgb(124, 0, 0)",
|
173
|
+
"dropdownDefaultBG": "rgb(227, 240, 237)"
|
161
174
|
},
|
162
175
|
"fontSize": {
|
163
176
|
"extraSmall": "10px",
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -2,6 +2,7 @@ import constants from "../fixtures/constants";
|
|
2
2
|
import utilities from "../support/helpers/utilities";
|
3
3
|
import { ckEditorToolbar, commonComponents, createQuestionBasePage, equationEditorFlyout, playbackControlsBaseComponent } from "./components";
|
4
4
|
import { dialogBoxBase } from "./dialogBoxBase";
|
5
|
+
import { createItemPage } from "./createItemPage";
|
5
6
|
|
6
7
|
const selectors = {
|
7
8
|
...playbackControlsBaseComponent,
|
@@ -14,11 +15,11 @@ const selectors = {
|
|
14
15
|
uploadAudioFileUploadLabel: () => cy.get('[class*="AudioPlayerstyles__AudioLabel"]').eq(0),
|
15
16
|
uploadAudioFileNameLabel: () => cy.get('[class*="AudioPlayerstyles__AudioLabel"]').eq(1),
|
16
17
|
deleteAudioFileButton: () => cy.get('[aria-label="Delete"]'),
|
17
|
-
sourceUrlLabel: () => cy.get('[class*="
|
18
|
-
sourceUrlInputField: () => cy.get('input[
|
18
|
+
sourceUrlLabel: () => cy.get('[class*="AudioPlayerFormstyles__TextFieldLabel"]').eq(0),
|
19
|
+
sourceUrlInputField: () => cy.get('[class*="AudioPlayerFormstyles__Text"] input[type="text"]'),
|
19
20
|
uploadAudioChooseFileButton: () => cy.get('.choose-file-upload-button'),
|
20
21
|
uploadAudioNoFileChosenLabel: () => cy.get('[aria-label="No file chosen"]').eq(0),
|
21
|
-
uploadedFileNameLabel: () => cy.get('.selected-file').eq(0),
|
22
|
+
uploadedFileNameLabel: () => cy.get('[class*="AudioPlayerFormstyles__FileInputWrapper"] .selected-file-wrapper').eq(0),
|
22
23
|
audioFileUploadProgressBar: () => cy.get('[class*="AudioPlayerstyles__ProgressBar-"]').eq(0),
|
23
24
|
inputTypeFile: () => cy.get('input[type="file"]'),
|
24
25
|
audioPlayerStyleLabel: () => cy.get('.player-style-label'),
|
@@ -28,7 +29,7 @@ const selectors = {
|
|
28
29
|
standardStyleToggleButtonLabel: () => cy.get('[data-ngie-testid="standard-toggle-button"] .ngie-toggle-button-label'),
|
29
30
|
barStyleToggleButtonLabel: () => cy.get('[data-ngie-testid="bar-toggle-button"] .ngie-toggle-button-label'),
|
30
31
|
compactStyleToggleButtonLabel: () => cy.get('[data-ngie-testid="compact-toggle-button"] .ngie-toggle-button-label'),
|
31
|
-
compactPlayerOptionsLabel: () => cy.get('.options-label'),
|
32
|
+
compactPlayerOptionsLabel: () => cy.get('.compact-player-wrapper .options-label'),
|
32
33
|
defaultPlayerOptionButton: () => cy.get('[data-ngie-testid="default-toggle-button"]'),
|
33
34
|
textPlayerOptionButton: () => cy.get('[data-ngie-testid="text-toggle-button"]'),
|
34
35
|
imagePlayerOptionButton: () => cy.get('[data-ngie-testid="image-toggle-button"]'),
|
@@ -45,28 +46,30 @@ const selectors = {
|
|
45
46
|
customizePlayerLayoutProgressIndicatorButton: () => cy.get('[data-ngie-testid="progressbar-toggle-button"]'),
|
46
47
|
customizePlayerLayoutToggleButtonLabel: () => cy.get('[class*="ToggleButtonMUI5style__ButtonLabelWrapper"]'),
|
47
48
|
uncheckAllButton: () => cy.get('[class*="AudioPlayerstyles__UncheckButton"]'),
|
48
|
-
uploadTranscriptFileLabel: () => cy.get('
|
49
|
-
uploadTranscriptFileRadioButton: () => cy.get('.
|
50
|
-
typeInTranscriptLabel: () => cy.get('
|
51
|
-
typeInTranscriptRadioButton: () => cy.get('
|
52
|
-
transcriptInputField: () => cy.get('[
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
49
|
+
uploadTranscriptFileLabel: () => cy.get('.upload-transcript-opt-label'),
|
50
|
+
uploadTranscriptFileRadioButton: () => cy.get('.upload-transcript-opt-label input'),
|
51
|
+
typeInTranscriptLabel: () => cy.get('.type-in-transcript-opt-label'),
|
52
|
+
typeInTranscriptRadioButton: () => cy.get('[aria-label="Type in transcript"][type="radio"]'),
|
53
|
+
transcriptInputField: () => cy.get('[title="Transcript"]'),
|
54
|
+
cKEditorTranscriptInputField: () => cy.get('textarea[aria-label="Transcript"]'),
|
55
|
+
ckEditorPlayAttemptsLimitInputField: () => cy.get('input[aria-label="Playback Limit"]'),
|
56
|
+
allowStudentsToDownloadAudioLabel: () => cy.get('.allow-students-to-download-audio .MuiFormControlLabel-label').eq(0),
|
57
|
+
allowStudentsToDownloadAudioCheckbox: () => cy.get('.allow-students-to-download-audio input'),
|
58
|
+
limitPlayAttemptsLabel: () => cy.get('.allow-students-to-download-audio .MuiFormControlLabel-label').eq(1),
|
59
|
+
limitPlayAttemptsCheckbox: () => cy.get('.allow-students-to-download-audio input').eq(1),
|
57
60
|
playAttemptsLimitLabel: () => cy.get('.playback-limit-wrapper [class*="Label"]'),
|
58
|
-
playAttemptsLimitInputField: () => cy.get('.
|
61
|
+
playAttemptsLimitInputField: () => cy.get('.freeResponseAudioFormTextInput input'),
|
59
62
|
studentViewSettingsLabel: () => cy.get('[class*="AudioPlayerstyles__TranscriptLabelWrapper"]').eq(0),
|
60
63
|
audioOverviewLabel: () => cy.get('.additional-settings-label'),
|
61
64
|
audioOverviewInputField: () => cy.get('[title="Description"]'),
|
62
|
-
transcriptLabel: () => cy.get('.
|
65
|
+
transcriptLabel: () => cy.get('.freeResponseAudioFormTextInput .transcript-label'),
|
63
66
|
uploadTranscriptUploadLabel: () => cy.get('[class*="AudioPlayerstyles__AudioLabel"]').eq(2),
|
64
67
|
uploadTranscriptFileNameLabel: () => cy.get('[class*="AudioPlayerstyles__AudioLabel"]').eq(3),
|
65
68
|
uploadTranscriptChooseFileButton: () => cy.get('.upload-audio-file-input-wrapper button').eq(1),
|
66
69
|
uploadTranscriptNoFileChosenLabel: () => cy.get('[aria-label="No file chosen"]').eq(1),
|
67
|
-
transcriptInputTypeFile: () => cy.get('input[type="file"]')
|
68
|
-
uploadedTranscriptFileNameLabel: () => cy.get('.selected-file')
|
69
|
-
transcriptFileUploadProgressBar: () => cy.get('
|
70
|
+
transcriptInputTypeFile: () => cy.get('.upload-transcript-file input[type="file"]'),
|
71
|
+
uploadedTranscriptFileNameLabel: () => cy.get('.upload-transcript-file .selected-file-wrapper'),
|
72
|
+
transcriptFileUploadProgressBar: () => cy.get('.audio-player-form-progressbar'),
|
70
73
|
transcriptInputFieldLabel: () => cy.get('.additional-settings-label').eq(1),
|
71
74
|
deleteTranscriptButton: () => cy.get('[aria-label*="Delete"]'),
|
72
75
|
|
@@ -125,6 +128,7 @@ const steps = {
|
|
125
128
|
...ckEditorToolbar.steps,
|
126
129
|
...equationEditorFlyout.steps,
|
127
130
|
...commonComponents.steps,
|
131
|
+
...createItemPage.steps,
|
128
132
|
/**
|
129
133
|
* Uploads a file to the audio player by attaching the file located at the specified filePath.
|
130
134
|
* @param {string} filePath - The file path to the file to be uploaded.
|
@@ -166,6 +170,13 @@ const steps = {
|
|
166
170
|
.blur();
|
167
171
|
},
|
168
172
|
|
173
|
+
enterTextInCKEditorTranscriptInputField: (text) => {
|
174
|
+
audioPlayerPage.cKEditorTranscriptInputField()
|
175
|
+
.type(text)
|
176
|
+
.blur();
|
177
|
+
},
|
178
|
+
|
179
|
+
|
169
180
|
verifyTextInTranscriptInputField: (text) => {
|
170
181
|
audioPlayerPage.transcriptInputField()
|
171
182
|
.should('have.text', text);
|
@@ -706,6 +717,20 @@ const steps = {
|
|
706
717
|
.type(value)
|
707
718
|
},
|
708
719
|
|
720
|
+
/**
|
721
|
+
* Sets the playback limit value in the audio player's input field.
|
722
|
+
* @param {string|number} value - The value to set as the playback limit.
|
723
|
+
* @returns {void}
|
724
|
+
*/
|
725
|
+
setCKEditorPlaybackLimit: (value) => {
|
726
|
+
audioPlayerPage.ckEditorPlayAttemptsLimitInputField()
|
727
|
+
.clear()
|
728
|
+
.type(value);
|
729
|
+
cy.wait(2000);
|
730
|
+
audioPlayerPage.ckEditorPlayAttemptsLimitInputField()
|
731
|
+
.blur();
|
732
|
+
},
|
733
|
+
|
709
734
|
/**
|
710
735
|
* Verify the playback limit help text in preview tab
|
711
736
|
* @param {string|number} value - The value to set as the playback limit.
|
@@ -788,14 +813,14 @@ const steps = {
|
|
788
813
|
audioPlayerPage.audioOverviewInputField()
|
789
814
|
.find('[data-widget="ngie_equation"]')
|
790
815
|
.should('have.attr', 'aria-label', constants.CKEditorInputFieldEnteredEquationAriaLabel)
|
791
|
-
|
816
|
+
// .contains(constants.CKEditorInputFieldEnteredEquationText);
|
792
817
|
},
|
793
818
|
|
794
819
|
verifyEquationInAudioOverviewPreviewTab: () => {
|
795
820
|
audioPlayerPage.audioOverviewPreviewTab()
|
796
821
|
.find('[role="math"]')
|
797
822
|
.should('have.attr', 'aria-label', constants.CKEditorInputFieldEnteredEquationAriaLabel)
|
798
|
-
|
823
|
+
// .contains(constants.CKEditorInputFieldEnteredEquationText);
|
799
824
|
},
|
800
825
|
|
801
826
|
verifyLinkInAudioOverviewInputField: () => {
|
@@ -896,14 +921,14 @@ const steps = {
|
|
896
921
|
audioPlayerPage.transcriptInputField()
|
897
922
|
.find('[data-widget="ngie_equation"]')
|
898
923
|
.should('have.attr', 'aria-label', constants.CKEditorInputFieldEnteredEquationAriaLabel)
|
899
|
-
|
924
|
+
// .contains(constants.CKEditorInputFieldEnteredEquationText);
|
900
925
|
},
|
901
926
|
|
902
927
|
verifyEquationInTranscriptPreviewTab: () => {
|
903
928
|
audioPlayerPage.transcriptContentPreviewTab()
|
904
929
|
.find('[role="math"]')
|
905
930
|
.should('have.attr', 'aria-label', constants.CKEditorInputFieldEnteredEquationAriaLabel)
|
906
|
-
|
931
|
+
// .contains(constants.CKEditorInputFieldEnteredEquationText);
|
907
932
|
},
|
908
933
|
|
909
934
|
verifyLinkInTranscriptInputField: () => {
|
@@ -20,7 +20,7 @@ const selectors = {
|
|
20
20
|
selectAManipulativeLabel: () => cy.get('[class*="SelectManipulativeWrapper"] [class*="BrainingcampManipulativestyle__WrapperSubHeader"]'),
|
21
21
|
enterAShareCodeLabel: () => cy.get('[class*="EnterShareCodeWrapper"] [class*="BrainingcampManipulativestyle__WrapperSubHeader"]'),
|
22
22
|
enterAShareCodeInputField: () => cy.get('[class*="EnterShareCodeWrapper"] input'),
|
23
|
-
previewTabCanvas: () => cy.get('.
|
23
|
+
previewTabCanvas: () => cy.get('.bcm-inner')
|
24
24
|
}
|
25
25
|
|
26
26
|
const steps = {
|
@@ -1306,6 +1306,26 @@ const steps = {
|
|
1306
1306
|
verifyPenaltyPointsForEachIncorrectBar: (penaltyPoints) => {
|
1307
1307
|
utilities.verifyInnerText(autoScoredScoringSectionMultiResponseType.penaltyPointsDetailsSectionAllottedPointsLabel(), `Penalty points for each incorrect bar: ${penaltyPoints}`);
|
1308
1308
|
},
|
1309
|
+
|
1310
|
+
verifyAnswerStatusBannerNotExist: () => {
|
1311
|
+
chartsBarPage.correctIncorrectAnswerTextWrapper()
|
1312
|
+
.should('not.exist');
|
1313
|
+
},
|
1314
|
+
|
1315
|
+
verifyAnswerStatusBannerExist: () => {
|
1316
|
+
chartsBarPage.correctIncorrectAnswerTextWrapper()
|
1317
|
+
.should('be.visible');
|
1318
|
+
},
|
1319
|
+
|
1320
|
+
verifyCorrectAnswerSectionExist: () => {
|
1321
|
+
chartsBarPage.correctAnswersLabel()
|
1322
|
+
.should('be.visible');
|
1323
|
+
},
|
1324
|
+
|
1325
|
+
verifyCorrectAnswerSectionNotExist: () => {
|
1326
|
+
chartsBarPage.correctAnswersLabel()
|
1327
|
+
.should('not.exist');
|
1328
|
+
},
|
1309
1329
|
}
|
1310
1330
|
|
1311
1331
|
const tests = {
|
@@ -23,8 +23,8 @@ const selectors = {
|
|
23
23
|
return cy.get('[aria-labelledby*="Font-Size-dropdown-label"] [role="option"]')
|
24
24
|
}
|
25
25
|
},
|
26
|
-
fontSizeListOptionLabels: () => cy.get('[aria-labelledby
|
27
|
-
fontSizesLabels: () => cy.get('[aria-labelledby
|
26
|
+
fontSizeListOptionLabels: () => cy.get('[aria-labelledby*="Font-Size-dropdown-label"] li[role="option"] .dropdown-label-text'),
|
27
|
+
fontSizesLabels: () => cy.get('[aria-labelledby*="Font-Size-dropdown-label"] li[role="option"] .dropdown-post-label-text'),
|
28
28
|
}
|
29
29
|
|
30
30
|
const steps = {
|
@@ -69,6 +69,7 @@ const steps = {
|
|
69
69
|
|
70
70
|
expandFontSizeDropdown: () => {
|
71
71
|
additionalSettingsPanel.fontSizeDropdown()
|
72
|
+
.trigger('mouseover')
|
72
73
|
.click();
|
73
74
|
}
|
74
75
|
}
|
@@ -149,6 +149,12 @@ const steps = {
|
|
149
149
|
checkManuallyScoredScoringLabel: () => {
|
150
150
|
autoScoredScoringPreviewTab.scoringTypeLabelPreviewTab()
|
151
151
|
.should('have.text', 'Manually scored');
|
152
|
+
},
|
153
|
+
|
154
|
+
checkNonScoredScoringLabel: () => {
|
155
|
+
//Need to update once https://weldnorthed.atlassian.net/browse/IEI-5618 is resolved
|
156
|
+
autoScoredScoringPreviewTab.scoringTypeLabelPreviewTab()
|
157
|
+
.contains('Non scored', { matchCase: false });
|
152
158
|
}
|
153
159
|
}
|
154
160
|
|
@@ -161,7 +167,7 @@ const tests = {
|
|
161
167
|
.should('be.checked');
|
162
168
|
autoScoredScoringPreviewTab.gradingViewRadioButton()
|
163
169
|
.should('not.be.checked');
|
164
|
-
autoScoredScoringPreviewTab.steps.
|
170
|
+
autoScoredScoringPreviewTab.steps.checkManuallyScoredScoringLabel();
|
165
171
|
autoScoredScoringPreviewTab.steps.verifyCorrectIncorrectIconsNotExist();
|
166
172
|
});
|
167
173
|
|
@@ -76,6 +76,7 @@ const steps = {
|
|
76
76
|
|
77
77
|
expandPenaltyScoringDropdown: () => {
|
78
78
|
autoScoredScoringSectionMultiResponseType.penaltyScoringDropdown()
|
79
|
+
.trigger('mouseover')
|
79
80
|
.click();
|
80
81
|
cy.wait(500);
|
81
82
|
utilities.verifyElementVisibilityState(autoScoredScoringSectionMultiResponseType.penaltyScoringDropdownListOptions(), 'visible');
|
@@ -147,6 +148,7 @@ const steps = {
|
|
147
148
|
|
148
149
|
expandRoundingDropdown: () => {
|
149
150
|
autoScoredScoringSectionMultiResponseType.roundingDropdown()
|
151
|
+
.trigger('mouseover')
|
150
152
|
.click();
|
151
153
|
},
|
152
154
|
|
@@ -326,43 +326,31 @@ const tests = {
|
|
326
326
|
.verifyPseudoClassBeforeProperty('color', css.color.activeButtons);
|
327
327
|
});
|
328
328
|
|
329
|
-
it('If user has not selected correct answer in the correct accordion, then the Add alternative answer button should be in
|
330
|
-
utilities.
|
331
|
-
autoScoredSpecifyCorrectAnswerSection.steps.clickOnAddAlternativeAnswerButton();
|
332
|
-
});
|
333
|
-
|
334
|
-
it('CSS of warning popup', { tags: 'css' }, () => {
|
335
|
-
utilities.verifyCSS(dialogBoxBase.dialogBoxTitle(), {
|
336
|
-
'color': css.color.flyoutTitle,
|
337
|
-
'font-size': css.fontSize.heading,
|
338
|
-
'font-weight': css.fontWeight.semibold
|
339
|
-
});
|
340
|
-
utilities.verifyCSS(dialogBoxBase.dialogBoxContent(), {
|
341
|
-
'color': css.color.labels,
|
342
|
-
'font-size': css.fontSize.default,
|
343
|
-
'font-weight': css.fontWeight.regular
|
344
|
-
});
|
345
|
-
utilities.verifyCSS(dialogBoxBase.buttonClose().find('svg'), {
|
346
|
-
'fill': css.color.closeIcon
|
347
|
-
});
|
348
|
-
});
|
349
|
-
|
350
|
-
it('Accessibility of warning popup', { tags: 'a11y' }, () => {
|
351
|
-
cy.checkAccessibility(dialogBoxBase.dialogBox());
|
352
|
-
dialogBoxBase.steps.closeWarningPopup();
|
329
|
+
it('If user has not selected correct answer in the correct accordion, then the Add alternative answer button should be in disabled state', () => {
|
330
|
+
utilities.verifyElementDisabled(autoScoredSpecifyCorrectAnswerSection.alternativeAnswerButton());
|
353
331
|
});
|
354
332
|
},
|
355
333
|
|
356
334
|
verifyWarningPopupAndAccordionNavigationWhenNoPointsAddedInAlternativeAccordion: () => {
|
357
|
-
it('When user tries to expand correct accordion when all the mandatory fields are not filled in the alternative accordion, then
|
335
|
+
it('When user tries to expand correct accordion when all the mandatory fields are not filled in the alternative accordion, then correct answer accordion should be expanded and alternative 2 accordion should be in collapsed state', () => {
|
358
336
|
autoScoredSpecifyCorrectAnswerSection.correctAnswerAccordion()
|
359
337
|
.click();
|
360
|
-
|
361
|
-
|
362
|
-
|
338
|
+
autoScoredSpecifyCorrectAnswerSection.alternativeAnswerAccordion()
|
339
|
+
.eq(1)
|
340
|
+
.should('have.attr', 'aria-expanded', 'false');
|
341
|
+
autoScoredSpecifyCorrectAnswerSection.correctAnswerAccordion()
|
342
|
+
.should('have.attr', 'aria-expanded', 'true');
|
343
|
+
});
|
344
|
+
|
345
|
+
it('When user tries to expand alternative accordion when all the mandatory fields are not filled in the correct accordion, then correct answer accordion should be collapsed and alternative 2 accordion should be in expanded state', () => {
|
346
|
+
autoScoredSpecifyCorrectAnswerSection.alternativeAnswerAccordion()
|
347
|
+
.eq(1)
|
348
|
+
.click();
|
363
349
|
autoScoredSpecifyCorrectAnswerSection.alternativeAnswerAccordion()
|
364
350
|
.eq(1)
|
365
351
|
.should('have.attr', 'aria-expanded', 'true');
|
352
|
+
autoScoredSpecifyCorrectAnswerSection.correctAnswerAccordion()
|
353
|
+
.should('have.attr', 'aria-expanded', 'false');
|
366
354
|
});
|
367
355
|
}
|
368
356
|
}
|