Skip to content
Snippets Groups Projects
Commit b7e84118 authored by Albert Bruns's avatar Albert Bruns
Browse files

Merge remote-tracking branch 'origin/main' into OZG-725-e2e

# Conflicts:
#	alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-forwarding.cy.ts
#	alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-detailansicht/vorgang-forwarding.cy.ts
parents 34e91f25 2a40d65b
No related branches found
No related tags found
1 merge request!98OZG-725-e2e
Showing
with 77 additions and 33 deletions
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 { 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 { 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 vorgangNavigator: E2EVorgangNavigator = new E2EVorgangNavigator();
const vorgangVerifier: E2EVorgangVerifier = new E2EVorgangVerifier();
const vorgangWeiterleiten: VorgangE2E = { ...createVorgang(), name: 'Weiterleitung' };
before(() => {
initVorgaenge([vorgangWeiterleiten]);
loginAsEmil();
waitForSpinnerToDisappear();
exist(vorgangList.getRoot());
});
after(() => {
......@@ -36,11 +25,18 @@ describe('Vorgang weiterleiten innerhalb der OzgCloud', () => {
});
describe('Weiterleiten', () => {
it('should display Weiterleiten button in Status Neu', () => {
vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click();
waitForSpinnerToDisappear();
describe('Emil', () => {
it('should login as Emil', () => {
loginAsEmil();
});
it('should open vorgang', () => {
vorgangNavigator.openVorgangDetailByName(vorgangWeiterleiten.name);
});
notExist(vorgangFormularButtons.getForwardButton());
it('should display Weiterleiten button in Status Neu', () => {
vorgangVerifier.verifyForwardingButtonExists();
});
});
});
});
......@@ -3,6 +3,8 @@ 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';
......@@ -15,6 +17,9 @@ import { ForwardingDialogE2EComponent } from 'apps/alfa-e2e/src/components/vorga
registerLocaleData(localeDe, 'de', localeDeExtra);
describe('Vorgang weiterleiten', () => {
const vorgangNavigator: E2EVorgangNavigator = new E2EVorgangNavigator();
const vorgangVerifier: E2EVorgangVerifier = new E2EVorgangVerifier();
const mainPage: MainPage = new MainPage();
const vorgangList: VorgangListE2EComponent = mainPage.getVorgangList();
......@@ -45,7 +50,7 @@ describe('Vorgang weiterleiten', () => {
vorgangList.getListItem(vorgangWeiterleiten.name).getRoot().click();
waitForSpinnerToDisappear();
exist(vorgangFormularButtons.getForwardButton());
vorgangVerifier.verifyForwardingButtonExists();
});
it('should open forwarding dialog on forward button click', () => {
......@@ -113,14 +118,14 @@ describe('Vorgang weiterleiten', () => {
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();
});
});
......@@ -134,11 +139,10 @@ describe('Vorgang weiterleiten', () => {
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();
});
});
});
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();
}
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);
}
}
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());
}
}
<p class="flex flex-col gap-2 text-text">
<p class="flex flex-col gap-0.5 text-text">
<span class="font-medium">Benutzername</span>
<span>{{ userName }}</span>
</p>
<h2 class="heading-2 mt-4">Rollen für OZG-Cloud</h2>
<div [formGroup]="formGroupParent">
<div [formGroupName]="UserFormService.CLIENT_ROLES" class="mb-8 flex gap-56">
<div [formGroupName]="UserFormService.ADMINISTRATION_GROUP" class="flex flex-col gap-2">
<div [formGroupName]="UserFormService.CLIENT_ROLES" class="mb-8 flex flex-col gap-4 md:flex-row">
<div [formGroupName]="UserFormService.ADMINISTRATION_GROUP" class="flex flex-1 flex-col gap-2">
<h3 class="text-md block font-medium text-text">Administration</h3>
<div class="flex items-center gap-2">
<ods-checkbox-editor [formControlName]="UserFormService.ADMIN" label="Admin" inputId="admin" />
......@@ -26,7 +26,7 @@
</button>
</div>
</div>
<div [formGroupName]="UserFormService.ALFA_GROUP" class="flex flex-col gap-2">
<div [formGroupName]="UserFormService.ALFA_GROUP" class="flex flex-1 flex-col gap-2">
<h3 class="text-md block font-medium text-text">Alfa</h3>
<div class="flex items-center gap-2">
<ods-checkbox-editor [formControlName]="UserFormService.LOESCHEN" label="Löschen" inputId="delete" />
......
......@@ -32,7 +32,7 @@
[formGroupParent]="formService.form"
[formGroupOrganisationsEinheiten]="formService.getOrganisationsEinheitenGroup()"
/>
<div class="flex justify-between">
<div class="mb-6 flex justify-between">
<admin-user-form-save-button />
@if (isPatch) {
<admin-delete-open-dialog-button data-test-id="delete-button-container" />
......
......@@ -64,12 +64,15 @@ export abstract class FormControlEditorAbstractComponent implements ControlValue
this.fieldControl.setValue(text);
this.setErrors();
}
registerOnChange(fn: (text: string | Date) => {}): void {
this.onChange = fn;
}
registerOnTouched(fn: () => {}): void {
this.onTouched = fn;
}
setDisabledState?(isDisabled: boolean): void {
this.disabled = isDisabled;
}
......@@ -83,9 +86,9 @@ export abstract class FormControlEditorAbstractComponent implements ControlValue
if (this.control) {
this.fieldControl.setErrors(this.control.errors);
if (this.control.invalid) {
this._updateInvalidParams();
this.fieldControl.markAsTouched();
}
this._updateInvalidParams();
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment