Skip to content

Commit

Permalink
ACS-8254 add unit test
Browse files Browse the repository at this point in the history
  • Loading branch information
DaryaBalvanovich committed Jun 21, 2024
1 parent 2907b4a commit 591489a
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 3 deletions.
15 changes: 13 additions & 2 deletions lib/core/src/lib/dialogs/dialog/dialog.component.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ import { DialogData } from './dialog-data.interface';
import { DialogSize } from './dialog.model';
import { CoreTestingModule } from '../../testing';
import { Component, DebugElement, inject } from '@angular/core';
import { Subject } from 'rxjs';

@Component({
selector: 'adf-dummy-component'
Expand All @@ -38,6 +39,8 @@ describe('DialogComponent', () => {
let cancelButton: HTMLButtonElement;
let confirmButton: HTMLButtonElement;
let dialogContainer: HTMLElement;
const mockId = 'mockId';
const mockDataOnConfirm$ = new Subject();

const data: DialogData = {
title: 'Title',
Expand Down Expand Up @@ -96,7 +99,7 @@ describe('DialogComponent', () => {
describe('confirm action', () => {
const mockButtonTitle = 'mockTitle';
beforeEach(() => {
setupBeforeEach({ ...data, confirmButtonTitle: mockButtonTitle });
setupBeforeEach({ ...data, confirmButtonTitle: mockButtonTitle, dataOnConfirm$: mockDataOnConfirm$ });
fixture.detectChanges();
});

Expand Down Expand Up @@ -124,11 +127,19 @@ describe('DialogComponent', () => {
expect(confirmButton.getAttribute('disabled')).toBeTruthy();
});

it('should close dialog', () => {
it('should close dialog and pass default value', () => {
component.onConfirm();
expect(dialogRef.close).toHaveBeenCalledWith(true);
});

it('should close dialog and pass dataOnConfirm$', () => {
mockDataOnConfirm$.next(mockId);

component.onConfirm();

expect(dialogRef.close).toHaveBeenCalledWith(mockId);
});

it('should set correct button title', () => {
expect(component.confirmButtonTitle).toEqual(mockButtonTitle);
});
Expand Down
7 changes: 6 additions & 1 deletion lib/core/src/lib/dialogs/dialog/dialog.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ export class DialogComponent implements OnDestroy {
cancelButtonTitle: string;
dialogSize: DialogSizes;
additionalActionButtons: AdditionalDialogActionButton[];
dataOnConfirm: any;

dataInjector: Injector;

Expand All @@ -68,12 +69,16 @@ export class DialogComponent implements OnDestroy {
if (data.isConfirmButtonDisabled$) {
data.isConfirmButtonDisabled$.pipe(takeUntil(this.onDestroy$)).subscribe((value) => this.isConfirmButtonDisabled$.next(value));
}

if (data.dataOnConfirm$) {
data.dataOnConfirm$.pipe(takeUntil(this.onDestroy$)).subscribe((value) => (this.dataOnConfirm = value));
}
}
}

onConfirm() {
this.isConfirmButtonDisabled$.next(true);
this.dialogRef.close(this.data.dataOnConfirm$ || true);
this.dialogRef.close(this.dataOnConfirm || true);
}

ngOnDestroy() {
Expand Down

0 comments on commit 591489a

Please sign in to comment.