diff --git a/alfa-client/apps/alfa-e2e/docker-compose.yml b/alfa-client/apps/alfa-e2e/docker-compose.yml index c1084ee33bd694659129af4a90e59dc5d1b0c288..e541a7eef1c009fcd890726f87fb35cb11b50868 100644 --- a/alfa-client/apps/alfa-e2e/docker-compose.yml +++ b/alfa-client/apps/alfa-e2e/docker-compose.yml @@ -211,10 +211,7 @@ services: - 7080:8080 - 7081:8081 healthcheck: - test: [ - 'CMD-SHELL', - "wget --spider localhost:8081/version", - ] + test: ['CMD-SHELL', 'wget --spider localhost:8081/version'] interval: 5s timeout: 5s retries: 5 @@ -228,4 +225,4 @@ services: curl -X POST http://smocker:8081/mocks -H 'Content-Type: application/x-yaml' --data-binary @/mocks/mocks.yaml" depends_on: smocker: - condition: service_healthy \ No newline at end of file + condition: service_healthy diff --git a/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-zusammenarbeit.e2e.component.ts b/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-zusammenarbeit.e2e.component.ts index 9433275b79fafd874af6f7fbef835e5ad2deb76f..9197f6bc89b181b3cfb5851d03d86083b60704ed 100644 --- a/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-zusammenarbeit.e2e.component.ts +++ b/alfa-client/apps/alfa-e2e/src/components/vorgang/vorgang-zusammenarbeit.e2e.component.ts @@ -1,4 +1,4 @@ -import { enterWith } from '../../support/cypress.util'; +import { contains, enterWith, haveValue } from '../../support/cypress.util'; export class VorgangZusammenarbeitE2EComponent { private readonly anfrageButton: string = 'anfrage-erstellen-button'; @@ -7,6 +7,12 @@ export class VorgangZusammenarbeitE2EComponent { private readonly messageText: string = 'Nachricht-textarea'; private readonly sendButton: string = 'collaboration-request-submit-button'; private readonly cancelButton: string = 'collaboration-request-cancel-button'; + private readonly searchText: string = 'instant_search-text-input'; + private readonly closeSearchButton: string = 'close-search-dialog'; + private readonly clearSearchButton: string = 'clear-instant-search'; + private readonly searchEntry: string = 'item-button'; + private readonly orgaAddress: string = 'organisations-einheit-in-collaboration'; + private readonly anfrageResult: string = 'collaboration-request-result'; public getAnfrageButton(): Cypress.Chainable<JQuery<HTMLElement>> { return cy.getTestElement(this.anfrageButton); @@ -64,4 +70,60 @@ export class VorgangZusammenarbeitE2EComponent { public cancelAnfrage(): void { this.getCancelButton().click(); } + + public getCloseSearchButton(): Cypress.Chainable<JQuery<HTMLElement>> { + return cy.getTestElement(this.closeSearchButton); + } + + public closeSearch(): void { + this.getCloseSearchButton().click(); + } + + public getSearchText(): Cypress.Chainable<JQuery<HTMLElement>> { + return cy.getTestElement(this.searchText); + } + + public hasSearchText(text: string): void { + haveValue(this.getSearchText(), text); + } + + public enterSearchInput(text: string): void { + this.getSearchText().clear().type(text); + } + + public getClearSearchButton(): Cypress.Chainable<JQuery<HTMLElement>> { + return cy.getTestElement(this.clearSearchButton); + } + + public clearSearch(): void { + this.getClearSearchButton().click(); + } + + public countSearchEntries(): Cypress.Chainable<number> { + return cy.getTestElement(this.searchEntry).then((entries) => { + return Cypress.$(entries).length; + }); + } + + public expectNumberOfEntriesToBe(entries: number): void { + this.countSearchEntries().then((count) => { + expect(count).to.equal(entries); + }); + } + + public clickSearchEntry(index: number): void { + cy.getTestElement(this.searchEntry).eq(index).click(); + } + + public addressContains(address: string): void { + contains(cy.getTestElement(this.orgaAddress), address); + } + + public getAnfrageResult(): Cypress.Chainable<JQuery<HTMLElement>> { + return cy.getTestElement(this.anfrageResult); + } + + public anfrageResultContains(anfrage: string): void { + contains(this.getAnfrageResult(), anfrage); + } } diff --git a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-list/vorgang-list-ungelesen.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-list/vorgang-list-ungelesen.cy.ts index 323803e5693ea60d476d70aff45717143b624cc4..f81145752792b75c1f19e7169f42dbc0a9c5e54c 100644 --- a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-list/vorgang-list-ungelesen.cy.ts +++ b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-list/vorgang-list-ungelesen.cy.ts @@ -32,7 +32,7 @@ import { objectIds, } from '../../../support/vorgang-util'; -describe('Ungelesene Nachrichten', () => { +describe('VorgangList Ungelesene Nachrichten', () => { const mainPage: MainPage = new MainPage(); const vorgangList: VorgangListE2EComponent = mainPage.getVorgangList(); const vorgangPage: VorgangPage = new VorgangPage(); diff --git a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-zusammenarbeit/vorgang-zusammenarbeit-anfragen.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-zusammenarbeit/vorgang-zusammenarbeit-anfragen.cy.ts index e02c7bed2c4080d6b8fa7d227f826722c67699ce..ff47d4f57c44947ca091adfd2b7075fa92013942 100644 --- a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-zusammenarbeit/vorgang-zusammenarbeit-anfragen.cy.ts +++ b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-zusammenarbeit/vorgang-zusammenarbeit-anfragen.cy.ts @@ -1,14 +1,15 @@ 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 { VorgangZusammenarbeitE2EComponent } from 'apps/alfa-e2e/src/components/vorgang/vorgang-zusammenarbeit.e2e.component'; -import { VorgangE2E, VorgangStatusE2E } from 'apps/alfa-e2e/src/model/vorgang'; +import { VorgangE2E, VorgangMessagesE2E, VorgangStatusE2E } from 'apps/alfa-e2e/src/model/vorgang'; import 'cypress-real-events/support'; import { VorgangListE2EComponent } from '../../../components/vorgang/vorgang-list.e2e.component'; 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 { contains, exist, notExist } from '../../../support/cypress.util'; import { initUsermanagerUsers, loginAsSabine } from '../../../support/user-util'; import { buildVorgang, initVorgaenge, objectIds } from '../../../support/vorgang-util'; @@ -30,6 +31,9 @@ describe('Vorgang Zusammenarbeit anfragen', () => { const titleText: string = 'Dies ist ein Test-Titel !"§$%&'; const messageText: string = 'Sehr geehrter Tester\n\n Dies ist ein !"§$%& Test\n zum Testen der Nachricht.\n\n\n\nhier sollte eine \nScrollbar\nangezeigt\nwerden!\n\nMfG!'; + const stelleSearch1: string = 'k'; + const stelleSearch2: string = 'Kiel'; + const snackBar: SnackBarE2EComponent = mainPage.getSnackBar(); before(() => { initVorgaenge([zusammenarbeitVorgang]); @@ -76,48 +80,66 @@ describe('Vorgang Zusammenarbeit anfragen', () => { it('should open new search label for Zustaendige Stelle', () => { zusammenarbeitContainer.createAnfrage(); - //button click - //Layer wird angezeigt + zusammenarbeitContainer.searchZustaendigeStelle(); + + exist(zusammenarbeitContainer.getCloseSearchButton()); + exist(zusammenarbeitContainer.getSearchText()); }); it('should close layer on Cancel click', () => { - //click Abbrechen + zusammenarbeitContainer.closeSearch(); + + notExist(zusammenarbeitContainer.getCloseSearchButton()); + notExist(zusammenarbeitContainer.getSearchText()); + exist(zusammenarbeitContainer.getZustaendigeStelleButton()); }); - it('should show no search on entering 1 element', () => { - //1 Zeichen in Suche eingeben - //keine Vorschau + it('should delete search term on clicking X', () => { + zusammenarbeitContainer.searchZustaendigeStelle(); + zusammenarbeitContainer.enterSearchInput(stelleSearch1); + zusammenarbeitContainer.clearSearch(); + + zusammenarbeitContainer.hasSearchText(''); }); - it('should show results on entering 2 elements', () => { - //2 Zeichen in Suche eingeben - //Vorschau kontrollieren + it.skip('TODO: Setup Jenkins --- should find 2 results after entering kiel', () => { + zusammenarbeitContainer.enterSearchInput(stelleSearch2); + + zusammenarbeitContainer.expectNumberOfEntriesToBe(2); }); - it('should delete search term on clicking X', () => { - //X in Suche klicken - //Suche ist leer - //keine Vorschau + it.skip('should close layer after click on search entry', () => { + zusammenarbeitContainer.clickSearchEntry(0); + + exist(zusammenarbeitContainer.getSendButton()); + notExist(zusammenarbeitContainer.getSearchText()); }); - it('should copy and paste Zustaendige Stelle after selection', () => { - //click Suchergebnis - //Adresse und Name wird übernommen - //Layer ist geschlossen + it.skip('should show part of address in Zufi header', () => { + zusammenarbeitContainer.addressContains(stelleSearch2); }); - it('should be able to enter title and message, and show scrollbar on long text', () => { + it.skip('should be able to enter title and message, and show scrollbar on long text', () => { zusammenarbeitContainer.enterTitel(titleText); zusammenarbeitContainer.enterMessage(messageText); zusammenarbeitContainer.messageScrollbarIsPresent(); }); - it('should show title and message read-only and remove buttons after sending', () => { - //Button klicken - //Titel und Datum werden angezeigt - //Nachricht wird angezeigt - //Buttons werden ausgeblendet + it.skip('should show title and message, show snackbar, and remove buttons after sending', () => { + zusammenarbeitContainer.sendAnfrage(); + + notExist(zusammenarbeitContainer.getSendButton()); + notExist(zusammenarbeitContainer.getCancelButton()); + + zusammenarbeitContainer.anfrageResultContains(titleText); + + //TODO: Zeilenumbrüche (OZG-6682) + //zusammenarbeitContainer.anfrageResultContains(messageText); + + //TODO: Datum wird angezeigt (OZG-6675) + + contains(snackBar.getMessage(), VorgangMessagesE2E.ZUARBEIT_ANGEFRAGT); }); }); }); diff --git a/alfa-client/apps/alfa-e2e/src/fixtures/argocd/by-ea-dev.yaml b/alfa-client/apps/alfa-e2e/src/fixtures/argocd/by-ea-dev.yaml index 0c58eb6aae1455fb57339185833c48b0e3c1eee9..58e0660e0f37cba42cc6ab8ed1b0c824d5e3902d 100644 --- a/alfa-client/apps/alfa-e2e/src/fixtures/argocd/by-ea-dev.yaml +++ b/alfa-client/apps/alfa-e2e/src/fixtures/argocd/by-ea-dev.yaml @@ -20,6 +20,8 @@ alfa: first_name: Emil last_name: Ansprechpartner password: 'Y9nk43yrQ_zzIPpfFU-I' + update_user: true + email: emil.ansprechpartner@ozg-sh.de client_roles: - name: alfa role: EINHEITLICHER_ANSPRECHPARTNER diff --git a/alfa-client/apps/alfa-e2e/src/model/vorgang.ts b/alfa-client/apps/alfa-e2e/src/model/vorgang.ts index 7fdbcfd62b93935aef7f35cb4a4f7fc1858c4422..472bf861d161a81067038844cd3adbcf27c02f71 100644 --- a/alfa-client/apps/alfa-e2e/src/model/vorgang.ts +++ b/alfa-client/apps/alfa-e2e/src/model/vorgang.ts @@ -157,6 +157,7 @@ export enum VorgangMessagesE2E { LOESCHEN_ANFORDERN = 'Für den Vorgang wurde eine Löschanforderung gestellt.', ENDGUELTIG_LOESCHEN = 'Der Vorgang wurde gelöscht.', WIEDERVORLAGE_BEARBEITEN_NICHT_MOEGLICH = 'Im Status "Zu löschen" ist die Bearbeitung von Wiedervorlagen nicht möglich.', + ZUARBEIT_ANGEFRAGT = 'Die Zuarbeit wurde angefragt.', } export const NO_AKTENZEICHEN: string = 'kein Aktenzeichen zugewiesen'; diff --git a/alfa-client/libs/admin/settings/src/lib/postfach/postfach-container/postfach-form/postfach-signatur/postfach-signatur.component.html b/alfa-client/libs/admin/settings/src/lib/postfach/postfach-container/postfach-form/postfach-signatur/postfach-signatur.component.html index a0d251c9e393b6755b2705705da3e049a2271e55..91f5982d6a2e93f317b7a301d4177ec9c59482df 100644 --- a/alfa-client/libs/admin/settings/src/lib/postfach/postfach-container/postfach-form/postfach-signatur/postfach-signatur.component.html +++ b/alfa-client/libs/admin/settings/src/lib/postfach/postfach-container/postfach-form/postfach-signatur/postfach-signatur.component.html @@ -1,4 +1,4 @@ -<form [formGroup]="formService.form"> +<form [formGroup]="formService.form" class="max-w-[960px]"> <h2 class="heading-2">Signatur</h2> <p id="signatur-desc"> Diese Signatur wird bei allen Nachrichten an den Antragsteller angezeigt. @@ -6,8 +6,9 @@ <ods-textarea-editor [formControlName]="formServiceClass.SIGNATUR_FIELD" [isResizable]="false" + [showLabel]="false" data-test-id="signatur-text" - label="" + label="signature" rows="6" class="w-full" aria-describedby="signatur-desc" diff --git a/alfa-client/libs/admin/settings/src/lib/postfach/postfach.service.spec.ts b/alfa-client/libs/admin/settings/src/lib/postfach/postfach.service.spec.ts index 0d8fd6b5eb2d724ff31293252d1b3d10a2c8937b..d787449be4be3621a443ff9cd4a9824613fbc167 100644 --- a/alfa-client/libs/admin/settings/src/lib/postfach/postfach.service.spec.ts +++ b/alfa-client/libs/admin/settings/src/lib/postfach/postfach.service.spec.ts @@ -91,7 +91,7 @@ describe('PostfachService', () => { tick(); expect(snackbarService.showInfo).toHaveBeenCalledWith( - 'Die Signatur wird erfolgreich gespeichert.', + 'Die Signatur wurde erfolgreich gespeichert.', ); })); }); diff --git a/alfa-client/libs/admin/settings/src/lib/postfach/postfach.service.ts b/alfa-client/libs/admin/settings/src/lib/postfach/postfach.service.ts index 2fc6ec706f41b554a0a9812034f45cb596edf9f8..1ff867073051235829114ca5cba89d9c227128ad 100644 --- a/alfa-client/libs/admin/settings/src/lib/postfach/postfach.service.ts +++ b/alfa-client/libs/admin/settings/src/lib/postfach/postfach.service.ts @@ -28,7 +28,7 @@ export class PostfachService { private showInfoAfterSave(stateResource: StateResource<PostfachResource>) { if (!stateResource.loading) { - this.snackbarService.showInfo('Die Signatur wird erfolgreich gespeichert.'); + this.snackbarService.showInfo('Die Signatur wurde erfolgreich gespeichert.'); } } diff --git a/alfa-client/libs/design-component/src/lib/form/text-editor/text-editor.component.html b/alfa-client/libs/design-component/src/lib/form/text-editor/text-editor.component.html index 9252326a5bdcc9d9c25ec164981bd0e24915bafa..f8858992626b2be8a4dc43e07f7947e3b0a84735 100644 --- a/alfa-client/libs/design-component/src/lib/form/text-editor/text-editor.component.html +++ b/alfa-client/libs/design-component/src/lib/form/text-editor/text-editor.component.html @@ -7,6 +7,7 @@ [attr.data-test-id]="(label | convertForDataTest) + '-text-editor'" [required]="isRequired" [focus]="focus" + [showLabel]="showLabel" > <ods-validation-error error diff --git a/alfa-client/libs/design-component/src/lib/form/text-editor/text-editor.component.ts b/alfa-client/libs/design-component/src/lib/form/text-editor/text-editor.component.ts index c40849cf31e2279a3727527898213567bab07c4c..d6a19c8b70cac1f11b73038b321b1fc79fa2af58 100644 --- a/alfa-client/libs/design-component/src/lib/form/text-editor/text-editor.component.ts +++ b/alfa-client/libs/design-component/src/lib/form/text-editor/text-editor.component.ts @@ -24,6 +24,7 @@ export class TextEditorComponent extends FormControlEditorAbstractComponent { @Input() placeholder: string = ''; @Input() isRequired: boolean = false; @Input() focus: boolean = false; + @Input() showLabel: boolean = true; get variant(): string { return this.invalidParams.length > 0 ? 'error' : 'default'; diff --git a/alfa-client/libs/design-component/src/lib/form/textarea-editor/textarea-editor.component.html b/alfa-client/libs/design-component/src/lib/form/textarea-editor/textarea-editor.component.html index baa159622243b8c03783314ee0f27e17cf6c78a4..22a5c192844d111ff69b4ed90f1be4b7108fcee8 100644 --- a/alfa-client/libs/design-component/src/lib/form/textarea-editor/textarea-editor.component.html +++ b/alfa-client/libs/design-component/src/lib/form/textarea-editor/textarea-editor.component.html @@ -8,6 +8,7 @@ [required]="isRequired" [focus]="focus" [isResizable]="isResizable" + [showLabel]="showLabel" > <ods-validation-error error diff --git a/alfa-client/libs/design-component/src/lib/form/textarea-editor/textarea-editor.component.ts b/alfa-client/libs/design-component/src/lib/form/textarea-editor/textarea-editor.component.ts index 5dea452149b2facd76f03b209835786e7af4b970..ef615ae42c6b31689a63ce85d22613537190588e 100644 --- a/alfa-client/libs/design-component/src/lib/form/textarea-editor/textarea-editor.component.ts +++ b/alfa-client/libs/design-component/src/lib/form/textarea-editor/textarea-editor.component.ts @@ -25,6 +25,7 @@ export class TextareaEditorComponent extends FormControlEditorAbstractComponent @Input() isRequired: boolean = false; @Input() focus: boolean = false; @Input() isResizable: boolean = true; + @Input() showLabel: boolean = true; get variant(): string { return this.invalidParams.length > 0 ? 'error' : 'default'; diff --git a/alfa-client/libs/design-system/src/lib/form/textarea/textarea.component.ts b/alfa-client/libs/design-system/src/lib/form/textarea/textarea.component.ts index 5c418556063b84c751fd274fbd901f18cd3eb4a3..cc91e16b2345a9f1a578001c60b7b20655ed5598 100644 --- a/alfa-client/libs/design-system/src/lib/form/textarea/textarea.component.ts +++ b/alfa-client/libs/design-system/src/lib/form/textarea/textarea.component.ts @@ -31,7 +31,7 @@ type TextareaVariants = VariantProps<typeof textareaVariants>; imports: [CommonModule, ReactiveFormsModule, TechSharedModule], template: ` <div class="mt-2"> - <label [for]="id" class="text-md mb-2 block font-medium text-text"> + <label *ngIf="showLabel" [for]="id" class="text-md mb-2 block font-medium text-text"> {{ inputLabel }}<ng-container *ngIf="required"><i aria-hidden="true">*</i></ng-container> </label> <textarea @@ -65,6 +65,7 @@ export class TextareaComponent { @Input() fieldControl: FormControl = new FormControl(EMPTY_STRING); @Input() required: boolean = false; @Input() isResizable: boolean = true; + @Input() showLabel: boolean = true; @Input() set focus(value: boolean) { if (value && this.textAreaElement) { diff --git a/alfa-client/libs/design-system/src/lib/navbar/nav-item/nav-item.component.spec.ts b/alfa-client/libs/design-system/src/lib/navbar/nav-item/nav-item.component.spec.ts index f33524b795e39fff7585c3829d8094659429afa2..71b3e7c98f8e23d30f056ef4ad65544794294196 100644 --- a/alfa-client/libs/design-system/src/lib/navbar/nav-item/nav-item.component.spec.ts +++ b/alfa-client/libs/design-system/src/lib/navbar/nav-item/nav-item.component.spec.ts @@ -61,4 +61,12 @@ describe('NavItemComponent', () => { }); }); }); + + describe('template', () => { + describe('host element role attribute', () => { + it('should be "menuitem"', () => { + expect(fixture.nativeElement.getAttribute('role')).toBe('menuitem'); + }); + }); + }); }); diff --git a/alfa-client/libs/design-system/src/lib/navbar/nav-item/nav-item.component.ts b/alfa-client/libs/design-system/src/lib/navbar/nav-item/nav-item.component.ts index d5f54907fe995fa082505d3449a236d89b6f4ecb..14acc1a1b2c6f3c6ca800bc30710d5a7adf48cdc 100644 --- a/alfa-client/libs/design-system/src/lib/navbar/nav-item/nav-item.component.ts +++ b/alfa-client/libs/design-system/src/lib/navbar/nav-item/nav-item.component.ts @@ -1,5 +1,5 @@ import { CommonModule } from '@angular/common'; -import { Component, Input } from '@angular/core'; +import { Component, HostBinding, Input } from '@angular/core'; import { RouterLink, RouterLinkActive } from '@angular/router'; @Component({ @@ -14,7 +14,6 @@ import { RouterLink, RouterLinkActive } from '@angular/router'; 'border border-transparent hover:border-primary', 'outline-2 outline-offset-4 outline-focus focus-visible:border-background-200', ]" - role="menuitem" [attr.data-test-id]="'link-to-' + to" > <ng-content select="[icon]" /> @@ -24,4 +23,6 @@ import { RouterLink, RouterLinkActive } from '@angular/router'; export class NavItemComponent { @Input({ required: true }) caption!: string; @Input() to: string; + + @HostBinding('attr.role') role = 'menuitem'; } diff --git a/alfa-client/libs/design-system/src/lib/popup/popup/popup.component.ts b/alfa-client/libs/design-system/src/lib/popup/popup/popup.component.ts index 171397997f1bccc57c87c4a59b014dbd2aa6ed6a..60adf093640b07510296fab35c0a6e4fbb3650e9 100644 --- a/alfa-client/libs/design-system/src/lib/popup/popup/popup.component.ts +++ b/alfa-client/libs/design-system/src/lib/popup/popup/popup.component.ts @@ -23,7 +23,7 @@ import { twMerge } from 'tailwind-merge'; *ngIf="isPopupOpen" class="absolute max-h-120 min-w-44 max-w-80 animate-fadeIn overflow-y-auto rounded shadow-lg shadow-grayborder focus:outline-none" [ngClass]="alignTo === 'left' ? 'right-0' : 'left-0'" - role="dialog" + role="menu" aria-modal="true" tabIndex="-1" cdkTrapFocus diff --git a/alfa-client/libs/postfach/src/lib/postfach-mail-form/postfach-mail-form.component.spec.ts b/alfa-client/libs/postfach/src/lib/postfach-mail-form/postfach-mail-form.component.spec.ts index 40d4bc90cda99e87336563376dd405d63298d575..3f25e40be126c663b985d8591d829789743a0b99 100644 --- a/alfa-client/libs/postfach/src/lib/postfach-mail-form/postfach-mail-form.component.spec.ts +++ b/alfa-client/libs/postfach/src/lib/postfach-mail-form/postfach-mail-form.component.spec.ts @@ -21,12 +21,6 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { FormBuilder, ReactiveFormsModule } from '@angular/forms'; -import { MAT_DIALOG_DATA } from '@angular/material/dialog'; -import { MatFormFieldModule } from '@angular/material/form-field'; -import { MatInputModule } from '@angular/material/input'; -import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { PostfachService } from '@alfa-client/postfach-shared'; import { createStateResource } from '@alfa-client/tech-shared'; import { Mock, mock, useFromMock } from '@alfa-client/test-utils'; @@ -39,8 +33,14 @@ import { TextAreaEditorComponent, TextEditorComponent, } from '@alfa-client/ui'; +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { FormBuilder, ReactiveFormsModule } from '@angular/forms'; +import { MAT_DIALOG_DATA } from '@angular/material/dialog'; +import { MatFormFieldModule } from '@angular/material/form-field'; +import { MatInputModule } from '@angular/material/input'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { createCommandResource } from 'libs/command-shared/test/command'; -import { PostfachTestFactory } from 'libs/postfach-shared/test/postfach'; +import { PostfachTestFactory, createPostfachSettings } from 'libs/postfach-shared/test/postfach'; import { MockComponent } from 'ng-mocks'; import { of } from 'rxjs'; import { PostfachMailFormComponent } from './postfach-mail-form.component'; @@ -54,7 +54,10 @@ describe('PostfachMailFormComponent', () => { let component: PostfachMailFormComponent; let fixture: ComponentFixture<PostfachMailFormComponent>; - const postfachService: Mock<PostfachService> = mock(PostfachService); + const postfachService: Mock<PostfachService> = { + ...mock(PostfachService), + getSettings: jest.fn().mockReturnValue(of(createPostfachSettings())), + }; const formService: PostfachMailFormservice = new PostfachMailFormservice( new FormBuilder(), useFromMock(postfachService), diff --git a/alfa-client/package-lock.json b/alfa-client/package-lock.json index b551b3e5a341ab04c060b67cf3b84a262f0e74d4..50747ff0743d33211bbf4255b761c6b5f013f61d 100644 --- a/alfa-client/package-lock.json +++ b/alfa-client/package-lock.json @@ -1,12 +1,12 @@ { "name": "alfa", - "version": "1.0.0-SNAPSHOT", + "version": "1.1.0-SNAPSHOT", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "alfa", - "version": "1.0.0-SNAPSHOT", + "version": "1.1.0-SNAPSHOT", "license": "MIT", "dependencies": { "@angular/animations": "17.3.10", diff --git a/alfa-client/package.json b/alfa-client/package.json index e1523dd25e7b7786a77adf6d0fe52760d69516fe..4c807787822c57a9f17c83def17fd5bc69a31235 100644 --- a/alfa-client/package.json +++ b/alfa-client/package.json @@ -1,6 +1,6 @@ { "name": "alfa", - "version": "1.0.0-SNAPSHOT", + "version": "1.1.0-SNAPSHOT", "license": "MIT", "scripts": { "start": "nx run alfa:serve --port 4300 --disable-host-check", diff --git a/alfa-client/pom.xml b/alfa-client/pom.xml index 576dd79ddd4c0ab6fb8adbf86fcb0e631b3aab55..8e8395494a1b55f9399a9d7c997e6697e19ebb14 100644 --- a/alfa-client/pom.xml +++ b/alfa-client/pom.xml @@ -29,7 +29,7 @@ <parent> <groupId>de.ozgcloud.alfa</groupId> <artifactId>alfa</artifactId> - <version>2.13.0-SNAPSHOT</version> + <version>2.14.0-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> diff --git a/alfa-server/pom.xml b/alfa-server/pom.xml index 8310c3d2875b5bd9052d1a8704a958ecb3957786..2e9313095672888c2e1a95fedb74f716eb0dd417 100644 --- a/alfa-server/pom.xml +++ b/alfa-server/pom.xml @@ -5,7 +5,7 @@ <parent> <groupId>de.ozgcloud.alfa</groupId> <artifactId>alfa</artifactId> - <version>2.13.0-SNAPSHOT</version> + <version>2.14.0-SNAPSHOT</version> </parent> <artifactId>alfa-server</artifactId> @@ -131,4 +131,4 @@ </plugins> </build> -</project> \ No newline at end of file +</project> diff --git a/alfa-service/pom.xml b/alfa-service/pom.xml index 86daeeea0530386f5a9b708e593c5b46362e622d..e7ae7b5424b45b6d10d3e854e64ad139859a03ef 100644 --- a/alfa-service/pom.xml +++ b/alfa-service/pom.xml @@ -24,16 +24,14 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>de.ozgcloud.alfa</groupId> <artifactId>alfa</artifactId> - <version>2.13.0-SNAPSHOT</version> + <version>2.14.0-SNAPSHOT</version> </parent> <artifactId>alfa-service</artifactId> @@ -239,4 +237,4 @@ </plugins> </build> -</project> \ No newline at end of file +</project> diff --git a/alfa-xdomea/pom.xml b/alfa-xdomea/pom.xml index 4bd9cb9cc3356d4ff4484bfd957150d964526142..ce932acc53706fb904954f17bc19ea7c52c29b22 100644 --- a/alfa-xdomea/pom.xml +++ b/alfa-xdomea/pom.xml @@ -31,7 +31,7 @@ <parent> <groupId>de.ozgcloud.alfa</groupId> <artifactId>alfa</artifactId> - <version>2.13.0-SNAPSHOT</version> + <version>2.14.0-SNAPSHOT</version> </parent> <artifactId>alfa-xdomea</artifactId> diff --git a/pom.xml b/pom.xml index 5c3018e62bf6370472aba1576215d06d0e43067d..e05df380d5db04e9031bf6d4d0c59d49253bc3d9 100644 --- a/pom.xml +++ b/pom.xml @@ -24,9 +24,7 @@ unter der Lizenz sind dem Lizenztext zu entnehmen. --> -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -37,7 +35,7 @@ <groupId>de.ozgcloud.alfa</groupId> <artifactId>alfa</artifactId> - <version>2.13.0-SNAPSHOT</version> + <version>2.14.0-SNAPSHOT</version> <name>Alfa Parent</name> <packaging>pom</packaging> @@ -52,11 +50,11 @@ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> - <vorgang-manager.version>2.8.0</vorgang-manager.version> - <nachrichten-manager.version>2.7.0</nachrichten-manager.version> + <vorgang-manager.version>2.13.0</vorgang-manager.version> + <nachrichten-manager.version>2.11.0</nachrichten-manager.version> <ozgcloud-common-pdf.version>3.0.1</ozgcloud-common-pdf.version> - <user-manager.version>2.2.0</user-manager.version> - <zufi-manager.version>1.2.0</zufi-manager.version> + <user-manager.version>2.8.0</user-manager.version> + <zufi-manager.version>1.3.0</zufi-manager.version> <spring-cloud-config-client.version>4.1.3</spring-cloud-config-client.version> <!-- TODO: die Version über ozgcloud-common ziehen --> @@ -179,4 +177,4 @@ <url>https://nexus.ozg-sh.de/repository/ozg-snapshots/</url> </snapshotRepository> </distributionManagement> -</project> \ No newline at end of file +</project> diff --git a/src/main/helm/templates/_helpers.tpl b/src/main/helm/templates/_helpers.tpl index a20881dd0de555971004516d03a0a3767809c394..fde4a4e14938c745ee8972e5a8c9781a7f5c0669 100644 --- a/src/main/helm/templates/_helpers.tpl +++ b/src/main/helm/templates/_helpers.tpl @@ -50,7 +50,7 @@ app.kubernetes.io/namespace: {{ include "app.namespace" . }} {{- end -}} {{- define "app.grpc_client_vorgang_manager_address" -}} -{{ printf "%s.%s:9090" ( coalesce .Values.vorgangManagerName "vorgang-manager" ) .Release.Namespace | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{ printf "dns:///%s.%s:9090" ( coalesce .Values.vorgangManagerName "vorgang-manager" ) .Release.Namespace | replace "+" "_" | trunc 63 | trimSuffix "-" }} {{- end -}} {{- define "app.grpc_client_user-manager_address" -}} diff --git a/src/test/helm/deployment_defaults_env_test.yaml b/src/test/helm/deployment_defaults_env_test.yaml index 0bf3a7adbf32e293791d0af1a2804bf7c8c4d6df..f02a3b9989743688a6baa2527e7376ca7c9945f4 100644 --- a/src/test/helm/deployment_defaults_env_test.yaml +++ b/src/test/helm/deployment_defaults_env_test.yaml @@ -48,7 +48,7 @@ tests: path: spec.template.spec.containers[0].env content: name: grpc_client_vorgang-manager_address - value: vorgang-manager.sh-helm-test:9090 + value: dns:///vorgang-manager.sh-helm-test:9090 - contains: path: spec.template.spec.containers[0].env content: diff --git a/src/test/helm/deployment_vorgang_manager_address_env_test.yaml b/src/test/helm/deployment_vorgang_manager_address_env_test.yaml index 794e933ec92b521e7664244bae38f8b5b05b6469..9c0e685c4e9256e0053ebe3b4203e392f816e271 100644 --- a/src/test/helm/deployment_vorgang_manager_address_env_test.yaml +++ b/src/test/helm/deployment_vorgang_manager_address_env_test.yaml @@ -46,4 +46,4 @@ tests: path: spec.template.spec.containers[0].env content: name: grpc_client_vorgang-manager_address - value: my-test-vorgang-manager-name.sh-helm-test:9090 + value: dns:///my-test-vorgang-manager-name.sh-helm-test:9090