itemengine-cypress-automation 1.0.590 → 1.0.591-IEI-7055-cypress-d2f8270.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/NumberLine/Scoring/allOrNothingWithAlternatePointsGreaterThanCorrectPoints.js +69 -0
- package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsEqualToAlternatePoints.js +69 -0
- package/cypress/e2e/ILC/NumberLine/Scoring/allOrNothingWithCorrectPointsGreaterThanAlternativePoints.js +69 -0
- package/cypress/e2e/ILC/NumberLine/Scoring/partialEqualWeightsWithAlternatePointsGreaterThanCorrectPoints.js +69 -1
- package/cypress/e2e/ILC/NumberLine/Scoring/partialEqualWeightsWithCorrectPointsGreaterThanAlternatePoints.js +81 -0
- package/cypress/e2e/ILC/NumberLine/Scoring/partialEqualWeigtsWithCorrectPointsEqualToAlternatePoints.js +69 -0
- package/cypress/e2e/ILC/NumberLine/allOrNothingScoringForAllViews.smoke.js +240 -0
- package/cypress/e2e/ILC/NumberLine/verticalNumberLine/allOrNothingScoringForAllViews.smoke.js +235 -0
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingAlternativePointsGreaterThanCorrectPoints.js +87 -6
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsEqualToAlternativePoints.js +80 -2
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/allOrNothingCorrectPointsGreaterThanAlternativePoints.js +81 -2
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialDifferentWeightsAlternativePointsGreaterThanCorrectPoints.js +98 -0
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialDifferentWeightsCorrectPointsEqualToAlternativePoints.js +98 -0
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialDifferentWeightsCorrectPointsGreaterThanAlternativePoints.js +98 -0
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialEqualWeightsAlternativePointsGreaterThanCorrectPoints.js +86 -0
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialEqualWeightsCorrectPointsEqualToAlternativePoints.js +74 -0
- package/cypress/e2e/ILC/NumberLineLabel/Scoring/partialEqualWeightsCorrectPointsGreaterThanAlternativePoints.js +86 -0
- package/cypress/e2e/ILC/NumberLineLabel/allOrNothingForAllViews.smoke.js +258 -0
- package/cypress/e2e/ILC/NumberLineLabel/verticalNumberLine/allOrNothingForAllViews.smoke.js +241 -0
- package/cypress/pages/numberLineLabelPage.js +12 -8
- package/cypress/pages/numberLinePage.js +15 -10
- package/package.json +1 -1
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { numberLineLabelPage, gradingViewPage, itemPreviewPage, studentViewPage, dialogBoxBase } from "../../../pages";
|
|
2
2
|
import abortEarlySetup from "../../../support/helpers/abortEarly";
|
|
3
3
|
import utilities from "../../../support/helpers/utilities";
|
|
4
|
+
import { showAlternativeAnswersComponent } from "../../../pages/components";
|
|
4
5
|
const grepTags = Cypress.env('grepTags');
|
|
5
6
|
let correctAnswerViews = ['Question preview', 'Item preview', 'Grading view'];
|
|
6
7
|
const views = utilities.getViews(correctAnswerViews);
|
|
7
8
|
var itemReferenceID = "";
|
|
8
9
|
const range = 22.2;
|
|
10
|
+
const alternativeAnswerCheck = Cypress.env('ENABLE_ALTERNATIVE_ANSWER_ENHANCEMENT') === 'true';
|
|
9
11
|
|
|
10
12
|
describe('Create Item page - Number line label: All or nothing ', () => {
|
|
11
13
|
before(() => {
|
|
@@ -251,6 +253,262 @@ describe('Create Item page - Number line label: All or nothing ', () => {
|
|
|
251
253
|
});
|
|
252
254
|
});
|
|
253
255
|
|
|
256
|
+
if (alternativeAnswerCheck) {
|
|
257
|
+
views.forEach((view) => {
|
|
258
|
+
describe(`Number line - label: All or nothing scoring with alternate answer - ${view}`, { tags: 'smoke' }, () => {
|
|
259
|
+
abortEarlySetup();
|
|
260
|
+
before(() => {
|
|
261
|
+
switch (view) {
|
|
262
|
+
case 'Question preview':
|
|
263
|
+
numberLineLabelPage.steps.navigateToCreateQuestion('Number line');
|
|
264
|
+
cy.barsPreLoaderWait();
|
|
265
|
+
numberLineLabelPage.steps.navigateToLabelNumberLineTab();
|
|
266
|
+
numberLineLabelPage.steps.addTextInQuestionInstructionsInputField('Plot labels on the number line');
|
|
267
|
+
for (let i = 0; i < 2; i++) {
|
|
268
|
+
numberLineLabelPage.steps.addLabel();
|
|
269
|
+
}
|
|
270
|
+
numberLineLabelPage.steps.enterTextInMultipleLabelInputFields(['Label 1', 'Label 2', 'Label 3', 'Label 4', 'Label 5']);
|
|
271
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 1', 'horizontal', range, 0);
|
|
272
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [0]);
|
|
273
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 2', 'horizontal', range, 9);
|
|
274
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [9]);
|
|
275
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 3', 'horizontal', range, -9);
|
|
276
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [-9]);
|
|
277
|
+
numberLineLabelPage.steps.allotPoints(20);
|
|
278
|
+
//Alternative answer
|
|
279
|
+
numberLineLabelPage.steps.addAlternativeAnswerAccordion(1);
|
|
280
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 1', 'horizontal', range, 0);
|
|
281
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [0]);
|
|
282
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 4', 'horizontal', range, 6);
|
|
283
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [6]);
|
|
284
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 5', 'horizontal', range, -6);
|
|
285
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [-6]);
|
|
286
|
+
numberLineLabelPage.steps.allotPoints(12);
|
|
287
|
+
numberLineLabelPage.steps.switchToPreviewTab();
|
|
288
|
+
break;
|
|
289
|
+
case 'Item preview':
|
|
290
|
+
cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
|
|
291
|
+
itemPreviewPage.steps.switchToPreviewTab();
|
|
292
|
+
break;
|
|
293
|
+
case 'Grading view':
|
|
294
|
+
cy.wait(5000);
|
|
295
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
|
296
|
+
break;
|
|
297
|
+
}
|
|
298
|
+
});
|
|
299
|
+
|
|
300
|
+
beforeEach(() => {
|
|
301
|
+
switch (view) {
|
|
302
|
+
case 'Question preview':
|
|
303
|
+
numberLineLabelPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
|
|
304
|
+
numberLineLabelPage.steps.resetQuestionPreview();
|
|
305
|
+
break;
|
|
306
|
+
case 'Item preview':
|
|
307
|
+
itemPreviewPage.steps.switchToStudentView();
|
|
308
|
+
itemPreviewPage.steps.resetQuestionPreview();
|
|
309
|
+
break;
|
|
310
|
+
case 'Grading view':
|
|
311
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
|
312
|
+
break;
|
|
313
|
+
}
|
|
314
|
+
});
|
|
315
|
+
|
|
316
|
+
if (view === 'Question preview') {
|
|
317
|
+
after(() => {
|
|
318
|
+
numberLineLabelPage.steps.clickOnSaveQuestionButton();
|
|
319
|
+
utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
|
|
320
|
+
itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
|
|
321
|
+
});
|
|
322
|
+
};
|
|
323
|
+
|
|
324
|
+
it('When the user selects \'Grading\' view without attempting the question, the correct answer should be displayed in the correct answer section graph and correct/incorrect status message should not be displayed', () => {
|
|
325
|
+
if (view === 'Grading view') {
|
|
326
|
+
studentViewPage.steps.submitResponse();
|
|
327
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
|
328
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
|
329
|
+
gradingViewPage.steps.verifyGradingViewScore(0, 20);
|
|
330
|
+
} else {
|
|
331
|
+
numberLineLabelPage.steps.switchToGradingView();
|
|
332
|
+
numberLineLabelPage.steps.verifyPreviewScore(0, 20);
|
|
333
|
+
}
|
|
334
|
+
utilities.verifyElementVisibilityState(numberLineLabelPage.numberLinePointPreviewTab(), 'notExist');
|
|
335
|
+
numberLineLabelPage.steps.verifyCorrectIncorrectIconsNotExist();
|
|
336
|
+
numberLineLabelPage.steps.verifyCorrectIncorrectAnswerLabelNotExist();
|
|
337
|
+
cy.wait(2000);
|
|
338
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0, false, view === 'Grading view' ? true : false);
|
|
339
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 2', range, 9);
|
|
340
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 3', range, -9);
|
|
341
|
+
showAlternativeAnswersComponent.steps.verifyCorrectAnswersLabelAndPointVisible('(20 points)');
|
|
342
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleExists();
|
|
343
|
+
showAlternativeAnswersComponent.steps.disableShowAlternativeAnswersToggle();
|
|
344
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleUnchecked();
|
|
345
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersSectionNotExist();
|
|
346
|
+
showAlternativeAnswersComponent.steps.clickShowAlternativeAnswersToggle();
|
|
347
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersLabelAndPointVisible(1, '(12 points)');
|
|
348
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0, true);
|
|
349
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 4', range, 6, true);
|
|
350
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 5', range, -6, true);
|
|
351
|
+
cy.wait(2000);
|
|
352
|
+
});
|
|
353
|
+
|
|
354
|
+
it('When the user attempts the question incorrectly then the user should be awarded with 0 points and on switching to grading view \'Your answer is incorrect\' should be displayed and the attempted graph should be displayed incorrect and the the correct answers should be displayed in the correct answer section graph', () => {
|
|
355
|
+
cy.wait(2000);
|
|
356
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 4', 'horizontal', range, 0);
|
|
357
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [0]);
|
|
358
|
+
cy.wait(2000);
|
|
359
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 3', 'horizontal', range, 4);
|
|
360
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [4]);
|
|
361
|
+
cy.wait(2000);
|
|
362
|
+
if (view === 'Grading view') {
|
|
363
|
+
studentViewPage.steps.submitResponse();
|
|
364
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
|
365
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
|
366
|
+
gradingViewPage.steps.verifyGradingViewScore(0, 20);
|
|
367
|
+
} else {
|
|
368
|
+
numberLineLabelPage.steps.verifyPreviewScore(0, 20);
|
|
369
|
+
numberLineLabelPage.steps.switchToGradingView();
|
|
370
|
+
}
|
|
371
|
+
cy.wait(2000);
|
|
372
|
+
numberLineLabelPage.steps.verifyIncorrectResponseOnNumberLinePreviewTab('Label 4', range, 0);
|
|
373
|
+
numberLineLabelPage.steps.verifyIncorrectResponseOnNumberLinePreviewTab('Label 3', range, 4);
|
|
374
|
+
numberLineLabelPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
|
375
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0);
|
|
376
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 2', range, 9);
|
|
377
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 3', range, -9);
|
|
378
|
+
showAlternativeAnswersComponent.steps.verifyCorrectAnswersLabelAndPointVisible('(20 points)');
|
|
379
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleExists();
|
|
380
|
+
showAlternativeAnswersComponent.steps.disableShowAlternativeAnswersToggle();
|
|
381
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleUnchecked();
|
|
382
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersSectionNotExist();
|
|
383
|
+
showAlternativeAnswersComponent.steps.clickShowAlternativeAnswersToggle();
|
|
384
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersLabelAndPointVisible(1, '(12 points)');
|
|
385
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0, true);
|
|
386
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 4', range, 6, true);
|
|
387
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 5', range, -6, true);
|
|
388
|
+
cy.wait(2000);
|
|
389
|
+
});
|
|
390
|
+
|
|
391
|
+
it('When the user attempts the question partially correct then the user should be awarded with 0 points and on switching to grading view \'Your answer is incorrect\' should be displayed and the attempted graph should be displayed correct and the the correct answers should be displayed in the correct answer section graph', () => {
|
|
392
|
+
if (view === 'Grading view') {
|
|
393
|
+
studentViewPage.steps.clearResponses();
|
|
394
|
+
}
|
|
395
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 1', 'horizontal', range, 0);
|
|
396
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [0]);
|
|
397
|
+
cy.wait(2000);
|
|
398
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 2', 'horizontal', range, 9);
|
|
399
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [9]);
|
|
400
|
+
cy.wait(2000);
|
|
401
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 3', 'horizontal', range, -8);
|
|
402
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [-8]);
|
|
403
|
+
if (view === 'Grading view') {
|
|
404
|
+
studentViewPage.steps.submitResponse();
|
|
405
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
|
406
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
|
407
|
+
gradingViewPage.steps.verifyGradingViewScore(0, 20);
|
|
408
|
+
} else {
|
|
409
|
+
numberLineLabelPage.steps.verifyPreviewScore(0, 20);
|
|
410
|
+
numberLineLabelPage.steps.switchToGradingView();
|
|
411
|
+
}
|
|
412
|
+
cy.wait(2000);
|
|
413
|
+
numberLineLabelPage.steps.verifyIncorrectResponseOnNumberLinePreviewTab('Label 3', range, -8);
|
|
414
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLinePreviewTab('Label 2', range, 9);
|
|
415
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLinePreviewTab('Label 1', range, 0);
|
|
416
|
+
numberLineLabelPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
|
417
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0);
|
|
418
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 2', range, 9);
|
|
419
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 3', range, -9);
|
|
420
|
+
showAlternativeAnswersComponent.steps.verifyCorrectAnswersLabelAndPointVisible('(20 points)');
|
|
421
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleExists();
|
|
422
|
+
showAlternativeAnswersComponent.steps.disableShowAlternativeAnswersToggle();
|
|
423
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleUnchecked();
|
|
424
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersSectionNotExist();
|
|
425
|
+
showAlternativeAnswersComponent.steps.clickShowAlternativeAnswersToggle();
|
|
426
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersLabelAndPointVisible(1, '(12 points)');
|
|
427
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0, true);
|
|
428
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 4', range, 6, true);
|
|
429
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 5', range, -6, true);
|
|
430
|
+
cy.wait(2000);
|
|
431
|
+
});
|
|
432
|
+
|
|
433
|
+
it('When the user attempts the question partially correct with an incorrect response then the user should be awarded with 0 points and on switching to grading view \'Your answer is incorrect\' should be displayed and the attempted graph should be displayed correct for the correct response and incorrect for the incorrect response and the the correct answers should be displayed in the correct answer section graph', () => {
|
|
434
|
+
if (view === 'Grading view') {
|
|
435
|
+
studentViewPage.steps.clearResponses();
|
|
436
|
+
}
|
|
437
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 1', 'horizontal', range, 0);
|
|
438
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [0]);
|
|
439
|
+
cy.wait(2000);
|
|
440
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 2', 'horizontal', range, 9);
|
|
441
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [9]);
|
|
442
|
+
cy.wait(2000);
|
|
443
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 3', 'horizontal', range, -9);
|
|
444
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [-9]);
|
|
445
|
+
cy.wait(2000);
|
|
446
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 4', 'horizontal', range, 2);
|
|
447
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [2]);
|
|
448
|
+
cy.wait(2000);
|
|
449
|
+
if (view === 'Grading view') {
|
|
450
|
+
studentViewPage.steps.submitResponse();
|
|
451
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
|
452
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
|
453
|
+
gradingViewPage.steps.verifyGradingViewScore(0, 20);
|
|
454
|
+
} else {
|
|
455
|
+
numberLineLabelPage.steps.verifyPreviewScore(0, 20);
|
|
456
|
+
numberLineLabelPage.steps.switchToGradingView();
|
|
457
|
+
}
|
|
458
|
+
cy.wait(2000);
|
|
459
|
+
numberLineLabelPage.steps.verifyIncorrectResponseOnNumberLinePreviewTab('Label 4', range, 2);
|
|
460
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLinePreviewTab('Label 3', range, -9);
|
|
461
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLinePreviewTab('Label 2', range, 9);
|
|
462
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLinePreviewTab('Label 1', range, 0);
|
|
463
|
+
numberLineLabelPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
|
464
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0);
|
|
465
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 2', range, 9);
|
|
466
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 3', range, -9);
|
|
467
|
+
showAlternativeAnswersComponent.steps.verifyCorrectAnswersLabelAndPointVisible('(20 points)');
|
|
468
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleExists();
|
|
469
|
+
showAlternativeAnswersComponent.steps.disableShowAlternativeAnswersToggle();
|
|
470
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleUnchecked();
|
|
471
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersSectionNotExist();
|
|
472
|
+
showAlternativeAnswersComponent.steps.clickShowAlternativeAnswersToggle();
|
|
473
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersLabelAndPointVisible(1, '(12 points)');
|
|
474
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0, true);
|
|
475
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 4', range, 6, true);
|
|
476
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLineCorrectAnswerSection('Label 5', range, -6, true);
|
|
477
|
+
cy.wait(2000);
|
|
478
|
+
});
|
|
479
|
+
|
|
480
|
+
it('When the user attempts the question correctly then the user should be awarded with full points and on switching to grading view \'Your answer is correct\' should be displayed and the attempted graph should be displayed correct and the correct answer section graph should not be displayed', () => {
|
|
481
|
+
if (view === 'Grading view') {
|
|
482
|
+
studentViewPage.steps.clearResponses();
|
|
483
|
+
}
|
|
484
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 1', 'horizontal', range, 0);
|
|
485
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [0]);
|
|
486
|
+
cy.wait(2000);
|
|
487
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 2', 'horizontal', range, 9);
|
|
488
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [9]);
|
|
489
|
+
cy.wait(2000);
|
|
490
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 3', 'horizontal', range, -9);
|
|
491
|
+
numberLineLabelPage.steps.verifyPointsPlottedOnNumberLinePreviewTab(range, [-9]);
|
|
492
|
+
cy.wait(2000);
|
|
493
|
+
if (view === 'Grading view') {
|
|
494
|
+
studentViewPage.steps.submitResponse();
|
|
495
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
|
496
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
|
497
|
+
gradingViewPage.steps.verifyGradingViewScore(20, 20);
|
|
498
|
+
} else {
|
|
499
|
+
numberLineLabelPage.steps.verifyPreviewScore(20, 20);
|
|
500
|
+
numberLineLabelPage.steps.switchToGradingView();
|
|
501
|
+
}
|
|
502
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLinePreviewTab('Label 3', range, -9);
|
|
503
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLinePreviewTab('Label 2', range, 9);
|
|
504
|
+
numberLineLabelPage.steps.verifyCorrectResponseOnNumberLinePreviewTab('Label 1', range, 0);
|
|
505
|
+
numberLineLabelPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
|
|
506
|
+
numberLineLabelPage.steps.verifyCorrectAnswerSectionNotExist();
|
|
507
|
+
});
|
|
508
|
+
});
|
|
509
|
+
});
|
|
510
|
+
}
|
|
511
|
+
|
|
254
512
|
views.forEach((view) => {
|
|
255
513
|
describe(`Number line - label: Manually scored - ${view}`, { tags: 'smoke' }, () => {
|
|
256
514
|
abortEarlySetup();
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { numberLineLabelPage, gradingViewPage, itemPreviewPage, studentViewPage, dialogBoxBase } from "../../../../pages";
|
|
2
2
|
import abortEarlySetup from "../../../../support/helpers/abortEarly";
|
|
3
|
+
import { showAlternativeAnswersComponent } from "../../../../pages/components";
|
|
3
4
|
import utilities from "../../../../support/helpers/utilities";
|
|
4
5
|
const grepTags = Cypress.env('grepTags');
|
|
5
6
|
let correctAnswerViews = ['Question preview', 'Item preview', 'Grading view'];
|
|
6
7
|
const views = utilities.getViews(correctAnswerViews);
|
|
7
8
|
var itemReferenceID = "";
|
|
8
9
|
const range = 22.19;
|
|
10
|
+
const alternativeAnswerCheck = Cypress.env('ENABLE_ALTERNATIVE_ANSWER_ENHANCEMENT') === 'true';
|
|
9
11
|
|
|
10
12
|
describe('Create Item page - Number line: All or nothing ', () => {
|
|
11
13
|
before(() => {
|
|
@@ -234,6 +236,245 @@ describe('Create Item page - Number line: All or nothing ', () => {
|
|
|
234
236
|
});
|
|
235
237
|
});
|
|
236
238
|
|
|
239
|
+
if (alternativeAnswerCheck) {
|
|
240
|
+
views.forEach((view) => {
|
|
241
|
+
describe(`Number line - label: All or nothing scoring with alternate answer - ${view}`, { tags: 'smoke' }, () => {
|
|
242
|
+
abortEarlySetup();
|
|
243
|
+
before(() => {
|
|
244
|
+
switch (view) {
|
|
245
|
+
case 'Question preview':
|
|
246
|
+
numberLineLabelPage.steps.navigateToCreateQuestion('Number line');
|
|
247
|
+
cy.barsPreLoaderWait();
|
|
248
|
+
numberLineLabelPage.steps.navigateToLabelNumberLineTab();
|
|
249
|
+
numberLineLabelPage.steps.selectOrientationToggleButton('Upright');
|
|
250
|
+
numberLineLabelPage.steps.addTextInQuestionInstructionsInputField('Plot labels on the number line');
|
|
251
|
+
numberLineLabelPage.steps.allotPoints(20);
|
|
252
|
+
for (let i = 0; i < 2; i++) {
|
|
253
|
+
numberLineLabelPage.steps.addLabel();
|
|
254
|
+
}
|
|
255
|
+
numberLineLabelPage.steps.enterTextInMultipleLabelInputFields(['Label 1', 'Label 2', 'Label 3', 'Label 4', 'Label 5']);
|
|
256
|
+
cy.wait(2000);
|
|
257
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 1', 'vertical', range, 0);
|
|
258
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [0]);
|
|
259
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 2', 'vertical', range, 9);
|
|
260
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [9]);
|
|
261
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 3', 'vertical', range, -9);
|
|
262
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [-9]);
|
|
263
|
+
//Alternative answer
|
|
264
|
+
numberLineLabelPage.steps.addAlternativeAnswerAccordion(1);
|
|
265
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 1', 'vertical', range, 0);
|
|
266
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [0]);
|
|
267
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 4', 'vertical', range, 6);
|
|
268
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [6]);
|
|
269
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLineSpecifyCorrectAnswer('Label 5', 'vertical', range, -6);
|
|
270
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLineSpecifyCorrectAnswer(range, [-6]);
|
|
271
|
+
numberLineLabelPage.steps.allotPoints(12);
|
|
272
|
+
numberLineLabelPage.steps.switchToPreviewTab();
|
|
273
|
+
break;
|
|
274
|
+
case 'Item preview':
|
|
275
|
+
cy.visit(`/item-engine/demo/edit-item/${utilities.base64Encoding(itemReferenceID)}`);
|
|
276
|
+
itemPreviewPage.steps.switchToPreviewTab();
|
|
277
|
+
break;
|
|
278
|
+
case 'Grading view':
|
|
279
|
+
cy.wait(5000);
|
|
280
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
|
281
|
+
break;
|
|
282
|
+
}
|
|
283
|
+
});
|
|
284
|
+
|
|
285
|
+
beforeEach(() => {
|
|
286
|
+
switch (view) {
|
|
287
|
+
case 'Question preview':
|
|
288
|
+
numberLineLabelPage.steps.verifyQuestionPreviewStateWhenSwitchingBackToStudentView();
|
|
289
|
+
numberLineLabelPage.steps.resetQuestionPreview();
|
|
290
|
+
break;
|
|
291
|
+
case 'Item preview':
|
|
292
|
+
itemPreviewPage.steps.switchToStudentView();
|
|
293
|
+
itemPreviewPage.steps.resetQuestionPreview();
|
|
294
|
+
break;
|
|
295
|
+
case 'Grading view':
|
|
296
|
+
cy.wait(5000);
|
|
297
|
+
cy.visit(`/item-engine/demo/render-item/student-view/${utilities.base64Encoding(itemReferenceID)}`);
|
|
298
|
+
break;
|
|
299
|
+
}
|
|
300
|
+
});
|
|
301
|
+
|
|
302
|
+
if (view === 'Question preview') {
|
|
303
|
+
after(() => {
|
|
304
|
+
numberLineLabelPage.steps.clickOnSaveQuestionButton();
|
|
305
|
+
utilities.verifyElementVisibilityState(itemPreviewPage.referenceID(), 'visible');
|
|
306
|
+
itemReferenceID = itemPreviewPage.steps.getItemReferenceID();
|
|
307
|
+
});
|
|
308
|
+
};
|
|
309
|
+
|
|
310
|
+
it('When the user selects \'Grading\' view without attempting the question, the correct answer should be displayed in the correct answer section graph and your answer is incorrect status message should be displayed', () => {
|
|
311
|
+
if (view === 'Grading view') {
|
|
312
|
+
studentViewPage.steps.submitResponse();
|
|
313
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
|
314
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
|
315
|
+
gradingViewPage.steps.verifyGradingViewScore(0, 20);
|
|
316
|
+
} else {
|
|
317
|
+
numberLineLabelPage.steps.switchToGradingView();
|
|
318
|
+
numberLineLabelPage.steps.verifyPreviewScore(0, 20);
|
|
319
|
+
}
|
|
320
|
+
utilities.verifyElementVisibilityState(numberLineLabelPage.numberLinePointPreviewTab(), 'notExist');
|
|
321
|
+
//TODO: Remove comment after https://redmine.zeuslearning.com/issues/565569 is resolved
|
|
322
|
+
//numberLineLabelPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
|
323
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0);
|
|
324
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 2', range, 9);
|
|
325
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 3', range, -9);
|
|
326
|
+
showAlternativeAnswersComponent.steps.verifyCorrectAnswersLabelAndPointVisible('(20 points)');
|
|
327
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleExists();
|
|
328
|
+
showAlternativeAnswersComponent.steps.disableShowAlternativeAnswersToggle();
|
|
329
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleUnchecked();
|
|
330
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersSectionNotExist();
|
|
331
|
+
showAlternativeAnswersComponent.steps.clickShowAlternativeAnswersToggle();
|
|
332
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersLabelAndPointVisible(1, '(12 points)');
|
|
333
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0, true);
|
|
334
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 4', range, 6, true);
|
|
335
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 5', range, -6, true);
|
|
336
|
+
});
|
|
337
|
+
|
|
338
|
+
it('When the user attempts the question incorrectly then the user should be awarded with 0 points and on switching to grading view \'Your answer is incorrect\' should be displayed and the attempted graph should be displayed incorrect and the the correct answers should be displayed in the correct answer section graph', () => {
|
|
339
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 4', 'vertical', range, 0);
|
|
340
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [0]);
|
|
341
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 3', 'vertical', range, 4);
|
|
342
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [4]);
|
|
343
|
+
if (view === 'Grading view') {
|
|
344
|
+
studentViewPage.steps.submitResponse();
|
|
345
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
|
346
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
|
347
|
+
gradingViewPage.steps.verifyGradingViewScore(0, 20);
|
|
348
|
+
} else {
|
|
349
|
+
numberLineLabelPage.steps.verifyPreviewScore(0, 20);
|
|
350
|
+
numberLineLabelPage.steps.switchToGradingView();
|
|
351
|
+
}
|
|
352
|
+
numberLineLabelPage.steps.verifyVerticalIncorrectResponseOnNumberLinePreviewTab('Label 4', range, 0);
|
|
353
|
+
numberLineLabelPage.steps.verifyVerticalIncorrectResponseOnNumberLinePreviewTab('Label 3', range, 4);
|
|
354
|
+
numberLineLabelPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
|
355
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0);
|
|
356
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 2', range, 9);
|
|
357
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 3', range, -9);
|
|
358
|
+
showAlternativeAnswersComponent.steps.verifyCorrectAnswersLabelAndPointVisible('(20 points)');
|
|
359
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleExists();
|
|
360
|
+
showAlternativeAnswersComponent.steps.disableShowAlternativeAnswersToggle();
|
|
361
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleUnchecked();
|
|
362
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersSectionNotExist();
|
|
363
|
+
showAlternativeAnswersComponent.steps.clickShowAlternativeAnswersToggle();
|
|
364
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersLabelAndPointVisible(1, '(12 points)');
|
|
365
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0, true);
|
|
366
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 4', range, 6, true);
|
|
367
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 5', range, -6, true);
|
|
368
|
+
});
|
|
369
|
+
|
|
370
|
+
it('When the user attempts the question partially correct then the user should be awarded with 0 points and on switching to grading view \'Your answer is incorrect\' should be displayed and the attempted graph should be displayed correct and the the correct answers should be displayed in the correct answer section graph', () => {
|
|
371
|
+
if (view === 'Grading view') {
|
|
372
|
+
studentViewPage.steps.clearResponses();
|
|
373
|
+
}
|
|
374
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 1', 'vertical', range, 0);
|
|
375
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [0]);
|
|
376
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 2', 'vertical', range, 9);
|
|
377
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [9]);
|
|
378
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 3', 'vertical', range, -8);
|
|
379
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [-8]);
|
|
380
|
+
if (view === 'Grading view') {
|
|
381
|
+
studentViewPage.steps.submitResponse();
|
|
382
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
|
383
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
|
384
|
+
gradingViewPage.steps.verifyGradingViewScore(0, 20);
|
|
385
|
+
} else {
|
|
386
|
+
numberLineLabelPage.steps.verifyPreviewScore(0, 20);
|
|
387
|
+
numberLineLabelPage.steps.switchToGradingView();
|
|
388
|
+
}
|
|
389
|
+
numberLineLabelPage.steps.verifyVerticalIncorrectResponseOnNumberLinePreviewTab('Label 3', range, -8);
|
|
390
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLinePreviewTab('Label 2', range, 9);
|
|
391
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLinePreviewTab('Label 1', range, 0);
|
|
392
|
+
numberLineLabelPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
|
393
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0);
|
|
394
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 2', range, 9);
|
|
395
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 3', range, -9);
|
|
396
|
+
showAlternativeAnswersComponent.steps.verifyCorrectAnswersLabelAndPointVisible('(20 points)');
|
|
397
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleExists();
|
|
398
|
+
showAlternativeAnswersComponent.steps.disableShowAlternativeAnswersToggle();
|
|
399
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleUnchecked();
|
|
400
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersSectionNotExist();
|
|
401
|
+
showAlternativeAnswersComponent.steps.clickShowAlternativeAnswersToggle();
|
|
402
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersLabelAndPointVisible(1, '(12 points)');
|
|
403
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0, true);
|
|
404
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 4', range, 6, true);
|
|
405
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 5', range, -6, true);
|
|
406
|
+
});
|
|
407
|
+
|
|
408
|
+
it('When the user attempts the question partially correct with an incorrect response then the user should be awarded with 0 points and on switching to grading view \'Your answer is incorrect\' should be displayed and the attempted graph should be displayed correct for the correct response and incorrect for the incorrect response and the the correct answers should be displayed in the correct answer section graph', () => {
|
|
409
|
+
if (view === 'Grading view') {
|
|
410
|
+
studentViewPage.steps.clearResponses();
|
|
411
|
+
}
|
|
412
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 1', 'vertical', range, 0);
|
|
413
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [0]);
|
|
414
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 2', 'vertical', range, 9);
|
|
415
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [9]);
|
|
416
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 3', 'vertical', range, -9);
|
|
417
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [-9]);
|
|
418
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 4', 'vertical', range, 2);
|
|
419
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [2]);
|
|
420
|
+
if (view === 'Grading view') {
|
|
421
|
+
studentViewPage.steps.submitResponse();
|
|
422
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
|
423
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
|
424
|
+
gradingViewPage.steps.verifyGradingViewScore(0, 20);
|
|
425
|
+
} else {
|
|
426
|
+
numberLineLabelPage.steps.verifyPreviewScore(0, 20);
|
|
427
|
+
numberLineLabelPage.steps.switchToGradingView();
|
|
428
|
+
}
|
|
429
|
+
numberLineLabelPage.steps.verifyVerticalIncorrectResponseOnNumberLinePreviewTab('Label 4', range, 2);
|
|
430
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLinePreviewTab('Label 3', range, -9);
|
|
431
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLinePreviewTab('Label 2', range, 9);
|
|
432
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLinePreviewTab('Label 1', range, 0);
|
|
433
|
+
numberLineLabelPage.steps.verifyCorrectIncorrectAnswerLabel('incorrect');
|
|
434
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0);
|
|
435
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 2', range, 9);
|
|
436
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 3', range, -9);
|
|
437
|
+
showAlternativeAnswersComponent.steps.verifyCorrectAnswersLabelAndPointVisible('(20 points)');
|
|
438
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleExists();
|
|
439
|
+
showAlternativeAnswersComponent.steps.disableShowAlternativeAnswersToggle();
|
|
440
|
+
showAlternativeAnswersComponent.steps.verifyShowAlternativeAnswersToggleUnchecked();
|
|
441
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersSectionNotExist();
|
|
442
|
+
showAlternativeAnswersComponent.steps.clickShowAlternativeAnswersToggle();
|
|
443
|
+
showAlternativeAnswersComponent.steps.verifyAlternativeAnswersLabelAndPointVisible(1, '(12 points)');
|
|
444
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 1', range, 0, true);
|
|
445
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 4', range, 6, true);
|
|
446
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection('Label 5', range, -6, true);
|
|
447
|
+
});
|
|
448
|
+
|
|
449
|
+
it('When the user attempts the question correctly then the user should be awarded with full points and on switching to grading view \'Your answer is correct\' should be displayed and the attempted graph should be displayed correct and the correct answer section graph should not be displayed', () => {
|
|
450
|
+
if (view === 'Grading view') {
|
|
451
|
+
studentViewPage.steps.clearResponses();
|
|
452
|
+
}
|
|
453
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 1', 'vertical', range, 0);
|
|
454
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [0]);
|
|
455
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 2', 'vertical', range, 9);
|
|
456
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [9]);
|
|
457
|
+
numberLineLabelPage.steps.clickAndDropLabelOnNumberLinePreviewTab('Label 3', 'vertical', range, -9);
|
|
458
|
+
numberLineLabelPage.steps.verifyVerticalPointsPlottedOnNumberLinePreviewTab(range, [-9]);
|
|
459
|
+
if (view === 'Grading view') {
|
|
460
|
+
studentViewPage.steps.submitResponse();
|
|
461
|
+
utilities.verifyElementVisibilityState(dialogBoxBase.dialogBox(), 'visible');
|
|
462
|
+
studentViewPage.steps.clickOnGoToGradingViewButton();
|
|
463
|
+
gradingViewPage.steps.verifyGradingViewScore(20, 20);
|
|
464
|
+
} else {
|
|
465
|
+
numberLineLabelPage.steps.verifyPreviewScore(20, 20);
|
|
466
|
+
numberLineLabelPage.steps.switchToGradingView();
|
|
467
|
+
}
|
|
468
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLinePreviewTab('Label 3', range, -9);
|
|
469
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLinePreviewTab('Label 2', range, 9);
|
|
470
|
+
numberLineLabelPage.steps.verifyVerticalCorrectResponseOnNumberLinePreviewTab('Label 1', range, 0);
|
|
471
|
+
numberLineLabelPage.steps.verifyCorrectIncorrectAnswerLabel('correct');
|
|
472
|
+
numberLineLabelPage.steps.verifyCorrectAnswerSectionNotExist();
|
|
473
|
+
});
|
|
474
|
+
});
|
|
475
|
+
});
|
|
476
|
+
}
|
|
477
|
+
|
|
237
478
|
views.forEach((view) => {
|
|
238
479
|
describe(`Number line - label vertical: Manually scored - ${view}`, { tags: 'smoke' }, () => {
|
|
239
480
|
abortEarlySetup();
|
|
@@ -40,7 +40,7 @@ const selectors = {
|
|
|
40
40
|
correctIncorrectStatusMessageText: () => cy.get('[class*="NumberLinestyles__CorrectIncorrectWrapper"]'),
|
|
41
41
|
|
|
42
42
|
//Correct answer section
|
|
43
|
-
numberLineCorrectAnswerSection: () => cy.get('[class*="question-preview-wrapper"] .ngie-jxgbox svg').eq(2),
|
|
43
|
+
numberLineCorrectAnswerSection: (isAlternativeAnswerSVG = false) => cy.get('[class*="question-preview-wrapper"] .ngie-jxgbox svg').eq(isAlternativeAnswerSVG ? 3 : 2),
|
|
44
44
|
numberLinePointCorrectAnswerSection: () => cy.get('[class*="question-preview-wrapper"] .ngie-jxgbox').last().find('svg ellipse[display="inline"]')
|
|
45
45
|
}
|
|
46
46
|
|
|
@@ -440,7 +440,7 @@ const steps = {
|
|
|
440
440
|
clickAndDropLabelOnNumberLinePreviewTab: (label, orientation, range, coordinate) => {
|
|
441
441
|
numberLineLabelPage.draggableLabelsPreviewTab()
|
|
442
442
|
.contains(label)
|
|
443
|
-
.click();
|
|
443
|
+
.click({ force: true });
|
|
444
444
|
numberLineLabelPage.numberLinePreviewTab()
|
|
445
445
|
.then(($graphElement) => {
|
|
446
446
|
if (orientation === 'horizontal') {
|
|
@@ -451,6 +451,7 @@ const steps = {
|
|
|
451
451
|
const xPixel = originX + coordinate * (graphWidth / range);
|
|
452
452
|
numberLineLabelPage.numberLinePreviewTab()
|
|
453
453
|
.click(xPixel, originY, { force: true });
|
|
454
|
+
cy.wait(2000); // Wait for UI to update after clicking the label
|
|
454
455
|
} else {
|
|
455
456
|
numberLineLabelPage.labelContainerPreviewTab()
|
|
456
457
|
.then(($element) => {
|
|
@@ -463,6 +464,7 @@ const steps = {
|
|
|
463
464
|
const yPixel = originY - coordinate * (graphHeight / range);
|
|
464
465
|
numberLineLabelPage.numberLinePreviewTab()
|
|
465
466
|
.click(originX, yPixel, { force: true });
|
|
467
|
+
cy.wait(2000); // Wait for UI to update after clicking the label
|
|
466
468
|
});
|
|
467
469
|
}
|
|
468
470
|
});
|
|
@@ -612,16 +614,17 @@ const steps = {
|
|
|
612
614
|
* @param {Object[]} coordinates - An array containing x and y coordinates along with their ranges
|
|
613
615
|
* @param {number} range - range of x coordinate
|
|
614
616
|
*/
|
|
615
|
-
verifyCorrectResponseOnNumberLineCorrectAnswerSection: (label, range, coordinate) => {
|
|
617
|
+
verifyCorrectResponseOnNumberLineCorrectAnswerSection: (label, range, coordinate, isAlternativeAnswer, isGradingView) => {
|
|
618
|
+
let index = isAlternativeAnswer ? 2 : 1;
|
|
616
619
|
numberLineLabelPage.numberLineCorrectAnswerSection()
|
|
617
620
|
.then(($graphElement) => {
|
|
618
621
|
let graphWidth = $graphElement[0].clientWidth;
|
|
619
622
|
const originX = graphWidth / 2 + tolerance / 2;
|
|
620
623
|
const xPixel = originX + coordinate * ((graphWidth - tolerance) / range);
|
|
621
|
-
cy.get('[class*="question-preview-wrapper"] .ngie-jxgbox').eq(
|
|
624
|
+
cy.get('[class*="question-preview-wrapper"] .ngie-jxgbox').eq(index).find(`svg ellipse[cx*="${Math.floor(xPixel)}"][display="inline"]:visible`)
|
|
622
625
|
.should('have.css', 'fill', css.color.correctAnswer);
|
|
623
626
|
});
|
|
624
|
-
numberLineLabelPage.numberLineCorrectAnswerSection()
|
|
627
|
+
numberLineLabelPage.numberLineCorrectAnswerSection(isAlternativeAnswer)
|
|
625
628
|
.parents('.ngie-jxgbox')
|
|
626
629
|
.within(() => {
|
|
627
630
|
numberLineLabelPage.draggableLabelsSpecifyCorrectAnswer()
|
|
@@ -965,16 +968,17 @@ const steps = {
|
|
|
965
968
|
* @param {Object[]} coordinates - An array containing x and y coordinates along with their ranges
|
|
966
969
|
* @param {number} range - range of x coordinate
|
|
967
970
|
*/
|
|
968
|
-
verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection: (label, range, coordinate) => {
|
|
971
|
+
verifyVerticalCorrectResponseOnNumberLineCorrectAnswerSection: (label, range, coordinate, isAlternativeAnswer) => {
|
|
972
|
+
let index = isAlternativeAnswer ? 2 : 1;
|
|
969
973
|
numberLineLabelPage.numberLineCorrectAnswerSection()
|
|
970
974
|
.then(($graphElement) => {
|
|
971
975
|
let graphHeight = $graphElement[0].clientHeight;
|
|
972
976
|
const originY = graphHeight / 2 - tolerance / 2;
|
|
973
977
|
const yPixel = originY - coordinate * ((graphHeight - tolerance) / range);
|
|
974
|
-
cy.get('[class*="question-preview-wrapper"] .ngie-jxgbox').eq(
|
|
978
|
+
cy.get('[class*="question-preview-wrapper"] .ngie-jxgbox').eq(index).find(`svg ellipse[cy*="${Math.floor(yPixel)}"][display="inline"]:visible`)
|
|
975
979
|
.should('have.css', 'fill', css.color.correctAnswer);
|
|
976
980
|
});
|
|
977
|
-
numberLineLabelPage.numberLineCorrectAnswerSection()
|
|
981
|
+
numberLineLabelPage.numberLineCorrectAnswerSection(isAlternativeAnswer)
|
|
978
982
|
.parents('.ngie-jxgbox')
|
|
979
983
|
.within(() => {
|
|
980
984
|
numberLineLabelPage.draggableLabelsSpecifyCorrectAnswer()
|