itemengine-cypress-automation 1.0.381-regressionFixes10June-8dc1710.0 → 1.0.382-FixesPR3-b746986.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/ListOrderingDropdown/editTabBasicSection.js +2 -0
- package/cypress/e2e/ILC/Matching/studentViewSettings.js +1 -1
- package/cypress/e2e/ILC/MatchingDropdown/Scoring/blankResponseScoring.js +1 -0
- package/cypress/e2e/ILC/MatchingDropdown/Scoring/partialDifferentWeightsScoringBasic.js +6 -6
- package/cypress/e2e/ILC/NumberLine/allOrNothingScoringForAllViews.smoke.js +213 -0
- package/cypress/e2e/ILC/NumberLine/verticalNumberLine/allOrNothingScoringForAllViews.smoke.js +249 -0
- package/cypress/e2e/ILC/NumberLineLabel/allOrNothingForAllViews.smoke.js +266 -0
- package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/allOrNothingForAllViews.smoke.js +268 -0
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/allOrNothingCorrectPointsGreaterThanAlternatePoints.js +5 -5
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +3 -3
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialDifferentWeightsScoringBasic.js +1 -1
- package/cypress/e2e/ILC/TextEntryMath/MathTemplateScoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +2 -2
- package/cypress/e2e/ILC/TextEntryMath/Scoring/blankResponseScoring.js +2 -2
- package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViews.smoke.js +263 -0
- package/cypress/e2e/ILC/TextEntryMath/allOrNothingBasicForAllViewsFormulaTemplate.smoke.js +217 -0
- package/cypress/e2e/ILC/TextEntryMath/equationEditor.smoke.js +1 -1
- package/cypress/e2e/ILC/TextEntryMath/evaluationMethodEquivalentStructures.smoke.js +3 -3
- package/cypress/e2e/ILC/TextEntryMathWithImage/allOrNothingScoringForAllViews.smoke.js +263 -0
- package/cypress/e2e/ILC/TextEntryMathWithImage/backgroundImageAndCanvasProperties.js +0 -1
- package/cypress/e2e/ILC/TextEntryMathWithImage/styleAndLayoutCustomization.js +1 -1
- package/cypress/e2e/ILC/TextSelection/textSelectionModesInSpecifyPossibleOptionsSection.js +1 -0
- package/cypress/pages/components/equationEditorSectionCommonComponent.js +4 -4
- package/cypress/pages/listOrderingPage.js +6 -1
- package/cypress/pages/textEntryMathPage.js +3 -7
- package/package.json +1 -1
@@ -85,6 +85,8 @@ describe('Create Item page - List ordering: Dropdown menu ordering layout: Edit
|
|
85
85
|
before(() => {
|
86
86
|
cy.log('Navigating to list ordering question type');
|
87
87
|
listOrderingPage.steps.navigateToCreateQuestion('list ordering');
|
88
|
+
listOrderingPage.steps.addTextInQuestionInstructionsInputField('Arrange the following options in the correct order');
|
89
|
+
cy.barsPreLoaderWait();
|
88
90
|
listOrderingPage.steps.selectOrderingLayoutOption('Dropdown menu');
|
89
91
|
listOrderingPage.steps.addInputToOptionsInputField(options);
|
90
92
|
});
|
@@ -451,7 +451,7 @@ describe('Create Item page - Matching : Student view settings', () => {
|
|
451
451
|
matchingPage.steps.expandMaxCapacityPerDropzoneDropdown();
|
452
452
|
matchingPage.steps.selectOptionFromMaxCapacityPerDropzoneDropdown('No limit');
|
453
453
|
matchingPage.steps.switchToPreviewTab();
|
454
|
-
utilities.verifyInnerText(matchingPage.maxLimitInEachDropzoneHelpText(), 'Maximum answers in each dropzone
|
454
|
+
utilities.verifyInnerText(matchingPage.maxLimitInEachDropzoneHelpText(), 'Maximum answers in each dropzone:\nNo limit');
|
455
455
|
});
|
456
456
|
});
|
457
457
|
});
|
@@ -9,6 +9,7 @@ describe('Create item page - Matching-Dropdown: Scoring for blank responses', ()
|
|
9
9
|
cy.loginAs('admin');
|
10
10
|
});
|
11
11
|
|
12
|
+
//Failing due to https://weldnorthed.atlassian.net/browse/IEI-6160
|
12
13
|
describe(`Auto scored - All or nothing scoring`, () => {
|
13
14
|
abortEarlySetup();
|
14
15
|
before(() => {
|
@@ -300,19 +300,19 @@ describe('Create item page - Matching: Partial different weights', () => {
|
|
300
300
|
matchingPage.steps.allotTotalPenaltyPoints(4);
|
301
301
|
matchingPage.steps.switchToPreviewTab();
|
302
302
|
matchingPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: optionsArray[4] }]);
|
303
|
-
matchingPage.steps.verifyPreviewScore(-
|
303
|
+
matchingPage.steps.verifyPreviewScore(-4, 20);
|
304
304
|
});
|
305
305
|
|
306
306
|
it('When the user attempts the question correctly along with an incorrect option, then penalty points should get deducted from the awarded points', () => {
|
307
307
|
matchingPage.steps.resetQuestionPreview();
|
308
308
|
matchingPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: optionsArray[1] }, { dropdownIndex: 1, dropdownOption: optionsArray[2] }, { dropdownIndex: 2, dropdownOption: optionsArray[4] }]);
|
309
|
-
matchingPage.steps.verifyPreviewScore(
|
309
|
+
matchingPage.steps.verifyPreviewScore(13.6667, 20);
|
310
310
|
});
|
311
311
|
|
312
312
|
it('When the user attempts the question correctly along with multiple incorrect options, then penalty points for each incorrect dropdown should get deducted from the awarded points', () => {
|
313
313
|
matchingPage.steps.resetQuestionPreview();
|
314
314
|
matchingPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: optionsArray[1] }, { dropdownIndex: 1, dropdownOption: optionsArray[3] }, { dropdownIndex: 2, dropdownOption: optionsArray[4] }]);
|
315
|
-
matchingPage.steps.verifyPreviewScore(
|
315
|
+
matchingPage.steps.verifyPreviewScore(6.3333, 20);
|
316
316
|
});
|
317
317
|
|
318
318
|
it('When the user has defined penalty points and also sets minimum scoring to \'Award minimum score only if attempted\' and allots minimum points, then on attempting the question incorrectly, minimum points should be awarded', () => {
|
@@ -369,19 +369,19 @@ describe('Create item page - Matching: Partial different weights', () => {
|
|
369
369
|
matchingPage.steps.checkAutomaticallySetPenaltyPointsCheckbox();
|
370
370
|
matchingPage.steps.switchToPreviewTab();
|
371
371
|
matchingPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: optionsArray[4] }]);
|
372
|
-
matchingPage.steps.verifyPreviewScore(-9.
|
372
|
+
matchingPage.steps.verifyPreviewScore(-9.9999, 20);
|
373
373
|
});
|
374
374
|
|
375
375
|
it('When the user attempts the question correctly along with an incorrect option, then penalty points should get deducted from the awarded points', () => {
|
376
376
|
matchingPage.steps.resetQuestionPreview();
|
377
377
|
matchingPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: optionsArray[4] }, { dropdownIndex: 1, dropdownOption: optionsArray[2] }, { dropdownIndex: 2, dropdownOption: optionsArray[0] }]);
|
378
|
-
matchingPage.steps.verifyPreviewScore(7.
|
378
|
+
matchingPage.steps.verifyPreviewScore(7.6667, 20);
|
379
379
|
});
|
380
380
|
|
381
381
|
it('When the user attempts the question correctly along with multiple incorrect options, then penalty points for each incorrect option should get deducted from the awarded points', () => {
|
382
382
|
matchingPage.steps.resetQuestionPreview();
|
383
383
|
matchingPage.steps.selectResponseFromDropdownInPreviewTab([{ dropdownIndex: 0, dropdownOption: optionsArray[3] }, { dropdownIndex: 1, dropdownOption: optionsArray[2] }, { dropdownIndex: 2, dropdownOption: optionsArray[4] }]);
|
384
|
-
matchingPage.steps.verifyPreviewScore(-0.
|
384
|
+
matchingPage.steps.verifyPreviewScore(-0.6667, 20);
|
385
385
|
});
|
386
386
|
|
387
387
|
it('When the user has defined penalty points and also sets minimum scoring to \'Award minimum score only if attempted\' and allots minimum points, then on attempting the question incorrectly, minimum points should be awarded', () => {
|
@@ -693,6 +693,219 @@ describe('Create Item page - Number line: All or nothing ', () => {
|
|
693
693
|
});
|
694
694
|
});
|
695
695
|
|
696
|
+
views.forEach((view) => {
|
697
|
+
describe(`Number line: Manually scored - ${view}`, { tags: 'smoke' }, () => {
|
698
|
+
abortEarlySetup();
|
699
|
+
before(() => {
|
700
|
+
switch (view) {
|
701
|
+
case 'Question preview':
|
702
|
+
numberLinePage.steps.navigateToCreateQuestion('Number line');
|
703
|
+
cy.barsPreLoaderWait();
|
704
|
+
numberLinePage.steps.addTextInQuestionInstructionsInputField('Plot points on the number line');
|
705
|
+
numberLinePage.steps.expandScoringTypeDropdown();
|
706
|
+
numberLinePage.steps.selectOptionFromScoringTypeDropdown('Manually scored');
|
707
|
+
numberLinePage.steps.allotPoints(20);
|
708
|
+
numberLinePage.steps.switchToPreviewTab();
|
709
|
+
break;
|
710
|
+
case 'Item preview':
|
711
|
+
cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
|
712
|
+
itemPreviewPage.steps.switchToPreviewTab();
|
713
|
+
break;
|
714
|
+
case 'Grading view':
|
715
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
716
|
+
break;
|
717
|
+
}
|
718
|
+
});
|
719
|
+
|
720
|
+
beforeEach(() => {
|
721
|
+
switch (view) {
|
722
|
+
case 'Question preview':
|
723
|
+
numberLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
|
724
|
+
numberLinePage.steps.resetQuestionPreview();
|
725
|
+
break;
|
726
|
+
case 'Item preview':
|
727
|
+
itemPreviewPage.steps.switchToStudentView();
|
728
|
+
itemPreviewPage.steps.resetQuestionPreview();
|
729
|
+
break;
|
730
|
+
case 'Grading view':
|
731
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
732
|
+
break;
|
733
|
+
}
|
734
|
+
});
|
735
|
+
|
736
|
+
if (view === 'Question preview') {
|
737
|
+
after(() => {
|
738
|
+
numberLinePage.steps.clickOnSaveQuestionButton();
|
739
|
+
utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
|
740
|
+
itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
|
741
|
+
});
|
742
|
+
}
|
743
|
+
|
744
|
+
it('Question instructions should be visible', () => {
|
745
|
+
numberLinePage.steps.verifyQuestionInstructionsTextPreviewTab('Plot points on the number line');
|
746
|
+
numberLinePage.steps.verifyVisibityOfQuestionInstructionsText();
|
747
|
+
});
|
748
|
+
|
749
|
+
it('User should be able to attempt the question in student view and correct/incorrect icons, Your answer is correct/incorrect label, and correct answer section should not be displayed in grading view', () => {
|
750
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Point');
|
751
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("horizontal", range, 2);
|
752
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Right open segment');
|
753
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("horizontal", range, -4);
|
754
|
+
if (view === 'Grading view') {
|
755
|
+
studentViewPage.steps.submitResponse();
|
756
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
757
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
758
|
+
gradingViewPage.steps.verifyGradingViewScore('', 20);
|
759
|
+
}
|
760
|
+
if (view === 'Question preview' || view === 'Item preview') {
|
761
|
+
numberLinePage.steps.checkManuallyScoredScoringLabel();
|
762
|
+
}
|
763
|
+
numberLinePage.steps.verifyCorrectIncorrectIconsNotExist();
|
764
|
+
numberLinePage.steps.verifyCorrectIncorrectAnswerLabelNotExist();
|
765
|
+
numberLinePage.steps.verifyCorrectAnswerSectionNotExist();
|
766
|
+
});
|
767
|
+
});
|
768
|
+
});
|
769
|
+
|
770
|
+
views.forEach((view) => {
|
771
|
+
describe(`Number line: Non scored - ${view}`, { tags: 'smoke' }, () => {
|
772
|
+
abortEarlySetup();
|
773
|
+
before(() => {
|
774
|
+
switch (view) {
|
775
|
+
case 'Question preview':
|
776
|
+
numberLinePage.steps.navigateToCreateQuestion('Number line');
|
777
|
+
cy.barsPreLoaderWait();
|
778
|
+
numberLinePage.steps.addTextInQuestionInstructionsInputField('Plot points on the number line');
|
779
|
+
numberLinePage.steps.expandScoringTypeDropdown();
|
780
|
+
numberLinePage.steps.selectOptionFromScoringTypeDropdown('Non scored');
|
781
|
+
numberLinePage.steps.selectNumberLineToolOptionSpecifyCorrectAnswer('Point');
|
782
|
+
numberLinePage.steps.plotPointOnNumberLineSpecifyCorrectAnswer("horizontal", range, 2);
|
783
|
+
numberLinePage.steps.selectNumberLineToolOptionSpecifyCorrectAnswer('Right open segment');
|
784
|
+
numberLinePage.steps.plotPointOnNumberLineSpecifyCorrectAnswer("horizontal", range, -4);
|
785
|
+
numberLinePage.steps.switchToPreviewTab();
|
786
|
+
break;
|
787
|
+
case 'Item preview':
|
788
|
+
cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
|
789
|
+
itemPreviewPage.steps.switchToPreviewTab();
|
790
|
+
break;
|
791
|
+
case 'Grading view':
|
792
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
793
|
+
break;
|
794
|
+
}
|
795
|
+
});
|
796
|
+
|
797
|
+
beforeEach(() => {
|
798
|
+
switch (view) {
|
799
|
+
case 'Question preview':
|
800
|
+
numberLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
|
801
|
+
numberLinePage.steps.resetQuestionPreview();
|
802
|
+
break;
|
803
|
+
case 'Item preview':
|
804
|
+
itemPreviewPage.steps.switchToStudentView();
|
805
|
+
itemPreviewPage.steps.resetQuestionPreview();
|
806
|
+
break;
|
807
|
+
case 'Grading view':
|
808
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
809
|
+
break;
|
810
|
+
}
|
811
|
+
});
|
812
|
+
|
813
|
+
if (view === 'Question preview') {
|
814
|
+
after(() => {
|
815
|
+
numberLinePage.steps.clickOnSaveQuestionButton();
|
816
|
+
utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
|
817
|
+
itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
|
818
|
+
});
|
819
|
+
}
|
820
|
+
|
821
|
+
it('When the user selects "Grading" view without attempting the question, non scoring label should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label "Correct answers" should be displayed with correct answers and correct/incorrect icons should not be displayed', () => {
|
822
|
+
if (view === 'Grading view') {
|
823
|
+
studentViewPage.steps.submitResponse();
|
824
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
825
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
826
|
+
gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
|
827
|
+
}
|
828
|
+
if (view === 'Question preview' || view === 'Item preview') {
|
829
|
+
numberLinePage.steps.checkNonScoredScoringLabel();
|
830
|
+
numberLinePage.steps.switchToGradingView();
|
831
|
+
}
|
832
|
+
numberLinePage.steps.verifyCorrectIncorrectAnswerLabelNotExist();
|
833
|
+
numberLinePage.steps.verifyCorrectIncorrectIconsNotExist();
|
834
|
+
numberLinePage.steps.verifyCorrectPointsOnNumberLineCorrectAnswerSection(range, [2]);
|
835
|
+
numberLinePage.steps.verifyCorrectLineSegmentOnNumberLineCorrectAnswerSection(range, [{ x1: -5, x2: -4 }]);
|
836
|
+
});
|
837
|
+
|
838
|
+
it('When the user attempts the question incorrectly, non scoring label should be displayed, incorrect icon should be displayed beside incorrect response, a status message with text "Your answer is incorrect" and correct answer section with correct answer should be displayed', () => {
|
839
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Segment');
|
840
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("horizontal", range, 8);
|
841
|
+
if (view === 'Grading view') {
|
842
|
+
studentViewPage.steps.submitResponse();
|
843
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
844
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
845
|
+
gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
|
846
|
+
}
|
847
|
+
if (view === 'Question preview' || view === 'Item preview') {
|
848
|
+
numberLinePage.steps.checkNonScoredScoringLabel();
|
849
|
+
numberLinePage.steps.switchToGradingView();
|
850
|
+
}
|
851
|
+
numberLinePage.steps.verifyIncorrectPointsOnNumberLinePreviewTab(range, [8]);
|
852
|
+
numberLinePage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
853
|
+
numberLinePage.steps.verifyCorrectPointsOnNumberLineCorrectAnswerSection(range, [2]);
|
854
|
+
numberLinePage.steps.verifyCorrectLineSegmentOnNumberLineCorrectAnswerSection(range, [{ x1: -5, x2: -4 }]);
|
855
|
+
});
|
856
|
+
|
857
|
+
it('When the user attempts the question partially correct, non scoring label should be displayed, correct icon should be displayed beside the correct response, incorrect icon should be displayed beside incorrect response, a status message with text "Your answer is incorrect" and correct answer section with all correct answers should be displayed', () => {
|
858
|
+
if (view === 'Grading view') {
|
859
|
+
studentViewPage.steps.clearResponses();
|
860
|
+
}
|
861
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Point');
|
862
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("horizontal", range, 2);
|
863
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Segment');
|
864
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("horizontal", range, 8);
|
865
|
+
if (view === 'Grading view') {
|
866
|
+
studentViewPage.steps.submitResponse();
|
867
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
868
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
869
|
+
gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
|
870
|
+
}
|
871
|
+
if (view === 'Question preview' || view === 'Item preview') {
|
872
|
+
numberLinePage.steps.checkNonScoredScoringLabel();
|
873
|
+
numberLinePage.steps.switchToGradingView();
|
874
|
+
}
|
875
|
+
numberLinePage.steps.verifyCorrectPointsOnNumberLinePreviewTab(range, [2]);
|
876
|
+
numberLinePage.steps.verifyIncorrectPointsOnNumberLinePreviewTab(range, [8]);
|
877
|
+
numberLinePage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
878
|
+
numberLinePage.steps.verifyCorrectPointsOnNumberLineCorrectAnswerSection(range, [2]);
|
879
|
+
numberLinePage.steps.verifyCorrectLineSegmentOnNumberLineCorrectAnswerSection(range, [{ x1: -5, x2: -4 }]);
|
880
|
+
});
|
881
|
+
|
882
|
+
it('When user attempts the question correctly, non scoring label should be displayed, correct icons should be displayed beside the correct response, a status message with text "Your answer is correct" should be displayed and correct answer section should not be displayed', () => {
|
883
|
+
if (view === 'Grading view') {
|
884
|
+
studentViewPage.steps.clearResponses();
|
885
|
+
}
|
886
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Point');
|
887
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("horizontal", range, 2);
|
888
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Right open segment');
|
889
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("horizontal", range, -4);
|
890
|
+
if (view === 'Grading view') {
|
891
|
+
studentViewPage.steps.submitResponse();
|
892
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
893
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
894
|
+
gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
|
895
|
+
}
|
896
|
+
if (view === 'Question preview' || view === 'Item preview') {
|
897
|
+
numberLinePage.steps.checkNonScoredScoringLabel();
|
898
|
+
numberLinePage.steps.switchToGradingView();
|
899
|
+
}
|
900
|
+
numberLinePage.steps.verifyCorrectPointsOnNumberLinePreviewTab(range, [2]);
|
901
|
+
numberLinePage.steps.verifyCorrectPointsOnNumberLinePreviewTab(range, [-4, -5]);
|
902
|
+
numberLinePage.steps.verifyCorrectLineSegmentOnNumberLinePreviewTab(range, [{ x1: -5, x2: -4 }]);
|
903
|
+
numberLinePage.steps.verifyCorrectIncorrectAnswerLabel('correct');
|
904
|
+
numberLinePage.steps.verifyCorrectAnswerSectionNotExist();
|
905
|
+
});
|
906
|
+
});
|
907
|
+
});
|
908
|
+
|
696
909
|
if (!grepTags || !grepTags.includes('smoke')) {
|
697
910
|
describe('Question preview: Auto scored - All or nothing: Minimum scoring', () => {
|
698
911
|
abortEarlySetup();
|
package/cypress/e2e/ILC/NumberLine/verticalNumberLine/allOrNothingScoringForAllViews.smoke.js
CHANGED
@@ -696,4 +696,253 @@ describe('Create Item page - Number line: All or nothing ', () => {
|
|
696
696
|
numberLinePage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
697
697
|
});
|
698
698
|
});
|
699
|
+
|
700
|
+
views.forEach((view) => {
|
701
|
+
describe(`Number line Vertical: Manually scored - ${view}`, { tags: 'smoke' }, () => {
|
702
|
+
abortEarlySetup();
|
703
|
+
before(() => {
|
704
|
+
switch (view) {
|
705
|
+
case 'Question preview':
|
706
|
+
numberLinePage.steps.navigateToCreateQuestion('Number line');
|
707
|
+
cy.barsPreLoaderWait();
|
708
|
+
numberLinePage.steps.addTextInQuestionInstructionsInputField('Plot points on the number line');
|
709
|
+
numberLinePage.steps.selectOrientationToggleButton('Upright');
|
710
|
+
numberLinePage.steps.expandScoringTypeDropdown();
|
711
|
+
numberLinePage.steps.selectOptionFromScoringTypeDropdown('Manually scored');
|
712
|
+
numberLinePage.steps.allotPoints(20);
|
713
|
+
numberLinePage.steps.switchToPreviewTab();
|
714
|
+
break;
|
715
|
+
case 'Item preview':
|
716
|
+
cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
|
717
|
+
itemPreviewPage.steps.switchToPreviewTab();
|
718
|
+
break;
|
719
|
+
case 'Grading view':
|
720
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
721
|
+
break;
|
722
|
+
}
|
723
|
+
});
|
724
|
+
|
725
|
+
beforeEach(() => {
|
726
|
+
switch (view) {
|
727
|
+
case 'Question preview':
|
728
|
+
numberLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
|
729
|
+
numberLinePage.steps.resetQuestionPreview();
|
730
|
+
break;
|
731
|
+
case 'Item preview':
|
732
|
+
itemPreviewPage.steps.switchToStudentView();
|
733
|
+
itemPreviewPage.steps.resetQuestionPreview();
|
734
|
+
break;
|
735
|
+
case 'Grading view':
|
736
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
737
|
+
break;
|
738
|
+
}
|
739
|
+
});
|
740
|
+
|
741
|
+
if (view === 'Question preview') {
|
742
|
+
after(() => {
|
743
|
+
numberLinePage.steps.clickOnSaveQuestionButton();
|
744
|
+
utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
|
745
|
+
itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
|
746
|
+
});
|
747
|
+
}
|
748
|
+
|
749
|
+
it('Question instructions should be visible', () => {
|
750
|
+
numberLinePage.steps.verifyQuestionInstructionsTextPreviewTab('Plot points on the number line');
|
751
|
+
numberLinePage.steps.verifyVisibityOfQuestionInstructionsText();
|
752
|
+
});
|
753
|
+
|
754
|
+
it('User should be able to attempt the question in student view and correct/incorrect icons, Your answer is correct/incorrect label, and correct answer section should not be displayed in grading view', () => {
|
755
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Point');
|
756
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("vertical", range, 2);
|
757
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Right open segment');
|
758
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("vertical", range, -4);
|
759
|
+
if (view === 'Grading view') {
|
760
|
+
studentViewPage.steps.submitResponse();
|
761
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
762
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
763
|
+
gradingViewPage.steps.verifyGradingViewScore('', 20);
|
764
|
+
}
|
765
|
+
if (view === 'Question preview' || view === 'Item preview') {
|
766
|
+
numberLinePage.steps.checkManuallyScoredScoringLabel();
|
767
|
+
}
|
768
|
+
numberLinePage.steps.verifyCorrectIncorrectIconsNotExist();
|
769
|
+
numberLinePage.steps.verifyCorrectIncorrectAnswerLabelNotExist();
|
770
|
+
numberLinePage.steps.verifyCorrectAnswerSectionNotExist();
|
771
|
+
});
|
772
|
+
});
|
773
|
+
});
|
774
|
+
|
775
|
+
views.forEach((view) => {
|
776
|
+
describe(`Number line Vertical: Non scored - ${view}`, { tags: 'smoke' }, () => {
|
777
|
+
abortEarlySetup();
|
778
|
+
before(() => {
|
779
|
+
switch (view) {
|
780
|
+
case 'Question preview':
|
781
|
+
numberLinePage.steps.navigateToCreateQuestion('Number line');
|
782
|
+
cy.barsPreLoaderWait();
|
783
|
+
numberLinePage.steps.addTextInQuestionInstructionsInputField('Plot points on the number line');
|
784
|
+
numberLinePage.steps.selectOrientationToggleButton('Upright');
|
785
|
+
numberLinePage.steps.expandScoringTypeDropdown();
|
786
|
+
numberLinePage.steps.selectOptionFromScoringTypeDropdown('Non scored');
|
787
|
+
numberLinePage.steps.selectNumberLineToolOptionSpecifyCorrectAnswer('Point');
|
788
|
+
numberLinePage.steps.plotPointOnNumberLineSpecifyCorrectAnswer("vertical", range, 2);
|
789
|
+
numberLinePage.steps.verifyPointsPlottedOnVerticalNumberLineSpecifyCorrectAnswer(range, [2]);
|
790
|
+
numberLinePage.steps.selectNumberLineToolOptionSpecifyCorrectAnswer('Right open segment');
|
791
|
+
numberLinePage.steps.plotPointOnNumberLineSpecifyCorrectAnswer("vertical", range, -4);
|
792
|
+
numberLinePage.steps.verifyPointsPlottedOnVerticalNumberLineSpecifyCorrectAnswer(range, [-4, -5]);
|
793
|
+
numberLinePage.steps.verifyLineSegmentOnVerticalNumberLineSpecifyCorrectAnswer(range, [{ y1: -5, y2: -4 }]);
|
794
|
+
numberLinePage.steps.switchToPreviewTab();
|
795
|
+
break;
|
796
|
+
case 'Item preview':
|
797
|
+
cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
|
798
|
+
itemPreviewPage.steps.switchToPreviewTab();
|
799
|
+
break;
|
800
|
+
case 'Grading view':
|
801
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
802
|
+
break;
|
803
|
+
}
|
804
|
+
});
|
805
|
+
|
806
|
+
beforeEach(() => {
|
807
|
+
switch (view) {
|
808
|
+
case 'Question preview':
|
809
|
+
numberLinePage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
|
810
|
+
numberLinePage.steps.resetQuestionPreview();
|
811
|
+
break;
|
812
|
+
case 'Item preview':
|
813
|
+
itemPreviewPage.steps.switchToStudentView();
|
814
|
+
itemPreviewPage.steps.resetQuestionPreview();
|
815
|
+
break;
|
816
|
+
case 'Grading view':
|
817
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
818
|
+
break;
|
819
|
+
}
|
820
|
+
});
|
821
|
+
|
822
|
+
if (view === 'Question preview') {
|
823
|
+
after(() => {
|
824
|
+
numberLinePage.steps.clickOnSaveQuestionButton();
|
825
|
+
utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
|
826
|
+
itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
|
827
|
+
});
|
828
|
+
}
|
829
|
+
|
830
|
+
it('When the user selects "Grading" view without attempting the question, non scoring label should be displayed, correct/incorrect status message should not be displayed, correct answers section with a label "Correct answers" should be displayed with correct answers and correct/incorrect icons should not be displayed', () => {
|
831
|
+
if (view === 'Grading view') {
|
832
|
+
studentViewPage.steps.submitResponse();
|
833
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
834
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
835
|
+
gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
|
836
|
+
}
|
837
|
+
if (view === 'Question preview' || view === 'Item preview') {
|
838
|
+
numberLinePage.steps.checkNonScoredScoringLabel();
|
839
|
+
numberLinePage.steps.switchToGradingView();
|
840
|
+
}
|
841
|
+
numberLinePage.steps.verifyCorrectIncorrectAnswerLabelNotExist();
|
842
|
+
numberLinePage.steps.verifyCorrectIncorrectIconsNotExist();
|
843
|
+
numberLinePage.steps.verifyCorrectAnswerSectionExist();
|
844
|
+
});
|
845
|
+
|
846
|
+
it('When the user attempts the question incorrectly, non scoring label should be displayed, incorrect icon should be displayed beside incorrect response, a status message with text "Your answer is incorrect" and correct answer section with correct answer should be displayed', () => {
|
847
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Segment');
|
848
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("vertical", range, 8);
|
849
|
+
numberLinePage.steps.verifyPointsPlottedOnVerticalNumberLinePreviewTab(range, [8, 7]);
|
850
|
+
numberLinePage.steps.verifyLineSegmentOnVerticalNumberLinePreviewTab(range, [{ y1: 7, y2: 8 }]);
|
851
|
+
if (view === 'Grading view') {
|
852
|
+
studentViewPage.steps.submitResponse();
|
853
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
854
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
855
|
+
gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
|
856
|
+
}
|
857
|
+
if (view === 'Question preview' || view === 'Item preview') {
|
858
|
+
numberLinePage.steps.checkNonScoredScoringLabel();
|
859
|
+
numberLinePage.steps.switchToGradingView();
|
860
|
+
}
|
861
|
+
numberLinePage.steps.verifyIncorrectPointsOnVerticalNumberLinePreviewTab(range, [8, 7]);
|
862
|
+
numberLinePage.steps.verifyIncorrectLineSegmentOnVerticalNumberLinePreviewTab(range, [{ y1: 7, y2: 8 }]);
|
863
|
+
numberLinePage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
864
|
+
numberLinePage.steps.verifyCorrectAnswerSectionExist();
|
865
|
+
});
|
866
|
+
|
867
|
+
it('When the user attempts the question partially correct, non scoring label should be displayed, correct icon should be displayed beside the correct response, incorrect icon should be displayed beside incorrect response, a status message with text "Your answer is incorrect" and correct answer section with all correct answers should be displayed', () => {
|
868
|
+
if (view === 'Grading view') {
|
869
|
+
studentViewPage.steps.clearResponses();
|
870
|
+
}
|
871
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Point');
|
872
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("vertical", range, 2);
|
873
|
+
numberLinePage.steps.verifyPointsPlottedOnVerticalNumberLinePreviewTab(range, [2]);
|
874
|
+
if (view === 'Grading view') {
|
875
|
+
studentViewPage.steps.submitResponse();
|
876
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
877
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
878
|
+
gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
|
879
|
+
}
|
880
|
+
if (view === 'Question preview' || view === 'Item preview') {
|
881
|
+
numberLinePage.steps.checkNonScoredScoringLabel();
|
882
|
+
numberLinePage.steps.switchToGradingView();
|
883
|
+
}
|
884
|
+
numberLinePage.steps.verifyCorrectPointsOnVerticalNumberLinePreviewTab(range, [2]);
|
885
|
+
numberLinePage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
886
|
+
numberLinePage.steps.verifyCorrectAnswerSectionExist();
|
887
|
+
});
|
888
|
+
|
889
|
+
it('When the user attempts the question partially correct with an incorrect response, non scoring label should be displayed, correct icon should be displayed beside the correct response, incorrect icon should be displayed beside incorrect response, a status message with text "Your answer is incorrect" and correct answer section with all correct answers should be displayed', () => {
|
890
|
+
if (view === 'Grading view') {
|
891
|
+
studentViewPage.steps.clearResponses();
|
892
|
+
}
|
893
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Right open segment');
|
894
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("vertical", range, -4);
|
895
|
+
numberLinePage.steps.verifyPointsPlottedOnVerticalNumberLinePreviewTab(range, [-4, -5]);
|
896
|
+
numberLinePage.steps.verifyLineSegmentOnVerticalNumberLinePreviewTab(range, [{ y1: -5, y2: -4 }]);
|
897
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Left open segment');
|
898
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("vertical", range, 6);
|
899
|
+
numberLinePage.steps.verifyPointsPlottedOnVerticalNumberLinePreviewTab(range, [6, 5]);
|
900
|
+
numberLinePage.steps.verifyLineSegmentOnVerticalNumberLinePreviewTab(range, [{ y1: 5, y2: 6 }]);
|
901
|
+
if (view === 'Grading view') {
|
902
|
+
studentViewPage.steps.submitResponse();
|
903
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
904
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
905
|
+
gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
|
906
|
+
}
|
907
|
+
if (view === 'Question preview' || view === 'Item preview') {
|
908
|
+
numberLinePage.steps.checkNonScoredScoringLabel();
|
909
|
+
numberLinePage.steps.switchToGradingView();
|
910
|
+
}
|
911
|
+
numberLinePage.steps.verifyCorrectPointsOnVerticalNumberLinePreviewTab(range, [-4, -5]);
|
912
|
+
numberLinePage.steps.verifyCorrectLineSegmentOnVerticalNumberLinePreviewTab(range, [{ y1: -5, y2: -4 }]);
|
913
|
+
numberLinePage.steps.verifyIncorrectPointsOnVerticalNumberLinePreviewTab(range, [6, 5]);
|
914
|
+
numberLinePage.steps.verifyIncorrectLineSegmentOnVerticalNumberLinePreviewTab(range, [{ y1: 5, y2: 6 }]);
|
915
|
+
numberLinePage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
916
|
+
numberLinePage.steps.verifyCorrectAnswerSectionExist();
|
917
|
+
});
|
918
|
+
|
919
|
+
it('When the user attempts the question correctly, non scoring label should be displayed, correct icons should be displayed beside the correct response, a status message with text "Your answer is correct" should be displayed and correct answer section should not be displayed', () => {
|
920
|
+
if (view === 'Grading view') {
|
921
|
+
studentViewPage.steps.clearResponses();
|
922
|
+
}
|
923
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Point');
|
924
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("vertical", range, 2);
|
925
|
+
numberLinePage.steps.verifyPointsPlottedOnVerticalNumberLinePreviewTab(range, [2]);
|
926
|
+
numberLinePage.steps.selectNumberLineToolOptionPreviewTab('Right open segment');
|
927
|
+
numberLinePage.steps.plotPointOnNumberLinePreviewTab("vertical", range, -4);
|
928
|
+
numberLinePage.steps.verifyPointsPlottedOnVerticalNumberLinePreviewTab(range, [-4, -5]);
|
929
|
+
numberLinePage.steps.verifyLineSegmentOnVerticalNumberLinePreviewTab(range, [{ y1: -5, y2: -4 }]);
|
930
|
+
if (view === 'Grading view') {
|
931
|
+
studentViewPage.steps.submitResponse();
|
932
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
933
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
934
|
+
gradingViewPage.steps.verifyScoresNotVisibleForNonScoredQuestions();
|
935
|
+
}
|
936
|
+
if (view === 'Question preview' || view === 'Item preview') {
|
937
|
+
numberLinePage.steps.checkNonScoredScoringLabel();
|
938
|
+
numberLinePage.steps.switchToGradingView();
|
939
|
+
}
|
940
|
+
numberLinePage.steps.verifyCorrectPointsOnVerticalNumberLinePreviewTab(range, [2]);
|
941
|
+
numberLinePage.steps.verifyCorrectPointsOnVerticalNumberLinePreviewTab(range, [-4, -5]);
|
942
|
+
numberLinePage.steps.verifyCorrectLineSegmentOnVerticalNumberLinePreviewTab(range, [{ y1: -5, y2: -4 }]);
|
943
|
+
numberLinePage.steps.verifyCorrectIncorrectAnswerLabel('correct');
|
944
|
+
numberLinePage.steps.verifyCorrectAnswerSectionNotExist();
|
945
|
+
});
|
946
|
+
});
|
947
|
+
});
|
699
948
|
});
|