Skip to content
Snippets Groups Projects
Commit 3112cf05 authored by OZGCloud's avatar OZGCloud
Browse files

Merge pull request 'OZG-7233 add test' (#872) from OZG-6989-E2E-Archivierung into master

parents d192589c e72625f1
No related branches found
No related tags found
No related merge requests found
......@@ -113,7 +113,7 @@ services:
- OZGCLOUD_VORGANG_BESCHEID_0_FORM_ENGINE_NAME=FormSolutions
- OZGCLOUD_VORGANG_BESCHEID_0_FORM_ID=KFAS_STAGE_KI_10_Haltverbot_LANDESHACKATHON
- OZGCLOUD_FEATURE_COLLABORATION_ENABLED=true
- OZGCLOUD_BARRIEREFREIHEIT_URL=https://static.dev.by.ozg-cloud.de/barrierefreiheit
- OZGCLOUD_BARRIEREFREIHEIT_URL=https://static.dev.sh.ozg-cloud.de/barrierefreiheit
ports:
- 8080:8080
- 5000:5000
......
......@@ -32,6 +32,7 @@ export class VorgangListE2EComponent {
private readonly noRoleMessage: string = 'user-no-role-message';
private readonly emptyListText: string = 'empty-list-text';
private readonly emptyList: string = 'empty-list';
private readonly archivedStatus: string = 'vorgang-list-item-archive-status';
public getRoot() {
return cy.getTestElement(this.root);
......@@ -57,4 +58,8 @@ export class VorgangListE2EComponent {
public getEmptySucheMessage() {
return cy.getTestElement(this.emptyListText);
}
public getArchivedStatus(): Cypress.Chainable<JQuery<HTMLElement>> {
return cy.getTestElement(this.archivedStatus);
}
}
......@@ -25,10 +25,9 @@ export class VorgangMoreMenuE2EComponent {
private readonly rootLocator: string = 'more-menu';
private readonly buttonLocator: string = 'more-menu-button';
private readonly exportierenItem: VorgangMoreMenuExportierenItemE2EComponent =
new VorgangMoreMenuExportierenItemE2EComponent();
private readonly vorpruefenItem: VorgangMoreMenuVorpruefenItemE2EComponent =
new VorgangMoreMenuVorpruefenItemE2EComponent();
private readonly exportierenItem: VorgangMoreMenuExportierenItemE2EComponent = new VorgangMoreMenuExportierenItemE2EComponent();
private readonly vorpruefenItem: VorgangMoreMenuVorpruefenItemE2EComponent = new VorgangMoreMenuVorpruefenItemE2EComponent();
private readonly archivierenItem: VorgangMoreMenuArchivierenItemE2EComponent = new VorgangMoreMenuArchivierenItemE2EComponent();
public getRoot() {
return cy.getTestElementWithOid(this.rootLocator);
......@@ -50,17 +49,21 @@ export class VorgangMoreMenuE2EComponent {
public getVorpruefenItem(): VorgangMoreMenuVorpruefenItemE2EComponent {
return this.vorpruefenItem;
}
public getArchivierenItem(): VorgangMoreMenuArchivierenItemE2EComponent {
return this.archivierenItem;
}
}
export class VorgangMoreMenuExportierenItemE2EComponent {
private readonly root: string = 'vorgang-exportieren-button';
private readonly button: string = 'export-vorgang';
public getRoot() {
public getRoot(): Cypress.Chainable<JQuery<HTMLElement>> {
return cy.getTestElementWithOid(this.root);
}
public getButton() {
public getButton(): Cypress.Chainable<JQuery<HTMLElement>> {
return this.getRoot().getTestElementWithOid(this.button);
}
}
......@@ -69,11 +72,46 @@ export class VorgangMoreMenuVorpruefenItemE2EComponent {
private readonly root: string = 'vorgang-process-vorgang-button';
private readonly button: string = 'process-vorgang';
public getRoot() {
public getRoot(): Cypress.Chainable<JQuery<HTMLElement>> {
return cy.getTestElementWithOid(this.root);
}
public getButton() {
public getButton(): Cypress.Chainable<JQuery<HTMLElement>> {
return this.getRoot().getTestElementWithOid(this.button);
}
}
export class VorgangMoreMenuArchivierenItemE2EComponent {
private readonly root: string = 'vorgang-archive-button';
private readonly button: string = 'archive-vorgang';
private readonly archivierenConfirm: string = 'archive-confirmation-button';
private readonly archivierenCancel: string = 'archive-cancel-button';
public getRoot(): Cypress.Chainable<JQuery<HTMLElement>> {
return cy.getTestElementWithOid(this.root);
}
public getButton(): Cypress.Chainable<JQuery<HTMLElement>> {
return this.getRoot().getTestElementWithOid(this.button);
}
public clickArchivieren(): void {
this.getButton().click({ force: true });
}
public getArchivierenConfirm(): Cypress.Chainable<JQuery<HTMLElement>> {
return cy.getTestElement(this.archivierenConfirm);
}
public getArchivierenCancel(): Cypress.Chainable<JQuery<HTMLElement>> {
return cy.getTestElement(this.archivierenCancel);
}
public confirmArchivieren(): void {
this.getArchivierenConfirm().click();
}
public cancelArchivieren(): void {
this.getArchivierenCancel().click();
}
}
......@@ -43,7 +43,7 @@ describe('VorgangList Page', () => {
const navigation: NavigationE2EComponent = mainPage.getNavigation();
const accTooltip: string = 'Barrierefreiheit';
const accLink: string = 'https://static.dev.by.ozg-cloud.de/barrierefreiheit';
const accLink: string = 'https://static.dev.sh.ozg-cloud.de/barrierefreiheit';
before(() => {
initUsermanagerUsers();
......
import { registerLocaleData } from '@angular/common';
import localeDe from '@angular/common/locales/de';
import localeDeExtra from '@angular/common/locales/extra/de';
import { SnackBarE2EComponent } from 'apps/alfa-e2e/src/components/ui/snackbar.e2e.component';
import { VorgangFormularButtonsE2EComponent } from 'apps/alfa-e2e/src/components/vorgang/vorgang-formular-buttons.e2e.components';
import {
VorgangMoreMenuArchivierenItemE2EComponent,
VorgangMoreMenuE2EComponent,
} from 'apps/alfa-e2e/src/components/vorgang/vorgang-more-menu.e2e.components';
import { VorgangSubnavigationE2EComponent } from 'apps/alfa-e2e/src/components/vorgang/vorgang-subnavigation';
import { VorgangListE2EComponent } from '../../../components/vorgang/vorgang-list.e2e.component';
import { VorgangE2E, VorgangStatusE2E } from '../../../model/vorgang';
import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po';
import { VorgangPage } from '../../../page-objects/vorgang.po';
import { dropCollections, wait } from '../../../support/cypress-helper';
import { exist, notExist } from '../../../support/cypress.util';
import { loginAsSabine } from '../../../support/user-util';
import { createVorgang, initVorgaenge } from '../../../support/vorgang-util';
registerLocaleData(localeDe, 'de', localeDeExtra);
describe('Vorgang archivieren', () => {
const mainPage: MainPage = new MainPage();
const snackBar: SnackBarE2EComponent = mainPage.getSnackBar();
const vorgangList: VorgangListE2EComponent = mainPage.getVorgangList();
const vorgangPage: VorgangPage = new VorgangPage();
const subnavigation: VorgangSubnavigationE2EComponent = vorgangPage.getSubnavigation();
const vorgangMoreMenu: VorgangMoreMenuE2EComponent = vorgangPage.getMoreMenu();
const vorgangFormularButtons: VorgangFormularButtonsE2EComponent = vorgangPage.getFormularButtons();
const vorgangExportieren: VorgangE2E = {
...createVorgang(),
status: VorgangStatusE2E.BESCHIEDEN,
name: 'DoArchivieren',
};
before(() => {
initVorgaenge([vorgangExportieren]);
loginAsSabine();
waitForSpinnerToDisappear();
exist(vorgangList.getRoot());
});
after(() => {
dropCollections();
});
describe('archive file', () => {
const archivierenItem: VorgangMoreMenuArchivierenItemE2EComponent = vorgangMoreMenu.getArchivierenItem();
it('should not show archived status on list page', () => {
notExist(vorgangList.getArchivedStatus());
});
it('Open Vorgang-Detail-Page', () => {
vorgangList.getListItem(vorgangExportieren.name).getRoot().click();
waitForSpinnerToDisappear();
exist(vorgangPage.getVorgangDetailHeader().getRoot());
});
it('should not show "Archivieren" entry in Beschieden status', () => {
vorgangMoreMenu.getButton().click();
notExist(archivierenItem.getRoot());
});
it('should show "Archivieren" button in Abgeschlossen status', () => {
vorgangMoreMenu.getButton().click({ force: true });
vorgangFormularButtons.getAbschliessenButton().click();
waitForSpinnerToDisappear();
snackBar.getCloseButton().click();
vorgangMoreMenu.getButton().click();
exist(archivierenItem.getButton());
});
it('should open popup with confirm button on clicking "Vorgang archivieren"', () => {
archivierenItem.clickArchivieren();
exist(archivierenItem.getArchivierenConfirm());
});
it('should close popup on clicking Cancel, and still show more menu', () => {
archivierenItem.cancelArchivieren();
notExist(archivierenItem.getArchivierenConfirm());
exist(vorgangMoreMenu.getRoot());
});
it('should open popup again and archive Vorgang on confirmation', () => {
archivierenItem.clickArchivieren();
archivierenItem.confirmArchivieren();
//ersetzen, sobald tatsächliche Archivierung geklärt ist; aktuell nur Workaround
wait(2000);
archivierenItem.cancelArchivieren();
//
});
it('should show archived status on list page', () => {
subnavigation.getBackButton().click({ force: true });
waitForSpinnerToDisappear();
exist(vorgangList.getArchivedStatus());
});
it('should still show back button on details page', () => {
vorgangList.getListItem(vorgangExportieren.name).getRoot().click();
waitForSpinnerToDisappear();
exist(subnavigation.getBackButton());
});
it('should not show subnavigation buttons on details page', () => {
notExist(subnavigation.getCreateWiedervorlageIconButton());
notExist(subnavigation.getAssignUserProfileIconButton());
notExist(subnavigation.getPostfachMailIconButton());
});
});
});
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment