Select Git revision
settings.util.spec.ts
settings.util.spec.ts 2.31 KiB
/*
* Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
* Ministerpräsidenten des Landes Schleswig-Holstein
* Staatskanzlei
* Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
*
* Lizenziert unter der EUPL, Version 1.2 oder - sobald
* diese von der Europäischen Kommission genehmigt wurden -
* Folgeversionen der EUPL ("Lizenz");
* Sie dürfen dieses Werk ausschließlich gemäß
* dieser Lizenz nutzen.
* Eine Kopie der Lizenz finden Sie hier:
*
* https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
*
* Sofern nicht durch anwendbare Rechtsvorschriften
* gefordert oder in schriftlicher Form vereinbart, wird
* die unter der Lizenz verbreitete Software "so wie sie
* ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
* ausdrücklich oder stillschweigend - verbreitet.
* Die sprachspezifischen Genehmigungen und Beschränkungen
* unter der Lizenz sind dem Lizenztext zu entnehmen.
*/
import { createEmptyStateResource, createStateResource, StateResource } from '@alfa-client/tech-shared';
import { Resource } from '@ngxp/rest';
import { createFilledSettingsListResource, createSettingItemResource } from '../../test/settings';
import { SettingItemResource, SettingListResource, SettingName } from './settings.model';
import { getSettingItem } from './settings.util';
describe('get setting resource', () => {
const settingName: SettingName = <SettingName>'DUMMY';
it('should return matching setting resource as state resource if exists', () => {
const settingItemResource: SettingItemResource = { ...createSettingItemResource(), name: settingName };
const settingsListResource: StateResource<SettingListResource> = createStateResource(
createFilledSettingsListResource([settingItemResource]),
);
const stateResource: StateResource<Resource> = getSettingItem(settingsListResource, settingName);
expect(stateResource.resource).toEqual(settingItemResource);
});
it('should return empty state resource if no matching resource exists', () => {
const settingsListResource: StateResource<SettingListResource> = createStateResource(createFilledSettingsListResource([]));
const stateResource: StateResource<Resource> = getSettingItem(settingsListResource, settingName);
expect(stateResource).toEqual(createEmptyStateResource());
});
});