From 72b1c6f452385ee7a49d97cd7a0d7b08d8ae3d6c Mon Sep 17 00:00:00 2001 From: "Zickermann, Jan" <jan.zickermann@dataport.de> Date: Tue, 26 Mar 2024 16:05:23 +0100 Subject: [PATCH] OZG-4995 Test more-item-button --- .../more-item-button.component.spec.ts | 33 ++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) 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 17e297333e..1ecddaba7b 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 @@ -1,10 +1,13 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { MoreItemButtonComponent } from './more-item-button.component'; +import { dispatchEventFromFixture, getElementFromFixture } from '@alfa-client/test-utils'; -describe('FlatButtonComponent', () => { +describe('MoreItemButtonComponent', () => { let component: MoreItemButtonComponent; let fixture: ComponentFixture<MoreItemButtonComponent>; + const buttonSelector: string = 'button'; + beforeEach(async () => { await TestBed.configureTestingModule({ declarations: [MoreItemButtonComponent], @@ -18,4 +21,32 @@ describe('FlatButtonComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); + + it('should show label', () => { + const text: string = 'test-text'; + component.label = text; + + fixture.detectChanges(); + + const buttonElement: HTMLButtonElement = getElementFromFixture(fixture, buttonSelector); + expect(buttonElement.textContent.trim()).toEqual(text); + }); + + it.each([false, true])('should use disabled "%s"', (disabled) => { + const text: string = 'test-text'; + component.disabled = disabled; + + fixture.detectChanges(); + + const buttonElement: HTMLButtonElement = getElementFromFixture(fixture, buttonSelector); + expect(buttonElement.disabled).toBe(disabled); + }); + + it('should emit clickEmitter', () => { + component.clickEmitter.emit = jest.fn(); + + dispatchEventFromFixture(fixture, buttonSelector, 'click'); + + expect(component.clickEmitter.emit).toHaveBeenCalled(); + }); }); -- GitLab