diff --git a/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-bescheid-wizard.e2e.component.ts b/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-bescheid-wizard.e2e.component.ts index 17d751a99d64ce4c1fac63beb76ee18f4f365346..0f0c5cbfe7eaabfa0f4c219b936606fbbe5ccb95 100644 --- a/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-bescheid-wizard.e2e.component.ts +++ b/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-bescheid-wizard.e2e.component.ts @@ -50,6 +50,9 @@ export class VorgangBescheidWizardE2EComponent { private readonly saveBescheid: string = 'save-button'; private readonly sendBescheid: string = 'send-button'; private readonly confirmAndSaveButton: string = 'confirm-and-save-button'; + private readonly antragstellerText: string = 'bescheid-nachricht-an-antragsteller'; + private readonly betreffText: string = 'Betreff-text-input'; + private readonly nachrichtText: string = 'Text-textarea'; private readonly fileBescheidValid: string = 'Bescheid_validpdf-file-item'; private readonly fileAnhangValid: string = 'Anhang_validpdf-file-item'; @@ -66,145 +69,157 @@ export class VorgangBescheidWizardE2EComponent { private locatorRoot: string = 'bescheid-wizard'; - public getRoot() { + public getRoot(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.locatorRoot); } - public getBewilligtButton() { + public getBewilligtButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.bewilligtButton); } - public getAbgelehntButton() { + public getAbgelehntButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.abgelehntButton); } - public getUeberspringenButton() { + public getUeberspringenButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.ueberspringenButton); } - public getStatusText() { + public getStatusText(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.statusText); } - public getUeberspringenDialog() { + public getUeberspringenDialog(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.ueberspringenDialog); } - public getUeberspringenAbbrechen() { + public getUeberspringenAbbrechen(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.ueberspringenAbbrechen); } - public getUeberspringenAbschliessen() { + public getUeberspringenAbschliessen(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.ueberspringenAbschliessen); } - public getDateInput() { + public getDateInput(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.dateInput); } - public getDateError() { + public getDateError(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.dateError); } - public getWeiterButton() { + public getWeiterButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.weiterButton); } - public getStepCaption() { + public getStepCaption(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.stepCaption); } - public getStepButton1() { + public getStepButton1(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.stepButton1); } - public getStepButton2() { + public getStepButton2(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.stepButton2); } - public getStepButton3() { + public getStepButton3(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.stepButton3); } - public getCloseButton() { + public getCloseButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.closeButton); } - public getCloseDialog() { + public getCloseDialog(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.closeDialog); } - public getCloseVerwerfenButton() { + public getCloseVerwerfenButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.bescheidVerwerfenButton); } - public getCloseSpeichernButton() { + public getCloseSpeichernButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.bescheidSpeichernButton); } - public getUploadBescheidButton() { + public getUploadBescheidButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.uploadBescheidFile); } - public getUploadAttachmentButton() { + public getUploadAttachmentButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.uploadAttachment); } - public getFileBescheidValidInWizard() { + public getFileBescheidValidInWizard(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.locatorRoot).find(`[data-test-id=${this.fileBescheidValid}]`); } - public getFileAnhangValidInWizard() { + public getFileAnhangValidInWizard(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.locatorRoot).find(`[data-test-id=${this.fileAnhangValid}]`); } - public getDeleteButtonOfElement(element: string) { + public getDeleteButtonOfElement(element: string): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(element).find('[title="Anhang löschen"]'); } - public getElementFromFileName(filename: string) { + public getElementFromFileName(filename: string): string { return filename.replace(/\./g, '') + '-file-item'; } - public getBescheidDocument() { + public getBescheidDocument(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.bescheidDocument); } - public getAttachmentDocument() { + public getAttachmentDocument(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.attachmentDocument); } - public getBescheidUploadSpinner() { + public getBescheidUploadSpinner(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.get(this.bescheidUploadSpinner); } - public getAttachmentUploadSpinner() { + public getAttachmentUploadSpinner(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.get(this.attachmentUploadSpinner); } - public getBescheidSaveSpinner() { + public getBescheidSaveSpinner(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.get(this.bescheidSaveSpinner); } - public getSendenSpinner() { + public getSendenSpinner(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.get(this.sendenSpinner); } - public getMailTextArea() { + public getMailTextArea(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.get(this.mailTextArea); } - public getSaveButton() { + public getSaveButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.saveBescheid); } - public getSendButton() { + public getSendButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.sendBescheid); } - public getResultBox() { + public getResultBox(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.bescheidResultBox); } - public getConfirmAndSaveButton() { + public getConfirmAndSaveButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.confirmAndSaveButton); } + + public getAntragstellerText(): Cypress.Chainable<JQuery<HTMLElement>> { + return cy.getTestElement(this.antragstellerText); + } + + public getBetreffText(): Cypress.Chainable<JQuery<HTMLElement>> { + return cy.getTestElement(this.betreffText); + } + + public getNachrichtText(): Cypress.Chainable<JQuery<HTMLElement>> { + return cy.getTestElement(this.nachrichtText); + } } diff --git a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-bescheid/vorgang-bescheid-dokumente-hochladen.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-bescheid/vorgang-bescheid-dokumente-hochladen.cy.ts index fecc0d94c2591421c36835b202e9e9b5e4ab2653..648de8c2c130a59e8e59795599410515ebf92974 100644 --- a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-bescheid/vorgang-bescheid-dokumente-hochladen.cy.ts +++ b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-bescheid/vorgang-bescheid-dokumente-hochladen.cy.ts @@ -10,7 +10,7 @@ import { VorgangListE2EComponent } from '../../../components/vorgang/vorgang-lis import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po'; import { VorgangPage } from '../../../page-objects/vorgang.po'; import { dropCollections, getTestElement } from '../../../support/cypress-helper'; -import { contains, exist, notExist } from '../../../support/cypress.util'; +import { contains, exist, haveValue, notContains, notExist } from '../../../support/cypress.util'; import { TEST_FILE_BESCHEID_ANHANG_BIG, TEST_FILE_BESCHEID_ANHANG_VALID, @@ -43,6 +43,11 @@ describe('Bescheid Dokumente hochladen', () => { const documentError: string = 'Erlaubte Dateiendungen'; const sizeError: string = 'Anhänge größer'; const missingBescheidError: string = 'Bitte fügen Sie'; + const nachrichtHeader: string = 'Neue Nachricht'; + const antragstellerName: string = 'An: Max Testermann'; + const betreffText: string = 'Ihr Bescheid zum Antrag'; + const nachrichtText: string = + 'Sehr geehrte/r Antragsteller/in,\n\nim folgenden erhalten Sie Ihren Bescheid.\n\nMit freundlichen Grüßen\n\nIhre Verwaltung'; before(() => { initVorgaenge([bescheidVorgang]); @@ -144,4 +149,22 @@ describe('Bescheid Dokumente hochladen', () => { contains(bescheidWizard.getBescheidDocument(), missingBescheidError); }); }); + + describe('check contents of step 3', () => { + it('should show Max Testermann as Antragsteller, the default message text', () => { + uploadFile(bescheidWizard.getUploadBescheidButton(), TEST_FILE_BESCHEID_VALID); + notExist(bescheidWizard.getBescheidUploadSpinner()); + + bescheidWizard.getWeiterButton().click(); + + contains(bescheidWizard.getAntragstellerText(), nachrichtHeader); + contains(bescheidWizard.getAntragstellerText(), antragstellerName); + haveValue(bescheidWizard.getBetreffText(), betreffText); + haveValue(bescheidWizard.getNachrichtText(), nachrichtText); + }); + + it('should not contain error message from upload', () => { + notContains(bescheidWizard.getAttachmentDocument(), sizeError); + }); + }); });