/* * Copyright (C) 2022 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 { EMPTY_STRING } from '@alfa-client/tech-shared'; import { Antragsteller, Vorgang, VorgangWithEingangResource } from '@alfa-client/vorgang-shared'; import { NavigationEnd } from '@angular/router'; import { createAntragsteller, createEingang, createVorgangResource, createVorgangWithEingangResource, } from 'libs/vorgang-shared/test/vorgang'; import { getAktenzeichenText, getEmpfaenger, isVorgangSearchRoute, VORGANG_KEIN_AKTENZEICHEN_ZUGEWIESEN, } from './vorgang-util'; describe('Vorgang Util', () => { describe('getAktenzeichenText', () => { it('should return Aktenzeichen if Vorgang does contain one', () => { const vorgang: Vorgang = createVorgangResource(); const result: string = getAktenzeichenText(vorgang); expect(result).toEqual(vorgang.aktenzeichen); }); it('should return default text if Vorgang does not contain a Aktenzeichen', () => { const vorgang: Vorgang = { ...createVorgangResource(), aktenzeichen: null }; const result: string = getAktenzeichenText(vorgang); expect(result).toEqual(VORGANG_KEIN_AKTENZEICHEN_ZUGEWIESEN); }); }); describe('isSearchRoute', () => { it('should return true', () => { const searchNavigationEnd: NavigationEnd = new NavigationEnd(1, '/alle/search', ''); const result: boolean = isVorgangSearchRoute(searchNavigationEnd); expect(result).toBeTruthy(); }); it('should return false', () => { const notSearchNavigationEnd: NavigationEnd = new NavigationEnd(1, '/alle', ''); const result: boolean = isVorgangSearchRoute(notSearchNavigationEnd); expect(result).toBeFalsy(); }); }); describe('getEmpfaenger', () => { it('should return nachname only if exists', () => { const antragsteller: Antragsteller = { ...createAntragsteller(), vorname: undefined }; const vorgangWithEingangResource: VorgangWithEingangResource = createWithAntragsteller(antragsteller); const empfaenger: string = getEmpfaenger(vorgangWithEingangResource); expect(empfaenger).toEqual(antragsteller.nachname); }); it('should return vorname only if exists', () => { const antragsteller: Antragsteller = { ...createAntragsteller(), nachname: undefined }; const vorgangWithEingangResource: VorgangWithEingangResource = createWithAntragsteller(antragsteller); const empfaenger: string = getEmpfaenger(vorgangWithEingangResource); expect(empfaenger).toEqual(antragsteller.vorname); }); it('should return name and vorname if exists', () => { const vorgangWithEingangResource: VorgangWithEingangResource = createVorgangWithEingangResource(); const empfaenger: string = getEmpfaenger(vorgangWithEingangResource); expect(empfaenger).toEqual( `${vorgangWithEingangResource.eingang.antragsteller.vorname} ${vorgangWithEingangResource.eingang.antragsteller.nachname}`, ); }); it('should return empty string if none exists', () => { const antragsteller: Antragsteller = { ...createAntragsteller(), nachname: undefined, vorname: undefined, }; const vorgangWithEingangResource: VorgangWithEingangResource = createWithAntragsteller(antragsteller); const empfaenger: string = getEmpfaenger(vorgangWithEingangResource); expect(empfaenger).toEqual(EMPTY_STRING); }); function createWithAntragsteller(antragsteller: Antragsteller): VorgangWithEingangResource { return { ...createVorgangWithEingangResource(), eingang: { ...createEingang(), antragsteller }, }; } }); });