diff --git a/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.html b/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.html index f6a1ebd55e0db35ad39e55888ecca1d511452bc1..696169f3474d0aacf9feb45c554a25d291b979fd 100644 --- a/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.html +++ b/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.html @@ -24,5 +24,5 @@ --> <div class="status-name text-sm" data-test-id="vorgang-status-text"> - {{ status }} + {{ status | enumToLabel: vorgangStatusLabel }} </div> diff --git a/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.spec.ts b/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.spec.ts index 15774e62da602caa5cf4f474762e6464a245dfb9..31b6f8e0de9bc3cfa18c45e1ad5860f747589982 100644 --- a/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.spec.ts +++ b/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.spec.ts @@ -21,19 +21,23 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ +import { EnumToLabelPipe } from '@alfa-client/tech-shared'; +import { VorgangResource, VorgangStatusLabel } from '@alfa-client/vorgang-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { getDataTestIdOf } from 'libs/tech-shared/test/data-test'; +import { createVorgangResource } from 'libs/vorgang-shared/test/vorgang'; import { VorgangStatusTextComponent } from './vorgang-status-text.component'; describe('VorgangStatusTextComponent', () => { let component: VorgangStatusTextComponent; let fixture: ComponentFixture<VorgangStatusTextComponent>; + const vorgang: VorgangResource = createVorgangResource(); const statusTextTestId: string = getDataTestIdOf('vorgang-status-text'); beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [VorgangStatusTextComponent], + declarations: [EnumToLabelPipe, VorgangStatusTextComponent], }).compileComponents(); }); @@ -48,11 +52,12 @@ describe('VorgangStatusTextComponent', () => { }); it('should show status text', () => { - component.status = 'Neu'; + component.status = vorgang.status; + const statusText: string = VorgangStatusLabel[vorgang.status]; fixture.detectChanges(); const statusTextElement: HTMLElement = fixture.nativeElement.querySelector(statusTextTestId); - expect(statusTextElement.innerHTML).toContain('Neu'); + expect(statusTextElement.innerHTML).toContain(statusText); }); }); diff --git a/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.ts b/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.ts index de4e772d0b94942199e6bdd381077201de758b46..a1c90fd8afdb3114a17086f359b36ee5110a4f42 100644 --- a/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.ts +++ b/alfa-client/libs/vorgang-shared-ui/src/lib/vorgang-status-text/vorgang-status-text.component.ts @@ -21,6 +21,7 @@ * Die sprachspezifischen Genehmigungen und Beschränkungen * unter der Lizenz sind dem Lizenztext zu entnehmen. */ +import { VorgangStatus, VorgangStatusLabel } from '@alfa-client/vorgang-shared'; import { Component, Input } from '@angular/core'; @Component({ @@ -29,5 +30,6 @@ import { Component, Input } from '@angular/core'; styleUrls: ['./vorgang-status-text.component.scss'], }) export class VorgangStatusTextComponent { - @Input() status: string; + @Input() status: VorgangStatus; + readonly vorgangStatusLabel = VorgangStatusLabel; } diff --git a/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.html b/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.html index d7faafb103e54a0b4abc767e586bec558d2a5982..228c9808d45c6f5b81e47b178e21cfe28e4fe01c 100644 --- a/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.html +++ b/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.html @@ -38,7 +38,7 @@ data-test-class="status-dot" ></alfa-vorgang-status-dot> <alfa-vorgang-status-text - [status]="status" + [status]="vorgang.status" data-test-class="status-text" class="status-text" ></alfa-vorgang-status-text> diff --git a/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.spec.ts b/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.spec.ts index 0c9700bd02d85554970bdcad3706bd6f808c8e3b..892fe541f8856a26fec7f3d77dad427eebb690b4 100644 --- a/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.spec.ts +++ b/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.spec.ts @@ -114,14 +114,6 @@ describe('VorgangListItemComponent', () => { }); describe('ngOnInit', () => { - it('should set status', () => { - component.getStatus = jest.fn().mockReturnValue('Test'); - - component.ngOnInit(); - - expect(component.status).toBe('Test'); - }); - it('should build aria label', () => { component.buildAriaLabel = jest.fn(); diff --git a/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.ts b/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.ts index b695b0b3740025faa936742b5e531aa68997b44d..a86e83410e370fdf599f5bc80c69b008e8ac9fbf 100644 --- a/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.ts +++ b/alfa-client/libs/vorgang/src/lib/vorgang-list-container/vorgang-list/vorgang-list-item/vorgang-list-item.component.ts @@ -56,7 +56,6 @@ export class VorgangListItemComponent implements OnInit { userProfile: StateResource<UserProfileResource> = createEmptyStateResource<UserProfileResource>(); public ariaLabel: string = ''; - public status: string = ''; constructor(public userProfileService: UserProfileService) {} @@ -69,7 +68,6 @@ export class VorgangListItemComponent implements OnInit { this.userProfile = userProfileStateResource; }); } - this.status = this.getStatus(); this.buildAriaLabel(); } @@ -80,7 +78,7 @@ export class VorgangListItemComponent implements OnInit { const approvalStatus: string = this.getApprovalText(); const createdAt: string = formatFullDateWithTimeWithoutSeconds(this.vorgang.createdAt); - this.ariaLabel = `Vorgang: ${name}, Aktenzeichen: ${aktenzeichen}, Nummer: ${nummer} Status: ${this.status} ${approvalStatus}, Eingang: ${createdAt}, Aktuell zugewiesener Nutzer: ${getUserName(this.userProfile.resource)}`; + this.ariaLabel = `Vorgang: ${name}, Aktenzeichen: ${aktenzeichen}, Nummer: ${nummer} Status: ${this.getStatus()} ${approvalStatus}, Eingang: ${createdAt}, Aktuell zugewiesener Nutzer: ${getUserName(this.userProfile.resource)}`; if ( hasLink(this.vorgang, VorgangHeaderLinkRel.WIEDERVORLAGEN) &&