diff --git a/alfa-client/libs/admin-settings/src/lib/organisationseinheit/organisationseinheit-container/organisationseinheit-container.component.html b/alfa-client/libs/admin-settings/src/lib/organisationseinheit/organisationseinheit-container/organisationseinheit-container.component.html index 0db247eb4db913930d20be531f19e78a5382f440..a8dbd91dd0c34613866a83772febff81586bb214 100644 --- a/alfa-client/libs/admin-settings/src/lib/organisationseinheit/organisationseinheit-container/organisationseinheit-container.component.html +++ b/alfa-client/libs/admin-settings/src/lib/organisationseinheit/organisationseinheit-container/organisationseinheit-container.component.html @@ -13,7 +13,7 @@ </admin-secondary-button> <admin-organisationseinheit-list - [organisationseinheitItems]="(organisationseinheitState$ | async).organisationseinheitItems" + [organisationseinheitItems]="organisationseinheitItems$ | async" (editOrganisationseinheit)="editOrganisationseinheit($event)" (deleteOrganisationseinheit)="deleteOrganisationseinheit($event)" data-test-id="organisationseinheit-list" diff --git a/alfa-client/libs/admin-settings/src/lib/organisationseinheit/organisationseinheit-container/organisationseinheit-container.component.ts b/alfa-client/libs/admin-settings/src/lib/organisationseinheit/organisationseinheit-container/organisationseinheit-container.component.ts index 6738fcfddc59c4cd913f1e95d466bd9c33f4e57b..e1dbd1bde2587b4771a774ff5ea41733b0b17acc 100644 --- a/alfa-client/libs/admin-settings/src/lib/organisationseinheit/organisationseinheit-container/organisationseinheit-container.component.ts +++ b/alfa-client/libs/admin-settings/src/lib/organisationseinheit/organisationseinheit-container/organisationseinheit-container.component.ts @@ -1,5 +1,5 @@ import { Component, OnInit, ViewChild } from '@angular/core'; -import { Organisationseinheit, OrganisationseinheitState } from '../../user/user.model'; +import { Organisationseinheit } from '../../user/user.model'; import { UserService } from '../../user/user.service'; import { Observable } from 'rxjs'; import { OrganisationseinheitFormComponent } from './organisationseinheit-form/organisationseinheit-form.component'; @@ -9,7 +9,7 @@ import { OrganisationseinheitFormComponent } from './organisationseinheit-form/o templateUrl: './organisationseinheit-container.component.html', }) export class OrganisationseinheitContainerComponent implements OnInit { - organisationseinheitState$: Observable<OrganisationseinheitState>; + organisationseinheitItems$: Observable<Organisationseinheit[]>; @ViewChild(OrganisationseinheitFormComponent) private form!: OrganisationseinheitFormComponent; @@ -17,7 +17,7 @@ export class OrganisationseinheitContainerComponent implements OnInit { constructor(private userService: UserService) {} ngOnInit(): void { - this.organisationseinheitState$ = this.userService.getOrganisationseinheitState(); + this.organisationseinheitItems$ = this.userService.getOrganisationseinheitItems(); } openDialogForNewGroup() { diff --git a/alfa-client/libs/admin-settings/src/lib/shared/more-menu/more-item-button/more-item-button.component.spec.ts b/alfa-client/libs/admin-settings/src/lib/shared/more-menu/more-item-button/more-item-button.component.spec.ts index 1ecddaba7beaa07040e635633a57f8da7cd6cf21..eb37c9e2e75a4429b4cd381b4fbe8641bc9a1b2b 100644 --- a/alfa-client/libs/admin-settings/src/lib/shared/more-menu/more-item-button/more-item-button.component.spec.ts +++ b/alfa-client/libs/admin-settings/src/lib/shared/more-menu/more-item-button/more-item-button.component.spec.ts @@ -33,7 +33,6 @@ describe('MoreItemButtonComponent', () => { }); it.each([false, true])('should use disabled "%s"', (disabled) => { - const text: string = 'test-text'; component.disabled = disabled; fixture.detectChanges(); diff --git a/alfa-client/libs/admin-settings/src/lib/user/user.service.spec.ts b/alfa-client/libs/admin-settings/src/lib/user/user.service.spec.ts index 70da66080051d7c7a391b359a33b378dccb7c0f3..f9fd8ad57e47012efa17a187485b1264636ab7cb 100644 --- a/alfa-client/libs/admin-settings/src/lib/user/user.service.spec.ts +++ b/alfa-client/libs/admin-settings/src/lib/user/user.service.spec.ts @@ -1,11 +1,15 @@ import { UserService } from './user.service'; import { UserRepository } from './user.repository.service'; import { mock, Mock, useFromMock } from '@alfa-client/test-utils'; -import { createOrganisationseinheit } from '../../../test/keycloak/keycloak'; +import { + createOrganisationseinheit, + createOrganisationseinheitState, +} from '../../../test/keycloak/keycloak'; import { firstValueFrom, lastValueFrom, Observable, of } from 'rxjs'; import { Organisationseinheit } from './user.model'; import { cold } from 'jest-marbles'; import { fakeAsync, tick } from '@angular/core/testing'; +import { singleCold } from '../../../../tech-shared/src/lib/resource/marbles'; describe('UserService', () => { let service: UserService; @@ -298,4 +302,20 @@ describe('UserService', () => { expect(tapFunction).toHaveBeenCalledWith(value); })); }); + + describe('get organisationseinheit items', () => { + it('should return items of state', () => { + const organisationseinheitItems: Organisationseinheit[] = [ + createOrganisationseinheit(), + createOrganisationseinheit(), + ]; + service.getOrganisationseinheitState = jest + .fn() + .mockReturnValue(singleCold(createOrganisationseinheitState(organisationseinheitItems))); + + const itemsObservable: Observable<Organisationseinheit[]> = + service.getOrganisationseinheitItems(); + expect(itemsObservable).toBeObservable(singleCold(organisationseinheitItems)); + }); + }); }); diff --git a/alfa-client/libs/admin-settings/src/lib/user/user.service.ts b/alfa-client/libs/admin-settings/src/lib/user/user.service.ts index bed9ae6491b4d9a0ee0c74cb72e60c933bcb0442..21b5dfc8ebefe44762cd5fc4f657a28f83ffc9f7 100644 --- a/alfa-client/libs/admin-settings/src/lib/user/user.service.ts +++ b/alfa-client/libs/admin-settings/src/lib/user/user.service.ts @@ -134,4 +134,10 @@ export class UserService { loading, }); } + + public getOrganisationseinheitItems(): Observable<Organisationseinheit[]> { + return this.getOrganisationseinheitState().pipe( + map((state: OrganisationseinheitState) => state.organisationseinheitItems), + ); + } }