/* * Copyright (C) 2023 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 { HasLinkPipe } from '@alfa-client/tech-shared'; import { mock } from '@alfa-client/test-utils'; import { WiedervorlageLinkRel, WiedervorlageService } from '@alfa-client/wiedervorlage-shared'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { ButtonWithSpinnerComponent } from '@ods/component'; import { CheckCircleIconComponent } from '@ods/system'; import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test'; import { createWiedervorlageResource } from 'libs/wiedervorlage-shared/test/wiedervorlage'; import { MockComponent } from 'ng-mocks'; import { ErledigenButtonContainerComponent } from './erledigen-button-container.component'; describe('ErledigenButtonContainerComponent', () => { let component: ErledigenButtonContainerComponent; let fixture: ComponentFixture<ErledigenButtonContainerComponent>; const erledigenIconButton = getDataTestIdAttributeOf('erledigen-icon-button'); const wiedervorlageService = mock(WiedervorlageService); beforeEach(async () => { await TestBed.configureTestingModule({ declarations: [ ErledigenButtonContainerComponent, HasLinkPipe, MockComponent(ButtonWithSpinnerComponent), MockComponent(CheckCircleIconComponent), ], providers: [ { provide: WiedervorlageService, useValue: wiedervorlageService, }, ], }).compileComponents(); }); beforeEach(() => { fixture = TestBed.createComponent(ErledigenButtonContainerComponent); component = fixture.componentInstance; fixture.detectChanges(); }); it('should create', () => { expect(component).toBeTruthy(); }); describe('Erledigen Button', () => { it('should be hidden', () => { const button = fixture.nativeElement.querySelector(erledigenIconButton); expect(button).not.toBeInstanceOf(HTMLElement); }); it('should be visible', () => { component.wiedervorlage = createWiedervorlageResource([WiedervorlageLinkRel.ERLEDIGEN]); fixture.detectChanges(); const button = fixture.nativeElement.querySelector(erledigenIconButton); expect(button).toBeInstanceOf(HTMLElement); }); }); describe('erledigen', () => { it('should call service', () => { component.erledigen(); expect(wiedervorlageService.erledigen).toHaveBeenCalled(); }); }); });