itemengine-cypress-automation 1.0.342-save-as-you-go-updates-184015f.0 → 1.0.343-IEI-5600-IEI-5708-9440b5e.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/AudioResponseNew/editTabBasicSection.js +16 -4
- package/cypress/e2e/ILC/BrainingCampManipulative/editTabBasicSection.js +1 -1
- package/cypress/e2e/ILC/ChartsBar/HorizontalOrientationBarChart/gradingViewAndCorrectAnswerView.smoke.js +1 -1
- package/cypress/e2e/ILC/ChartsBar/headerSection.js +2 -50
- package/cypress/e2e/ILC/ChartsLine/editQuestion.smoke.js +1 -3
- package/cypress/e2e/ILC/ChartsLine/headerSection.js +1 -18
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/backgroundImageAndCanvasProperties.js +0 -1
- package/cypress/e2e/ILC/FillInTheGapsOverImageTextNew/supportedFileTypes.js +2 -4
- package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithAlternativePointsGreaterThanCorrectPoints.js +0 -72
- package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +0 -38
- package/cypress/e2e/ILC/Graphing/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +0 -38
- package/cypress/e2e/ILC/Graphing/headerSection.js +4 -37
- package/cypress/e2e/ILC/GridFill/headerSection.js +3 -3
- package/cypress/e2e/ILC/GridFill/scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +0 -39
- package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +0 -39
- package/cypress/e2e/ILC/GridFill/scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +0 -39
- package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountAllOrNothingCorrectPointsGreaterThanAlternativePoints.js +0 -37
- package/cypress/e2e/ILC/GridFill/scoring/cellShadeCountallOrNothingCorrectPointsEqualToAlternativePoints.js +0 -39
- package/cypress/e2e/ILC/GridFill/scoring/cellshadeCountAllOrNothingAlternativePointsGreaterThanCorrectPoints.js +0 -36
- package/cypress/e2e/ILC/GridFill/scoring/partialEqualWeightsWithCorrectPointsEqualToAlternativePoints.js +1 -2
- package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +0 -24
- package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +0 -24
- package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +0 -24
- 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/editTabBasicSection.js +0 -24
- package/cypress/e2e/ILC/ListOrderingDropdown/specifyCorrectAnswerSection.js +10 -6
- package/cypress/e2e/ILC/ListOrderingNew/HorizontalOrientation/specifyCorrectAnswerSection.js +1 -2
- package/cypress/e2e/ILC/ListOrderingNew/editTabBasicSection.js +0 -23
- package/cypress/e2e/ILC/ListOrderingNew/headerSection.js +9 -35
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +0 -41
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +0 -30
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +0 -50
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabBasicSection.js +0 -24
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/editTabScoring.js +1 -4
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/headerSection.js +1 -35
- package/cypress/e2e/ILC/Matching/clickAndDrop.js +5 -3
- package/cypress/e2e/ILC/Matching/draggableOptions.js +0 -4
- package/cypress/e2e/ILC/Matching/headerSection.js +11 -36
- package/cypress/e2e/ILC/Matching/questionInstructionsAndPromptSection.js +15 -2
- package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +0 -79
- package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +0 -42
- package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +0 -42
- package/cypress/e2e/ILC/NumberLine/headerSection.js +4 -34
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +0 -81
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +0 -43
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +0 -43
- package/cypress/e2e/ILC/NumberLineLabel/headerSection.js +4 -37
- package/cypress/e2e/ILC/NumberLineLabel/manuallyAndNonScoredEditTab.js +1 -2
- package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/editQuestion.smoke.js +1 -1
- package/cypress/e2e/ILC/ShortTextResponseNew/headerSection.js +4 -2
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingAlternatePointsGreaterThanCorrectPoints.js +0 -86
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsEqualToAlternatePoints.js +0 -86
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +0 -65
- 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 -64
- 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 -64
- package/cypress/e2e/ILC/TextEntryMath/Scoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +0 -65
- 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/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +0 -2
- package/cypress/e2e/ILC/TextEntryMath/editTabBasicSection.js +3 -27
- package/cypress/e2e/ILC/ThinkSphere/createReviewItem.js +1 -1
- package/cypress/e2e/ILC/ThinkSphere/editTabBasicSection.js +1 -1
- package/cypress/e2e/ILC/ThinkSphere/editThinkSphereQuestion.smoke.js +145 -54
- package/cypress/e2e/ILC/ThinkSphere/equationEditorEditCategoryFlyOut.js +2 -0
- package/cypress/e2e/ILC/ThinkSphere/planPhase.js +45 -5
- package/cypress/e2e/ILC/ThinkSphere/previewTabPlanSection.js +8 -8
- package/cypress/e2e/ILC/ThinkSphere/previewTabReviewSection.js +97 -0
- package/cypress/e2e/ILC/ThinkSphere/solvePhase.js +3 -3
- 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 +1 -1
- package/cypress/e2e/ILC/UploadResponse/editTabBasicSection.js +0 -34
- package/cypress/e2e/ILC/UploadResponse/headerSection.js +1 -38
- package/cypress/e2e/ILC/VideoResponseNew/editTabBasicSection.js +29 -14
- package/cypress/e2e/ILC/chartsDotsPlot/headerSection.js +1 -16
- package/cypress/pages/brainingCampManipulativePage.js +1 -1
- package/cypress/pages/chartsBarPage.js +0 -20
- package/cypress/pages/components/createQuestionBasePage.js +0 -7
- package/cypress/pages/components/defaultToolDropdown.js +1 -1
- package/cypress/pages/components/desmosToolComponent.js +1 -1
- package/cypress/pages/components/scoringSectionBaseEditTab.js +0 -3
- package/cypress/pages/desmos3DGraphingPage.js +4 -149
- package/cypress/pages/desmosGeometryPage.js +4 -184
- package/cypress/pages/graphingPage.js +4 -26
- package/cypress/pages/gridFillPage.js +6 -16
- package/cypress/pages/listOrderingPage.js +1 -32
- package/cypress/pages/matchingPage.js +7 -26
- package/cypress/pages/numberLineLabelPage.js +0 -26
- package/cypress/pages/numberLinePage.js +0 -15
- package/cypress/pages/textEntryMathPage.js +0 -21
- package/cypress/pages/thinkSpherePage.js +316 -5
- package/cypress/pages/uploadResponsePage.js +1 -2
- package/cypress/pages/videoResponsePage.js +0 -3
- package/cypress/support/helpers/createItem.js +22 -3
- package/cypress/support/helpers/utilities.js +13 -0
- package/package.json +1 -1
- package/cypress/e2e/ILC/ChartsBar/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +0 -33
- package/cypress/e2e/ILC/ChartsBar/editTabBasicSection.js +0 -37
- package/cypress/e2e/ILC/Graphing/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +0 -86
- package/cypress/e2e/ILC/Graphing/checkAddAlternativeButton.js +0 -35
- package/cypress/e2e/ILC/Graphing/editQuestion.smoke.js +0 -28
- package/cypress/e2e/ILC/Graphing/editTabBasicSection.js +0 -38
- package/cypress/e2e/ILC/GridFill/addAlternateButton.js +0 -40
- package/cypress/e2e/ILC/GridFill/scoring/checkLabelSaveAsYouGo.js +0 -75
- package/cypress/e2e/ILC/ListOrderingDropdown/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +0 -86
- package/cypress/e2e/ILC/ListOrderingDropdown/checkAddAlternativeButton.js +0 -35
- package/cypress/e2e/ILC/ListOrderingDropdown/headerSection.js +0 -108
- package/cypress/e2e/ILC/ListOrderingNew/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +0 -52
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +0 -101
- package/cypress/e2e/ILC/ListOrderingReorderAsASeperateList/checkAddAlternativeButton.js +0 -38
- package/cypress/e2e/ILC/Matching/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +0 -98
- package/cypress/e2e/ILC/Matching/checkAlternativeButton.js +0 -38
- package/cypress/e2e/ILC/Matching/editTabBasicSection.js +0 -41
- package/cypress/e2e/ILC/NumberLine/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +0 -73
- package/cypress/e2e/ILC/NumberLine/checkAddAlternativeButton.js +0 -32
- package/cypress/e2e/ILC/NumberLine/editTabSection.js +0 -38
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/checkScoringLabelBannerAndCorrectAnswerSection.js +0 -76
- package/cypress/e2e/ILC/NumberLineLabel/checkAddAlternativeButton.js +0 -34
- package/cypress/e2e/ILC/NumberLineLabel/editTabSection.js +0 -38
- package/cypress/e2e/ILC/TextEntryMath/headerSection.js +0 -43
@@ -0,0 +1,141 @@
|
|
1
|
+
import uuid from 'react-uuid';
|
2
|
+
import { thinkSpherePage } from "../../../pages";
|
3
|
+
import { browseItemsPage } from "../../../pages/components/browseItemsPage";
|
4
|
+
import { commonComponents } from "../../../pages/components/commonComponents";
|
5
|
+
import abortEarlySetup from "../../../support/helpers/abortEarly";
|
6
|
+
import utilities from "../../../support/helpers/utilities";
|
7
|
+
const css = Cypress.env('css');
|
8
|
+
|
9
|
+
describe('Student view : ThinkSphere Question - Review Section', () => {
|
10
|
+
const uuidString = uuid();
|
11
|
+
|
12
|
+
before(() => {
|
13
|
+
cy.loginAs('admin');
|
14
|
+
cy.createThinkSphereItem(uuidString, true);
|
15
|
+
thinkSpherePage.steps.visitThinksphereBrowseItemsPage();
|
16
|
+
browseItemsPage.steps.clickOnItemReferenceId(uuidString);
|
17
|
+
browseItemsPage.steps.clickOnAddReviewItem();
|
18
|
+
thinkSpherePage.steps.createReviewQuestion();
|
19
|
+
thinkSpherePage.steps.visitThinksphereBrowseItemsPage();
|
20
|
+
browseItemsPage.steps.clickOnActionButton();
|
21
|
+
browseItemsPage.steps.clickOnActionMenuItem(0);
|
22
|
+
thinkSpherePage.steps.clickOnReviewTab();
|
23
|
+
});
|
24
|
+
|
25
|
+
describe('\'Question instruction\' section', () => {
|
26
|
+
abortEarlySetup();
|
27
|
+
it('\'Question instruction\' section should be present', () => {
|
28
|
+
thinkSpherePage.steps.verifyQuestionInstructionPreviewTexWrapperVisibility('question instruction text');
|
29
|
+
});
|
30
|
+
|
31
|
+
it('CSS of \'Question instruction\' section', { tags: 'css' }, () => {
|
32
|
+
utilities.verifyCSS(thinkSpherePage.questionInstructionPreviewTexWrapper(), {
|
33
|
+
'border-radius': '12px',
|
34
|
+
'background-color': css.color.questionInstructionBG,
|
35
|
+
'padding': '10px 170px 10px 27px',
|
36
|
+
'font-size': css.fontSize.default,
|
37
|
+
'font-weight': css.fontWeight.regular,
|
38
|
+
});
|
39
|
+
});
|
40
|
+
|
41
|
+
it('Question instruction image should visibile in the preview', () => {
|
42
|
+
thinkSpherePage.steps.verifyQuestionInstructionPreviewImageWrapperVisibility();
|
43
|
+
});
|
44
|
+
|
45
|
+
it('CSS of question instruction image section', { tags: 'css' }, () => {
|
46
|
+
utilities.verifyCSS(thinkSpherePage.questionInstructionPreviewImageWrapper(), {
|
47
|
+
'width': '143px',
|
48
|
+
'height': '110px',
|
49
|
+
'border': `1px solid ${css.color.secondaryBtnBorder}`,
|
50
|
+
'background-color': css.color.primaryBtn,
|
51
|
+
});
|
52
|
+
utilities.verifyCSS(thinkSpherePage.questionInstructionPreviewImageExpandButton(), {
|
53
|
+
'width': '24px',
|
54
|
+
'height': '24px',
|
55
|
+
'box-shadow': `${css.color.boxShadow} 0px 2px 8px 0px`,
|
56
|
+
'border': `1px solid ${css.color.figDefaultComponentBorder}`,
|
57
|
+
'border-radius': '4px',
|
58
|
+
'background-color': css.color.primaryBtn,
|
59
|
+
});
|
60
|
+
});
|
61
|
+
|
62
|
+
it('When user clicks on expand question instruction image then it should open in the popup', () => {
|
63
|
+
thinkSpherePage.steps.clickOnQuestionInstructionExpandImageButton();
|
64
|
+
utilities.verifyElementVisibilityState(thinkSpherePage.dialogBoxRoot(), 'visible');
|
65
|
+
thinkSpherePage.steps.verifyQuestionImagePopup();
|
66
|
+
});
|
67
|
+
|
68
|
+
it('CSS of question instruction image popup', { tags: 'css' }, () => {
|
69
|
+
utilities.verifyCSS(thinkSpherePage.dialogBoxRoot(), {
|
70
|
+
'border-radius': '8px',
|
71
|
+
'border': `1px solid ${css.color.secondaryBtnBorder}`,
|
72
|
+
'box-shadow': `${css.color.dialogBoxBoxShadow} 0px 0px 10px 0px`,
|
73
|
+
});
|
74
|
+
utilities.verifyCSS(thinkSpherePage.closeExpandImagePopupButton(), {
|
75
|
+
'background-color': css.color.primaryBtn,
|
76
|
+
'font-size': css.fontSize.normal,
|
77
|
+
'font-weight': css.fontWeight.semibold,
|
78
|
+
'border': `1px solid ${css.color.secondaryBtnBorder}`,
|
79
|
+
'color': css.color.primaryBtnBorder,
|
80
|
+
});
|
81
|
+
});
|
82
|
+
|
83
|
+
it('When user clicks on close expand image popup button then it should remove the popup', () => {
|
84
|
+
thinkSpherePage.steps.clickOnCloseExpandImagePopupButton();
|
85
|
+
utilities.verifyElementVisibilityState(thinkSpherePage.dialogBoxRoot(), 'notExist');
|
86
|
+
});
|
87
|
+
});
|
88
|
+
|
89
|
+
describe('\'Check your math\' section', () => {
|
90
|
+
abortEarlySetup();
|
91
|
+
it('\'Check your math\' section header should be present', () => {
|
92
|
+
utilities.verifyElementVisibilityState(thinkSpherePage.checkYourMathHeading(), 'visible');
|
93
|
+
utilities.verifyInnerText(thinkSpherePage.checkYourMathHeading(), 'Check your math');
|
94
|
+
});
|
95
|
+
|
96
|
+
it('CSS of \'Check your math\' section header', { tags: 'css' }, () => {
|
97
|
+
utilities.verifyCSS(thinkSpherePage.checkYourMathHeading(), {
|
98
|
+
'color': css.color.primaryBtnBorder,
|
99
|
+
'font-size': css.fontSize.heading,
|
100
|
+
'font-weight': css.fontWeight.semibold,
|
101
|
+
});
|
102
|
+
});
|
103
|
+
|
104
|
+
it('\'The problem is asking me to\' section header should be present', () => {
|
105
|
+
utilities.verifyElementVisibilityState(thinkSpherePage.problemAskingToMeTextWrapper(), 'visible');
|
106
|
+
utilities.verifyInnerText(thinkSpherePage.problemAskingToMeTextWrapper(), 'The problem is asking me to...');
|
107
|
+
});
|
108
|
+
|
109
|
+
it('Review question should be present', () => {
|
110
|
+
utilities.verifyElementVisibilityState(thinkSpherePage.reviewQuestionWrapper(), 'visible');
|
111
|
+
});
|
112
|
+
|
113
|
+
it('CSS of \'The problem is asking me to\' section', { tags: 'css' }, () => {
|
114
|
+
utilities.verifyCSS(thinkSpherePage.problemAskingToMeTextWrapper(), {
|
115
|
+
'color': css.color.primaryBtnBorder,
|
116
|
+
'font-size': css.fontSize.normal,
|
117
|
+
'font-weight': css.fontWeight.bold,
|
118
|
+
});
|
119
|
+
utilities.verifyCSS(thinkSpherePage.reviewComponentWrapper(), {
|
120
|
+
'border': `1px solid ${css.color.secondaryBtnBorder}`,
|
121
|
+
'border-radius': '12px'
|
122
|
+
});
|
123
|
+
});
|
124
|
+
|
125
|
+
it('When User type in the \'The problem is asking me to\' in the plan tab, then it should render in the \'The problem is asking me to\' in the review tab', () => {
|
126
|
+
thinkSpherePage.steps.clickOnPlanTab();
|
127
|
+
thinkSpherePage.steps.verifyProblemAskingTextAreaFunctionality('This is a test text for the problem.');
|
128
|
+
thinkSpherePage.steps.clickOnReviewTab();
|
129
|
+
utilities.verifyElementVisibilityState(thinkSpherePage.problemStatementWrapper(), 'visible');
|
130
|
+
utilities.verifyInnerText(thinkSpherePage.problemStatementWrapper(), 'This is a test text for the problem.');
|
131
|
+
});
|
132
|
+
|
133
|
+
it('CSS of \'The problem is asking me to\' section statement', { tags: 'css' }, () => {
|
134
|
+
utilities.verifyCSS(thinkSpherePage.problemStatementWrapper(), {
|
135
|
+
'color': css.color.text,
|
136
|
+
'font-size': css.fontSize.default,
|
137
|
+
'font-weight': css.fontWeight.regular,
|
138
|
+
});
|
139
|
+
});
|
140
|
+
});
|
141
|
+
});
|
@@ -99,7 +99,7 @@ describe('Create question page - Audio player: Header section and saving resourc
|
|
99
99
|
});
|
100
100
|
|
101
101
|
describe('Validation error messages', () => {
|
102
|
-
dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton(
|
102
|
+
dialogBoxBase.tests.verifyRequiredFieldsWarningPopupOnClickingSaveButton();
|
103
103
|
|
104
104
|
it('Validation error message(s) should be displayed below required input field(s)', () => {
|
105
105
|
utilities.verifyElementVisibilityState(audioPlayerPage.errorMessage(), 'visible');
|
@@ -2,7 +2,6 @@ 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";
|
6
5
|
const css = Cypress.env('css');
|
7
6
|
|
8
7
|
const fileSizeLimitOptions = ['5', '10', '15', '20', '100'];
|
@@ -374,37 +373,4 @@ describe('Create question page - Upload Response: Question Instructions, Support
|
|
374
373
|
|
375
374
|
uploadResponsePage.tests.verifyWarningMessageDisappear();
|
376
375
|
});
|
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
|
-
});
|
410
376
|
});
|
@@ -1,9 +1,6 @@
|
|
1
1
|
import abortEarlySetup from "../../../support/helpers/abortEarly";
|
2
|
-
import { uploadResponsePage, dialogBoxBase
|
2
|
+
import { uploadResponsePage, dialogBoxBase } from "../../../pages";
|
3
3
|
import utilities from "../../../support/helpers/utilities";
|
4
|
-
import { browseItemsPage } from "../../../pages/components";
|
5
|
-
var itemReferenceID = ""
|
6
|
-
|
7
4
|
|
8
5
|
describe('Create question page - Upload Response: Header section and Saving question', () => {
|
9
6
|
before(() => {
|
@@ -52,38 +49,4 @@ describe('Create question page - Upload Response: Header section and Saving ques
|
|
52
49
|
|
53
50
|
uploadResponsePage.tests.verifySavedSuccessfullySnackbarCSSAndA11y();
|
54
51
|
});
|
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
|
-
});
|
89
52
|
});
|
@@ -159,21 +159,31 @@ 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, \'Error: Maximum recording duration is required.\' validation error should be displayed below the \'Maximum recording duration\' input field', () => {
|
163
163
|
videoResponsePage.steps.clearMaximumRecordingDurationInputField();
|
164
|
-
videoResponsePage.
|
165
|
-
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), '
|
164
|
+
utilities.verifyInnerText(videoResponsePage.errorMessage(), 'Error: Maximum recording duration is required.');
|
165
|
+
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), 'visible');
|
166
166
|
});
|
167
167
|
|
168
|
+
videoResponsePage.tests.verifyErrorMessageCSSAndA11y();
|
169
|
+
|
168
170
|
it('When the user updates the \'Maximum recording duration\' value, then the validation message \'Error: Maximum recording duration is required.\' should disappear.', () => {
|
169
171
|
videoResponsePage.steps.setMaximumRecordingDuration(1000);
|
170
172
|
videoResponsePage.steps.verifyErrorMessageIsNotDisplayed();
|
171
173
|
});
|
172
174
|
|
173
|
-
it('When the user has set \'Maximum recording duration\' to \'0\' (zero),
|
175
|
+
it('When the user has set \'Maximum recording duration\' to \'0\' (zero), a validation message \'Error: Value must be greater than 0 secs.\' should be displayed', () => {
|
174
176
|
videoResponsePage.steps.setMaximumRecordingDuration(0);
|
175
|
-
videoResponsePage.steps.verifyMaximumRecordingDuration(
|
176
|
-
utilities.
|
177
|
+
videoResponsePage.steps.verifyMaximumRecordingDuration(0);
|
178
|
+
utilities.verifyInnerText(videoResponsePage.errorMessage(), 'Error: Value must be greater than 0 secs.');
|
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();
|
177
187
|
});
|
178
188
|
|
179
189
|
it('When user adds decimal values or alphanumeric values then only numeric values should be displayed in the maximum recording length input field', () => {
|
@@ -194,27 +204,32 @@ describe('Create item page - Video response: Question instructions, Maximum reco
|
|
194
204
|
videoResponsePage.steps.verifyMaximumRecordingDuration(5);
|
195
205
|
});
|
196
206
|
|
197
|
-
it('When the user focuses in and out of the empty \'Maximum recording duration\' input field, validation error should
|
207
|
+
it('When the user focuses in and out of the empty \'Maximum recording duration\' input field, \'Error: Maximum recording duration is required.\' validation error should be displayed below the \'Maximum recording duration\' input field', () => {
|
198
208
|
videoResponsePage.steps.clearMaximumRecordingDurationInputField();
|
199
209
|
videoResponsePage.steps.toggleMaximumRecordingDurationInputField('Secs');
|
200
210
|
videoResponsePage.steps.clearMaximumRecordingDurationInputField();
|
201
|
-
utilities.
|
211
|
+
utilities.verifyInnerText(videoResponsePage.errorMessage(), 'Error: Maximum recording duration is required.');
|
212
|
+
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), 'visible');
|
202
213
|
});
|
203
214
|
|
204
|
-
|
215
|
+
videoResponsePage.tests.verifyErrorMessageCSSAndA11y();
|
216
|
+
|
217
|
+
it('When the user updates the \'Maximum recording duration\' value, then the validation message \'Error: Maximum recording duration is required.\' should disappear.', () => {
|
205
218
|
videoResponsePage.steps.setMaximumRecordingDuration(5);
|
206
219
|
videoResponsePage.steps.verifyErrorMessageIsNotDisplayed();
|
207
220
|
});
|
208
221
|
|
209
|
-
it('When the user has set \'Maximum recording duration\' to \'0\' (zero), a validation message
|
210
|
-
videoResponsePage.steps.
|
211
|
-
videoResponsePage.steps.verifyMaximumRecordingDuration(
|
222
|
+
it('When the user has set \'Maximum recording duration\' to \'0\' (zero), a validation message \'Error: Value must be greater than 0 mins.\' should be displayed', () => {
|
223
|
+
videoResponsePage.steps.setMaximumRecordingDurationNew(0);
|
224
|
+
videoResponsePage.steps.verifyMaximumRecordingDuration(0);
|
212
225
|
// Uncomment once https://redmine.zeuslearning.com/issues/583618 is resolved
|
213
226
|
// utilities.verifyInnerText(videoResponsePage.errorMessage(), 'Error: Value must be greater than 0 mins.');
|
214
|
-
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), '
|
227
|
+
utilities.verifyElementVisibilityState(videoResponsePage.errorMessage(), 'visible');
|
215
228
|
});
|
216
229
|
|
217
|
-
|
230
|
+
videoResponsePage.tests.verifyErrorMessageCSSAndA11y();
|
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', () => {
|
218
233
|
videoResponsePage.steps.setMaximumRecordingDuration(5);
|
219
234
|
videoResponsePage.steps.verifyErrorMessageIsNotDisplayed();
|
220
235
|
videoResponsePage.steps.toggleMaximumRecordingDurationInputField('Mins');
|
@@ -98,22 +98,7 @@ describe('Create item page - Charts - Dot plot: Header section and saving questi
|
|
98
98
|
chartsDotPlotPage.steps.selectDotPlot();
|
99
99
|
});
|
100
100
|
|
101
|
-
|
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
|
-
});
|
101
|
+
chartsDotPlotPage.tests.verifyCreateItemWrapperContentsA11y();
|
117
102
|
|
118
103
|
describe('Saving a question', () => {
|
119
104
|
it('When user clicks on "Save question" button, then the question should get saved and a snackbar with text \'Saved successfully!\' should be displayed', () => {
|
@@ -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,26 +1306,6 @@ 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
|
-
},
|
1329
1309
|
}
|
1330
1310
|
|
1331
1311
|
const tests = {
|
@@ -146,13 +146,6 @@ const steps = {
|
|
146
146
|
.within(() => {
|
147
147
|
utilities.verifyElementVisibilityState(commonComponents.warningIcon(), 'exist');
|
148
148
|
});
|
149
|
-
}
|
150
|
-
else if (field === 'Please select a file type') {
|
151
|
-
// Upload Response Select File Type Accordion
|
152
|
-
cy.get('.edit-question-edit-tab-wrapper .ngie-accordion-summary')
|
153
|
-
.within(() => {
|
154
|
-
utilities.verifyElementVisibilityState(commonComponents.warningIcon(), 'exist');
|
155
|
-
});
|
156
149
|
}
|
157
150
|
})
|
158
151
|
},
|
@@ -32,7 +32,7 @@ const steps = {
|
|
32
32
|
|
33
33
|
const tests = {
|
34
34
|
verifyDefaultToolDropdown:(toolOptionsArray, defaultTool)=>{
|
35
|
-
const defaultSelectedTool = defaultTool || toolOptionsArray[
|
35
|
+
const defaultSelectedTool = defaultTool || toolOptionsArray[1];
|
36
36
|
it(`\'Default tool\' label and dropdown should be displayed with \'${defaultSelectedTool}\' option selected by default`, () => {
|
37
37
|
utilities.verifyInnerText(defaultToolDropdown.defaultToolDropdownLabel(), 'Default tool');
|
38
38
|
utilities.verifyInnerText(defaultToolDropdown.defaultToolDropdown(), defaultSelectedTool);
|
@@ -21,7 +21,7 @@ const selectors = {
|
|
21
21
|
previewTabDesmosToolKeypad: () => cy.get('[class*="DesmosToolstyles__DesmosToolViewWrapper"] .dcg-basic-keypad-container'),
|
22
22
|
previewTabDesmosToolKeypadKeys: (ariaLabel = null) => {
|
23
23
|
if (ariaLabel) {
|
24
|
-
return cy.get(`.dcg-basic-keypad .dcg-keypad-btn[aria-label*="${ariaLabel}"]`)
|
24
|
+
return cy.get(`.dcg-basic-keypad .dcg-keypad-btn[aria-label*="${ariaLabel}"]:visible`)
|
25
25
|
} else {
|
26
26
|
return cy.get('.dcg-basic-keypad .dcg-keypad-btn')
|
27
27
|
}
|
@@ -29,8 +29,6 @@ const selectors = {
|
|
29
29
|
}
|
30
30
|
},
|
31
31
|
minimumPointsLabel: () => cy.get('[class*="min-score-points-label"]'),
|
32
|
-
questionLabel: () => cy.get('[class*="addResponseCKEditorstyles__TitleWrapper"]'),
|
33
|
-
questionWarningIcon: () => cy.get('[class*="addResponseCKEditorstyles__IconWrapper"]'),
|
34
32
|
minimumPointsInputField: () => cy.get('.min-score-points-input-field input'),
|
35
33
|
}
|
36
34
|
|
@@ -83,7 +81,6 @@ const steps = {
|
|
83
81
|
scoringSectionBaseEditTab.scoringTypeDropdownListOptions(convertedString)
|
84
82
|
.should('be.visible') // Ensure the dropdown option is visible
|
85
83
|
.click();
|
86
|
-
cy.wait(2000); // Wait for the dropdown to close
|
87
84
|
utilities.verifyElementVisibilityState(commonComponents.dropdownList(), 'notExist');
|
88
85
|
},
|
89
86
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import utilities from "../support/helpers/utilities";
|
2
|
-
import { commonComponents, createQuestionBasePage, questionInstructionsComponent, additionalSettingsPanel, scoringSectionBaseEditTab, additionalSettingsAccessibilitySectionComponent, studentViewSettingsLabelComponent, hideExpressionListComponent
|
2
|
+
import { commonComponents, createQuestionBasePage, questionInstructionsComponent, additionalSettingsPanel, scoringSectionBaseEditTab, additionalSettingsAccessibilitySectionComponent, studentViewSettingsLabelComponent, hideExpressionListComponent } from "./components";
|
3
3
|
import { desmosToolComponent } from "./components/desmosToolComponent";
|
4
4
|
const css = Cypress.env('css');
|
5
5
|
|
@@ -10,13 +10,12 @@ const selectors = {
|
|
10
10
|
...additionalSettingsPanel,
|
11
11
|
...questionInstructionsComponent,
|
12
12
|
desmosGraphingTool: () => cy.get('[id*="desmos-graph-tool"]'),
|
13
|
-
desmosGraphingToolExpressionPanel: () => cy.get('.dcg-exppanel-container'),
|
13
|
+
desmosGraphingToolExpressionPanel: () => cy.get('[id*="desmos-graph-tool"] .dcg-exppanel-container.dcg-add-shadow'),
|
14
14
|
studentViewSettingsLabel: () => cy.get('[class*="StudentViewWrapper"]'),
|
15
15
|
hideExpressionListLabel: () => cy.get('[data-ngie-testid="hide-expression-list-checkbox"] .MuiFormControlLabel-label'),
|
16
16
|
hideExpressionListCheckbox: () => cy.get('[data-ngie-testid="hide-expression-list-checkbox"] input'),
|
17
17
|
showHideListButton: () => cy.get('.dcg-show-expressions-tab[role="button"]'),
|
18
18
|
desmosGraphingWidthLabel: () => cy.get('[class*="LabelInputWrapper"]').eq(0),
|
19
|
-
desmosComponentGradingView: () => cy.get('[class*="DesmosGraphingPreviewstyles__DesmosWrapper"]'),
|
20
19
|
desmosGraphingWidthInputField: () => cy.get('[class*="DimensionInputWrapper"] input').eq(0),
|
21
20
|
desmosGraphingHeightLabel: () => cy.get('[class*="LabelInputWrapper"]').eq(1),
|
22
21
|
desmosGraphingHeightInputField: () => cy.get('[class*="DimensionInputWrapper"] input').eq(1),
|
@@ -39,16 +38,6 @@ const selectors = {
|
|
39
38
|
errorMessage: () => cy.get('.error-text-message'),
|
40
39
|
resourceLinkPreviewTitle: () => cy.get('[class*="DesmosGraphingstyles__ResourceLinkPreviewLabel"]'),
|
41
40
|
desmosComponent: () => cy.get('[class*="DesmosGraphingstyles__DesmosComponentWrapper"]'),
|
42
|
-
widthLabel: () => cy.get('[class*="StudentViewSettingsstyles__LabelInputWrapper"]').eq(0),
|
43
|
-
heightLabel: () => cy.get('[class*="StudentViewSettingsstyles__LabelInputWrapper"]').eq(1),
|
44
|
-
lockUnlockAspectRatioButton: () => cy.get('[class*="StudentViewSettingsstyles__LockIconWrapper"] button'),
|
45
|
-
resetButton: () => cy.get('[class*="StudentViewSettingsstyles__ResetIconWrapper"] button'),
|
46
|
-
desmosResourceCanvasEditTab: () => cy.get('[id*="desmos-3d-graph-tool"]'),
|
47
|
-
desmosResourceCanvasPreviewTab: () => cy.get('[class*="DesmosGraphingPreviewstyles__DesmosPreview"]'),
|
48
|
-
addIconDesmos: () => cy.get('.dcg-add-expression-container .dcg-icon-plus'),
|
49
|
-
expressionInputField: () => cy.get('.dcg-action-newmath'),
|
50
|
-
editIconPencil: () => cy.get('.icon-pencil'),
|
51
|
-
teacherGuidelinesInputField: () => cy.get('[class*="TeacherGuidelinesstyles__TextField"] input'),
|
52
41
|
}
|
53
42
|
|
54
43
|
const steps = {
|
@@ -58,7 +47,6 @@ const steps = {
|
|
58
47
|
...additionalSettingsPanel.steps,
|
59
48
|
...questionInstructionsComponent.steps,
|
60
49
|
...commonComponents.steps,
|
61
|
-
...toolSettingsComponent.steps,
|
62
50
|
verifyHideExpressionListCheckboxUnchecked: () => {
|
63
51
|
desmos3DGraphingPage.hideExpressionListCheckbox()
|
64
52
|
.should('not.be.checked');
|
@@ -334,128 +322,10 @@ const steps = {
|
|
334
322
|
},
|
335
323
|
clearInputToInsertResourceLinkInputField: () => {
|
336
324
|
desmos3DGraphingPage.insertResourceLinkInputField()
|
337
|
-
.
|
338
|
-
desmos3DGraphingPage.insertResourceLinkInputField()
|
339
|
-
.type('{selectall}{backspace}')
|
325
|
+
.clear();
|
340
326
|
cy.get('body')
|
341
327
|
.click();
|
342
328
|
},
|
343
|
-
verifyLockedStateOfLockUnlockAspectRatioButton: () => {
|
344
|
-
desmos3DGraphingPage.lockUnlockAspectRatioButton()
|
345
|
-
.should('have.attr', 'aria-label', 'Locked aspect ratio');
|
346
|
-
},
|
347
|
-
verifyUnlockedStateOfLockUnlockAspectRatioButton: () => {
|
348
|
-
desmos3DGraphingPage.lockUnlockAspectRatioButton()
|
349
|
-
.should('have.attr', 'aria-label', 'Unlocked aspect ratio');
|
350
|
-
},
|
351
|
-
/**
|
352
|
-
* @description add input to width input field
|
353
|
-
* @param {number} width Width to be set for geoGebra resource
|
354
|
-
*/
|
355
|
-
addInputToWidthInputField: (width) => {
|
356
|
-
desmos3DGraphingPage.widthInputField()
|
357
|
-
.clear()
|
358
|
-
.type(width)
|
359
|
-
.blur();
|
360
|
-
utilities.verifyInputFieldValue(desmos3DGraphingPage.widthInputField(), width);
|
361
|
-
},
|
362
|
-
/**
|
363
|
-
* @description add input to height input field
|
364
|
-
* @param {number} height Height to be set for geoGebra resource
|
365
|
-
*/
|
366
|
-
addInputToHeightInputField: (height) => {
|
367
|
-
desmos3DGraphingPage.heightInputField()
|
368
|
-
.clear()
|
369
|
-
.type(height)
|
370
|
-
.blur();
|
371
|
-
utilities.verifyInputFieldValue(desmos3DGraphingPage.heightInputField(), height);
|
372
|
-
},
|
373
|
-
/**
|
374
|
-
* Verify width of geoGebra resource canvas in edit tab
|
375
|
-
* @param {number} width Width of geoGebra resource canvas in edit tab
|
376
|
-
*/
|
377
|
-
verifyCanvasWidthEditTab: (width) => {
|
378
|
-
utilities.verifyCSS(desmos3DGraphingPage.desmosResourceCanvasEditTab(), {
|
379
|
-
'width': `${width}px`
|
380
|
-
});
|
381
|
-
},
|
382
|
-
/**
|
383
|
-
* Verify height of geoGebra resource canvas in edit tab
|
384
|
-
* @param {number} height Height of geoGebra resource canvas in edit tab
|
385
|
-
*/
|
386
|
-
verifyCanvasHeightEditTab: (height) => {
|
387
|
-
utilities.verifyCSS(desmos3DGraphingPage.desmosResourceCanvasEditTab(), {
|
388
|
-
'height': `${height}px`
|
389
|
-
});
|
390
|
-
},
|
391
|
-
clickOnResetButton: () => {
|
392
|
-
desmos3DGraphingPage.resetButton()
|
393
|
-
.click();
|
394
|
-
},
|
395
|
-
clickOnLockUnlockAspectRatioButton: () => {
|
396
|
-
desmos3DGraphingPage.lockUnlockAspectRatioButton()
|
397
|
-
.click();
|
398
|
-
},
|
399
|
-
/**
|
400
|
-
* Verify width of geoGebra resource canvas in preview tab
|
401
|
-
* @param {number} width Width of geoGebra resource canvas in preview tab
|
402
|
-
*/
|
403
|
-
verifyCanvasWidthPreviewTab: (width) => {
|
404
|
-
utilities.verifyCSS(desmos3DGraphingPage.desmosResourceCanvasPreviewTab(), {
|
405
|
-
'width': `${width}px`
|
406
|
-
});
|
407
|
-
},
|
408
|
-
/**
|
409
|
-
* Verify height of geoGebra resource canvas in preview tab
|
410
|
-
* @param {number} height Height of geoGebra resource canvas in preview tab
|
411
|
-
*/
|
412
|
-
verifyCanvasHeightPreviewTab: (height) => {
|
413
|
-
utilities.verifyCSS(desmos3DGraphingPage.desmosResourceCanvasPreviewTab(), {
|
414
|
-
'height': `${height}px`
|
415
|
-
});
|
416
|
-
},
|
417
|
-
/**
|
418
|
-
* @description Types a mathematical expression in the Desmos expression input field
|
419
|
-
* @param {string} expression The mathematical expression to type
|
420
|
-
*/
|
421
|
-
typeExpression: (expression) => {
|
422
|
-
desmos3DGraphingPage.expressionInputField()
|
423
|
-
.click();
|
424
|
-
desmos3DGraphingPage.expressionInputField()
|
425
|
-
.type(expression);
|
426
|
-
},
|
427
|
-
/**
|
428
|
-
* @description Verifies that the specified expression is not present in the Desmos expression field
|
429
|
-
* @param {string} expression The expression that should not be present
|
430
|
-
*/
|
431
|
-
verifyExpressionNotPresent: (expression) => {
|
432
|
-
desmos3DGraphingPage.expressionInputField()
|
433
|
-
.should('not.contain', expression);
|
434
|
-
},
|
435
|
-
editQuestionItemView: () => {
|
436
|
-
desmos3DGraphingPage.editIconPencil()
|
437
|
-
.click();
|
438
|
-
},
|
439
|
-
verifyFontSizeDropdown: (fontSize) => {
|
440
|
-
desmos3DGraphingPage.fontSizeDropdown()
|
441
|
-
.should('have.text', fontSize);
|
442
|
-
},
|
443
|
-
verifyTeacherGuidelinesInputField: (text) => {
|
444
|
-
desmos3DGraphingPage.additionalSettingsTeacherGuidelinesInputField()
|
445
|
-
.should('have.text', text);
|
446
|
-
},
|
447
|
-
verifySampleAnswerInputField: (text) => {
|
448
|
-
desmos3DGraphingPage.additionalSettingsSampleAnswerInputField()
|
449
|
-
.should('have.text', text);
|
450
|
-
},
|
451
|
-
verifyAcknowledgementsInputField: (text) => {
|
452
|
-
desmos3DGraphingPage.additionalSettingsAcknowledgementsInputField()
|
453
|
-
.should('have.text', text);
|
454
|
-
},
|
455
|
-
verifyFlagThisItemNonAccessibleCheckboxIsChecked: () => {
|
456
|
-
desmos3DGraphingPage.flagNonAccessibleCheckbox()
|
457
|
-
.should('be.checked');
|
458
|
-
},
|
459
329
|
}
|
460
330
|
|
461
331
|
const tests = {
|
@@ -467,7 +337,7 @@ const tests = {
|
|
467
337
|
...additionalSettingsAccessibilitySectionComponent.tests,
|
468
338
|
...studentViewSettingsLabelComponent.tests,
|
469
339
|
...hideExpressionListComponent.tests,
|
470
|
-
|
340
|
+
|
471
341
|
verifyGraphingQuestionSpecifyPredefinedExpressionContent: () => {
|
472
342
|
it('When user selects a scoring type the contents of the Specify predefined expression should be displayed', () => {
|
473
343
|
utilities.verifyElementVisibilityState(desmos3DGraphingPage.desmosGraphingTool(), 'exist');
|
@@ -488,21 +358,6 @@ const tests = {
|
|
488
358
|
it('Accessibility of error message', { tags: 'a11y' }, () => {
|
489
359
|
cy.checkAccessibility(commonComponents.nextGenCreateItemWrapper());
|
490
360
|
});
|
491
|
-
},
|
492
|
-
|
493
|
-
verifyQuestionInstructionsInputFieldPreviewTab: () => {
|
494
|
-
it('When user has not entered any text in the Question instructions input field in the \'Edit\' tab then nothing should be displayed in the \'Preview\' tab', () => {
|
495
|
-
createQuestionBasePage.steps.switchToPreviewTab();
|
496
|
-
//Failing due to https://redmine.zeuslearning.com/issues/553382
|
497
|
-
utilities.verifyTextContent(questionInstructionsComponent.questionInstructionsText(), '')
|
498
|
-
});
|
499
|
-
|
500
|
-
it('When the user specifies question instructions, then the added question instructions should be displayed in the \'Preview\' tab', () => {
|
501
|
-
createQuestionBasePage.steps.switchToEditTab();
|
502
|
-
questionInstructionsComponent.steps.addTextInQuestionInstructionsInputField('Which of the following is the major contributor to increased carbon dioxide levels because of urbanization? Select your answer from the options below.');
|
503
|
-
createQuestionBasePage.steps.switchToPreviewTab();
|
504
|
-
utilities.verifyTextContent(questionInstructionsComponent.questionInstructionsTextPreviewTab(), 'Which of the following is the major contributor to increased carbon dioxide levels because of urbanization? Select your answer from the options below.');
|
505
|
-
});
|
506
361
|
}
|
507
362
|
}
|
508
363
|
|