import { login } from "../helpers" describe("competenceCertificate.cy.js", () => { beforeEach(() => { }) it("check without points", () => { cy.manageCommand("cypress_reset") login("test-student1@example.com", "test") cy.visit("/course/test-lehrgang/competence") cy.get('[data-cy="certificate-total-points-text"]').contains( "Der Punktestand wird zu einem späteren Zeitpunkt berechnet." ) cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1"]' ).and("contain", "0 von 2 Kompetenznachweis-Elementen") // check on certificates page cy.get('[data-cy="certificates-show-all-button"]').click() cy.get('[data-cy="certificate-total-points-text"]').contains( "Der Punktestand wird zu einem späteren Zeitpunkt berechnet." ) cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1"]' ) .should( "contain", "Der Punktestand wird zu einem späteren Zeitpunkt berechnet." ) .and("contain", "0 von 2 Kompetenznachweis-Elementen") // check certificate detail page cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-detail-link"]' ).click() cy.get( '[data-cy="assignment-test-lehrgang-assignment-überprüfen-einer-motorfahrzeugs-versicherungspolice"]' ).should("contain", "Höchstpunktzahl") cy.get( '[data-cy="assignment-test-lehrgang-assignment-edoniq-wissens-und-verständisfragen-circle-fahrzeug-demo"]' ).should("contain", "Höchstpunktzahl") }) it("check with finished passed edoniq test", () => { cy.manageCommand( "cypress_reset --create-assignment-completion --create-edoniq-test-results 19 24 0" ) login("test-student1@example.com", "test") cy.visit("/course/test-lehrgang/competence") cy.get('[data-cy="certificate-total-points-text"]').contains( "Erfahrungsnote üK: 5" ) cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1"]' ) .should("contain", "Note: 5") .and("contain", "1 von 2 Kompetenznachweis-Elementen") // check on certificates page cy.get('[data-cy="certificates-show-all-button"]').click() cy.get('[data-cy="certificate-total-points-text"]') .should("contain", "Erfahrungsnote üK") .and("contain", "Zwischenstand") cy.get('[data-cy="certificate-total-grade"]').should("contain", "Note: 5") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade"]' ).should("contain", "Note: 5") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade-percent"]' ).should("contain", "Ungerundete Note: 4.96") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1"]' ) .and("contain", "Zwischenstand") .and("contain", "1 von 2 Kompetenznachweis-Elementen") // check certificate detail page cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-detail-link"]' ).click() cy.get( '[data-cy="assignment-test-lehrgang-assignment-überprüfen-einer-motorfahrzeugs-versicherungspolice"]' ) .should("contain", "Höchstpunktzahl") .and("contain", "Ergebnisse abgegeben") cy.get( '[data-cy="assignment-test-lehrgang-assignment-edoniq-wissens-und-verständisfragen-circle-fahrzeug-demo"]' ) .should("contain", "19") .and("contain", "Bewertung freigegeben") .and("not.contain", "Nicht Bestanden") // it can open learning content page directly cy.get( '[data-cy="assignment-test-lehrgang-assignment-edoniq-wissens-und-verständisfragen-circle-fahrzeug-demo"] [data-cy="open-learning-content"]' ).click() cy.get('[data-cy="test-result"]') .should("contain", "19 von 24 Punkten") .and("contain", "79%") }) it("check with finished failed edoniq test", () => { cy.manageCommand( "cypress_reset --create-assignment-completion --create-edoniq-test-results 10 24 0" ) login("test-student1@example.com", "test") // go to certificate detail page cy.visit( "/course/test-lehrgang/competence/certificates/kompetenznachweis-1" ) cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade"]' ).should("contain", "Note: 3") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade-percent"]' ).should("contain", "Ungerundete Note: 3.08") cy.get( '[data-cy="assignment-test-lehrgang-assignment-edoniq-wissens-und-verständisfragen-circle-fahrzeug-demo"]' ) .should("contain", "10") .and("contain", "Bewertung freigegeben") .and("contain", "42%") .and("contain", "Nicht bestanden") // it can open learning content page directly cy.get( '[data-cy="assignment-test-lehrgang-assignment-edoniq-wissens-und-verständisfragen-circle-fahrzeug-demo"] [data-cy="open-learning-content"]' ).click() cy.get('[data-cy="test-result"]') .should("contain", "10 von 24 Punkten") .and("contain", "42%") .and("contain", "Nicht bestanden") }) it("check with finished edoniq test and finished casework", () => { cy.manageCommand( "cypress_reset --create-assignment-evaluation --create-edoniq-test-results 19 24 0" ) login("test-student1@example.com", "test") cy.visit("/course/test-lehrgang/competence") cy.get('[data-cy="certificate-total-points-text"]').contains( "Erfahrungsnote üK: 5.5" ) cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1"]' ) .should("contain", "Note: 5.5") .and("contain", "2 von 2 Kompetenznachweis-Elementen") // check on certificates page cy.get('[data-cy="certificates-show-all-button"]').click() cy.get('[data-cy="certificate-total-points-text"]') .should("contain", "Erfahrungsnote üK") .and("contain", "Note: 5.5") .and("not.contain", "Zwischenstand") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1"]' ) .and("not.contain", "Zwischenstand") .and("contain", "2 von 2 Kompetenznachweis-Elementen") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade"]' ).should("contain", "Note: 5.5") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade-percent"]' ).should("contain", "Ungerundete Note: 5.48") // check certificate detail page cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-detail-link"]' ).click() cy.get( '[data-cy="assignment-test-lehrgang-assignment-überprüfen-einer-motorfahrzeugs-versicherungspolice"]' ) .should("contain", "24") .and("contain", "von 24 Punkten") .and("contain", "Bewertung freigegeben") cy.get( '[data-cy="assignment-test-lehrgang-assignment-edoniq-wissens-und-verständisfragen-circle-fahrzeug-demo"]' ) .should("contain", "19") .and("contain", "von 24 Punkten") .and("contain", "Bewertung freigegeben") }) it("check with finished edoniq test and finished casework in different course sessions", () => { const TEST_TRAINER2_USER_ID = "299941ae-1e4b-4f45-8180-876c3ad340b4" const TEST_STUDENT2_USER_ID = "19c40d94-15cc-4198-aaad-ef707c4b0900" const TEST_COURSE_SESSION_ZURICH_ID = -2 cy.manageCommand( `cypress_reset --create-assignment-evaluation --assignment-evaluation-user-id ${TEST_TRAINER2_USER_ID} --assignment-completion-user-id ${TEST_STUDENT2_USER_ID} --edoniq-user-id ${TEST_STUDENT2_USER_ID} --edoniq-course-session-id '${TEST_COURSE_SESSION_ZURICH_ID}' --create-edoniq-test-results 19 24 0` ) login("test-student2@example.com", "test") cy.visit("/course/test-lehrgang/competence") cy.get('[data-cy="certificate-total-points-text"]').contains( "Erfahrungsnote üK: 5.5" ) cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1"]' ) .should("contain", "Note: 5.5") .and("contain", "2 von 2 Kompetenznachweis-Elementen") // check on certificates page cy.get('[data-cy="certificates-show-all-button"]').click() cy.get('[data-cy="certificate-total-points-text"]') .should("contain", "Erfahrungsnote üK") .and("contain", "Note: 5.5") .and("not.contain", "Zwischenstand") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1"]' ) .and("not.contain", "Zwischenstand") .and("contain", "2 von 2 Kompetenznachweis-Elementen") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade"]' ).should("contain", "Note: 5.5") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade-percent"]' ).should("contain", "Ungerundete Note: 5.48") // check certificate detail page cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-detail-link"]' ).click() cy.get( '[data-cy="assignment-test-lehrgang-assignment-überprüfen-einer-motorfahrzeugs-versicherungspolice"]' ) .should("contain", "24") .and("contain", "von 24 Punkten") .and("contain", "Bewertung freigegeben") cy.get( '[data-cy="assignment-test-lehrgang-assignment-edoniq-wissens-und-verständisfragen-circle-fahrzeug-demo"]' ) .should("contain", "19") .and("contain", "von 24 Punkten") .and("contain", "Bewertung freigegeben") cy.get('[data-cy="assignment-test-lehrgang-assignment-überprüfen-einer-motorfahrzeugs-versicherungspolice-course-session"]').should("contain", "Test Bern 2022 a") cy.get('[data-cy="assignment-test-lehrgang-assignment-edoniq-wissens-und-verständisfragen-circle-fahrzeug-demo-course-session"]').should("contain", "Test Zürich 2022 a") }) it("check show assignment in different course session", () => { const TEST_TRAINER2_USER_ID = "299941ae-1e4b-4f45-8180-876c3ad340b4" const TEST_STUDENT2_USER_ID = "19c40d94-15cc-4198-aaad-ef707c4b0900" const TEST_COURSE_SESSION_ZURICH_ID = -2 cy.manageCommand( `cypress_reset --create-assignment-evaluation --assignment-evaluation-user-id ${TEST_TRAINER2_USER_ID} --assignment-completion-user-id ${TEST_STUDENT2_USER_ID} --edoniq-user-id ${TEST_STUDENT2_USER_ID} --edoniq-course-session-id '${TEST_COURSE_SESSION_ZURICH_ID}' --create-edoniq-test-results 19 24 0` ) login("test-student2@example.com", "test") cy.visit("course/test-lehrgang/competence/certificates/kompetenznachweis-1") cy.get('[data-cy="current-course-session-title"]').should("contain", "Test Bern 2022 a") cy.get( '[data-cy="assignment-test-lehrgang-assignment-edoniq-wissens-und-verständisfragen-circle-fahrzeug-demo"] [data-cy="open-learning-content"]' ).click() cy.get('[data-cy="current-course-session-title"]').should("contain", "Test Zürich 2022 a") }) it("check with finished edoniq test with deducted points", () => { cy.manageCommand( "cypress_reset --create-assignment-completion --create-edoniq-test-results 19 24 8" ) login("test-student1@example.com", "test") // go to certificate detail page cy.visit( "/course/test-lehrgang/competence/certificates/kompetenznachweis-1" ) cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade"]' ).should("contain", "Note: 3.5") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade-percent"]' ).should("contain", "Ungerundete Note: 3.29") cy.get( '[data-cy="assignment-test-lehrgang-assignment-edoniq-wissens-und-verständisfragen-circle-fahrzeug-demo"]' ) .should("contain", "11") .and("contain", "Bewertung freigegeben") .and("contain", "46%") .and("contain", "mit Abzug") .and("contain", "Nicht bestanden") // it can open learning content page directly cy.get( '[data-cy="assignment-test-lehrgang-assignment-edoniq-wissens-und-verständisfragen-circle-fahrzeug-demo"] [data-cy="open-learning-content"]' ).click() cy.get('[data-cy="test-result"]') .should("contain", "11 von 24 Punkten") .and("contain", "46%") .and("contain", "Punkte aus Bewertung: 19") .and("contain", "Abgezogene Punkte: 8") .and("contain", "Grund: Edoniq Punkteabzug Test") .and("contain", "Nicht bestanden") }) it("check with finished casework and points deducted", () => { cy.manageCommand( "cypress_reset --create-assignment-evaluation --assignment-evaluation-scores 4,6,4,3,2 --assignment-points-deducted 5" ) login("test-student1@example.com", "test") cy.visit("/course/test-lehrgang/competence") cy.get('[data-cy="certificate-total-points-text"]').contains( "Erfahrungsnote üK: 4" ) cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1"]' ) .should("contain", "Note: 4") .and("contain", "1 von 2 Kompetenznachweis-Elementen") // check on certificates page cy.get('[data-cy="certificates-show-all-button"]').click() cy.get('[data-cy="certificate-total-points-text"]') .should("contain", "Erfahrungsnote üK") .and("contain", "Note: 4") .and("contain", "Zwischenstand") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1"]' ) .and("contain", "Zwischenstand") .and("contain", "1 von 2 Kompetenznachweis-Elementen") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade"]' ).should("contain", "Note: 4") cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-grade-percent"]' ).should("contain", "Ungerundete Note: 3.92") // check certificate detail page cy.get( '[data-cy="certificate-test-lehrgang-competencenavi-certificates-kompetenznachweis-1-detail-link"]' ).click() cy.get( '[data-cy="assignment-test-lehrgang-assignment-überprüfen-einer-motorfahrzeugs-versicherungspolice"]' ) .should("contain", "14") .and("contain", "von 24 Punkten") .and("contain", "58%") .and("contain", "mit Abzug") .and("contain", "Bewertung freigegeben") cy.get( '[data-cy="assignment-test-lehrgang-assignment-überprüfen-einer-motorfahrzeugs-versicherungspolice"] [data-cy="open-learning-content"]' ).click() cy.get('[data-cy="user-points"]').should("contain", "14") cy.get('[data-cy="total-points"]').should( "contain", "von 24 Punkten (58%)" ) cy.get('[data-cy="points-deducted"]') .should("contain", "Punkte aus Bewertung: 19") .and("contain", "Abgezogene Punkte: 5") .and("contain", "Grund: Assignment Punkteabzug Test") }) it("should display link to details", () => { cy.manageCommand("cypress_reset") login("test-student1@example.com", "test") cy.visit("/course/test-lehrgang/competence/self-evaluation-and-feedback") cy.get('[data-cy^="self-eval-"][data-cy$="-detail-url"]:first').contains( "Selbsteinschätzung anschauen" ) }) })