diff --git a/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward.ts b/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward.ts deleted file mode 100644 index 8b346e0d75ba810435adc064d63adf36e2ef0991..0000000000000000000000000000000000000000 --- a/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { registerLocaleData } from '@angular/common'; -import localeDe from '@angular/common/locales/de'; -import localeDeExtra from '@angular/common/locales/extra/de'; -import { VorgangFormularButtonsE2EComponent } from 'apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components'; -import { VorgangListE2EComponent } from '../../../components/vorgang/vorgang-list.e2e.component'; -import { VorgangE2E } from '../../../model/vorgang'; -import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po'; -import { VorgangPage } from '../../../page-objects/vorgang.po'; -import { dropCollections } from '../../../support/cypress-helper'; -import { exist, notExist } from '../../../support/cypress.util'; -import { loginAsEmil } from '../../../support/user-util'; -import { createVorgang, initVorgaenge } from '../../../support/vorgang-util'; - -registerLocaleData(localeDe, 'de', localeDeExtra); - -describe('Vorgang weiterleiten innerhalb der OzgCloud', () => { - const mainPage: MainPage = new MainPage(); - const vorgangList: VorgangListE2EComponent = mainPage.getVorgangList(); - - const vorgangPage: VorgangPage = new VorgangPage(); - const vorgangFormularButtons: VorgangFormularButtonsE2EComponent = vorgangPage.getFormularButtons(); - - const vorgangWeiterleiten: VorgangE2E = { ...createVorgang(), name: 'Weiterleitung' }; - - before(() => { - initVorgaenge([vorgangWeiterleiten]); - - loginAsEmil(); - - waitForSpinnerToDisappear(); - exist(vorgangList.getRoot()); - }); - - after(() => { - dropCollections(); - }); - - describe('Weiterleiten', () => { - it('should display Weiterleiten button in Status Neu', () => { - vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click(); - waitForSpinnerToDisappear(); - - notExist(vorgangFormularButtons.getForwardButton()); - }); - }); -}); diff --git a/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forwarding-by-email.cy.ts similarity index 100% rename from alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forward.cy.ts rename to alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forwarding-by-email.cy.ts diff --git a/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forwarding.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forwarding.cy.ts new file mode 100644 index 0000000000000000000000000000000000000000..82dd57a8ae88f5879ed473712a489e31520d0c0e --- /dev/null +++ b/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forwarding.cy.ts @@ -0,0 +1,42 @@ +import { registerLocaleData } from '@angular/common'; +import localeDe from '@angular/common/locales/de'; +import localeDeExtra from '@angular/common/locales/extra/de'; +import { E2EVorgangNavigator } from '../../../helper/vorgang/vorgang.navigator'; +import { E2EVorgangVerifier } from '../../../helper/vorgang/vorgang.verifier'; +import { VorgangE2E } from '../../../model/vorgang'; +import { dropCollections } from '../../../support/cypress-helper'; +import { loginAsEmil } from '../../../support/user-util'; +import { createVorgang, initVorgaenge } from '../../../support/vorgang-util'; + +registerLocaleData(localeDe, 'de', localeDeExtra); + +describe('Vorgang weiterleiten innerhalb der OzgCloud', () => { + const vorgangNavigator: E2EVorgangNavigator = new E2EVorgangNavigator(); + const vorgangVerifier: E2EVorgangVerifier = new E2EVorgangVerifier(); + + const vorgangWeiterleiten: VorgangE2E = { ...createVorgang(), name: 'Weiterleitung' }; + + before(() => { + initVorgaenge([vorgangWeiterleiten]); + }); + + after(() => { + dropCollections(); + }); + + describe('Weiterleiten', () => { + describe('Emil', () => { + it('should login as Emil', () => { + loginAsEmil(); + }); + + it('should open vorgang', () => { + vorgangNavigator.openVorgangDetailByName(vorgangWeiterleiten.name); + }); + + it('should display Weiterleiten button in Status Neu', () => { + vorgangVerifier.verifyForwardingButtonExists(); + }); + }); + }); +}); diff --git a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forward.ts b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forwarding.cy.ts similarity index 75% rename from alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forward.ts rename to alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forwarding.cy.ts index d4661c6d5f536cda3e4286f4064b157cd5e56cf0..5130483917d42662bd3c4a806555f163d359514b 100644 --- a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forward.ts +++ b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forwarding.cy.ts @@ -3,17 +3,22 @@ import localeDe from '@angular/common/locales/de'; import localeDeExtra from '@angular/common/locales/extra/de'; import { VorgangFormularButtonsE2EComponent } from 'apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components'; import { VorgangListE2EComponent } from '../../../components/vorgang/vorgang-list.e2e.component'; +import { E2EVorgangNavigator } from '../../../helper/vorgang/vorgang.navigator'; +import { E2EVorgangVerifier } from '../../../helper/vorgang/vorgang.verifier'; import { VorgangE2E } from '../../../model/vorgang'; import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po'; import { VorgangPage } from '../../../page-objects/vorgang.po'; import { dropCollections } from '../../../support/cypress-helper'; -import { exist, notExist } from '../../../support/cypress.util'; +import { exist } from '../../../support/cypress.util'; import { loginAsPeter, loginAsSabine } from '../../../support/user-util'; import { createVorgang, initVorgaenge } from '../../../support/vorgang-util'; registerLocaleData(localeDe, 'de', localeDeExtra); describe('Vorgang weiterleiten innerhalb der OzgCloud', () => { + const vorgangNavigator: E2EVorgangNavigator = new E2EVorgangNavigator(); + const vorgangVerifier: E2EVorgangVerifier = new E2EVorgangVerifier(); + const mainPage: MainPage = new MainPage(); const vorgangList: VorgangListE2EComponent = mainPage.getVorgangList(); @@ -40,21 +45,21 @@ describe('Vorgang weiterleiten innerhalb der OzgCloud', () => { vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click(); waitForSpinnerToDisappear(); - exist(vorgangFormularButtons.getForwardButton()); + vorgangVerifier.verifyForwardingButtonExists(); }); it('should not display Weiterleiten button in Status Angenommen', () => { vorgangFormularButtons.getAnnehmenButton().click(); waitForSpinnerToDisappear(); - notExist(vorgangFormularButtons.getForwardButton()); + vorgangVerifier.verifyNoForwardingButtonExists(); }); it('should not display Weiterleiten button in Status In Bearbeitung', () => { vorgangFormularButtons.getBearbeitenButton().click(); waitForSpinnerToDisappear(); - notExist(vorgangFormularButtons.getForwardButton()); + vorgangVerifier.verifyNoForwardingButtonExists(); }); }); @@ -63,16 +68,12 @@ describe('Vorgang weiterleiten innerhalb der OzgCloud', () => { initVorgaenge([vorgangWeiterleiten]); loginAsPeter(); - - waitForSpinnerToDisappear(); - exist(vorgangList.getRoot()); }); - it('should not display Weiterleiten button in Status In Neu', () => { - vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click(); - waitForSpinnerToDisappear(); + it('should display Weiterleiten button in Status In Neu', () => { + vorgangNavigator.openVorgangDetailByName(vorgangWeiterleiten.name); - notExist(vorgangFormularButtons.getForwardButton()); + vorgangVerifier.verifyForwardingButtonExists(); }); }); }); diff --git a/alfa-client/apps/alfa-e2e/src/helper/vorgang/vorgang.helper.ts b/alfa-client/apps/alfa-e2e/src/helper/vorgang/vorgang.helper.ts new file mode 100644 index 0000000000000000000000000000000000000000..14855ec9447435b69b037074d1e17fb695c54ab4 --- /dev/null +++ b/alfa-client/apps/alfa-e2e/src/helper/vorgang/vorgang.helper.ts @@ -0,0 +1,7 @@ +import { E2EVorgangNavigator } from './vorgang.navigator'; +import { E2EVorgangVerifier } from './vorgang.verifier'; + +export class E2EVorgangHelper { + private readonly verifier: E2EVorgangVerifier = new E2EVorgangVerifier(); + private readonly navigator: E2EVorgangNavigator = new E2EVorgangNavigator(); +} diff --git a/alfa-client/apps/alfa-e2e/src/helper/vorgang/vorgang.navigator.ts b/alfa-client/apps/alfa-e2e/src/helper/vorgang/vorgang.navigator.ts new file mode 100644 index 0000000000000000000000000000000000000000..7b4fc54b196ff4dc2c83ffbf029a8b063c6b1054 --- /dev/null +++ b/alfa-client/apps/alfa-e2e/src/helper/vorgang/vorgang.navigator.ts @@ -0,0 +1,15 @@ +import { VorgangListE2EComponent } from '../../components/vorgang/vorgang-list.e2e.component'; +import { waitForSpinnerToDisappear } from '../../page-objects/main.po'; +import { E2EVorgangVerifier } from './vorgang.verifier'; + +export class E2EVorgangNavigator { + private readonly verifier: E2EVorgangVerifier = new E2EVorgangVerifier(); + + private readonly vorgangListPage = new VorgangListE2EComponent(); + + public openVorgangDetailByName(vorgangName: string): void { + this.vorgangListPage.getListItem(vorgangName).getRoot().click(); + waitForSpinnerToDisappear(); + this.verifier.verifyVorgangDetailOpen(vorgangName); + } +} diff --git a/alfa-client/apps/alfa-e2e/src/helper/vorgang/vorgang.verifier.ts b/alfa-client/apps/alfa-e2e/src/helper/vorgang/vorgang.verifier.ts new file mode 100644 index 0000000000000000000000000000000000000000..c42945065f7c18f03c4f74fbcbf2809c9b2a8021 --- /dev/null +++ b/alfa-client/apps/alfa-e2e/src/helper/vorgang/vorgang.verifier.ts @@ -0,0 +1,19 @@ +import { VorgangPage } from '../../page-objects/vorgang.po'; +import { contains, exist, notExist } from '../../support/cypress.util'; + +export class E2EVorgangVerifier { + private readonly vorgangPage: VorgangPage = new VorgangPage(); + + public verifyVorgangDetailOpen(vorgangName: string): void { + exist(this.vorgangPage.getVorgangDetailHeader().getRoot()); + contains(this.vorgangPage.getVorgangDetailHeader().getName(), vorgangName); + } + + public verifyForwardingButtonExists(): void { + exist(this.vorgangPage.getFormularButtons().getForwardButton()); + } + + public verifyNoForwardingButtonExists(): void { + notExist(this.vorgangPage.getFormularButtons().getForwardButton()); + } +}