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 033803720354c36ca1b2fa9a84b810e35697869f..0c9700bd02d85554970bdcad3706bd6f808c8e3b 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 @@ -24,6 +24,7 @@ import { convertForDataTest, ConvertForDataTestPipe, + createEmptyStateResource, EnumToLabelPipe, HasLinkPipe, ToResourceUriPipe, @@ -53,6 +54,7 @@ import { RouterTestingModule } from '@angular/router/testing'; import { getDataTestClassOf, getDataTestIdOf } from 'libs/tech-shared/test/data-test'; import { createVorgangResource } from 'libs/vorgang-shared/test/vorgang'; import { MockComponent, MockModule } from 'ng-mocks'; +import { of } from 'rxjs'; import { VorgangBescheidStatusComponent } from './vorgang-bescheid-status/vorgang-bescheid-status.component'; import { VorgangCreatedAtComponent } from './vorgang-created-at/vorgang-created-at.component'; import { VorgangListItemComponent } from './vorgang-list-item.component'; @@ -129,8 +131,13 @@ describe('VorgangListItemComponent', () => { }); describe('user profile', () => { + beforeEach(() => { + component.userProfileService.getAssignedUserProfile = jest + .fn() + .mockReturnValue(of(createEmptyStateResource())); + }); + it('should not get profile if vorgang has no "assigned to" link', () => { - component.userProfileService.getAssignedUserProfile = jest.fn(); component.vorgang = createVorgangResource(); component.ngOnInit(); @@ -139,9 +146,6 @@ describe('VorgangListItemComponent', () => { }); it('should get profile', () => { - component.userProfileService.getAssignedUserProfile = jest - .fn() - .mockReturnValue({ subscribe: jest.fn() }); component.vorgang = createVorgangResource([VorgangHeaderLinkRel.ASSIGNED_TO]); component.ngOnInit(); 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 3743fbda3476af9f9cf5bbd685714d1ac63726d9..b695b0b3740025faa936742b5e531aa68997b44d 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 @@ -26,6 +26,7 @@ import { EnumToLabelPipe, formatFullDateWithTimeWithoutSeconds, formatToPrettyDate, + isNotNull, StateResource, } from '@alfa-client/tech-shared'; import { @@ -42,6 +43,7 @@ import { getAktenzeichenText } from '@alfa-client/vorgang-shared-ui'; import { Component, Input, OnInit } from '@angular/core'; import { hasLink } from '@ngxp/rest'; import { isNil } from 'lodash-es'; +import { first } from 'rxjs'; @Component({ selector: 'alfa-vorgang-list-item', @@ -62,6 +64,7 @@ export class VorgangListItemComponent implements OnInit { if (hasLink(this.vorgang, VorgangHeaderLinkRel.ASSIGNED_TO)) { this.userProfileService .getAssignedUserProfile(this.vorgang, VorgangHeaderLinkRel.ASSIGNED_TO) + .pipe(first(isNotNull)) .subscribe((userProfileStateResource: StateResource<UserProfileResource>) => { this.userProfile = userProfileStateResource; });