Skip to content

Commit fe599af

Browse files
committed
test(date-picker): fix unit test mocks
1 parent f61358d commit fe599af

File tree

1 file changed

+25
-20
lines changed

1 file changed

+25
-20
lines changed

projects/igniteui-angular/src/lib/date-picker/date-picker.component.spec.ts

Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -483,7 +483,8 @@ describe('IgxDatePicker', () => {
483483
blur() {
484484
this.dispatchEvent('blur');
485485
}
486-
}
486+
},
487+
focus: () => {}
487488
};
488489
datePicker = new IgxDatePickerComponent(elementRef, null, overlay, mockModuleRef, mockInjector, renderer2, null);
489490
(datePicker as any).inputGroup = mockInputGroup;
@@ -495,8 +496,8 @@ describe('IgxDatePicker', () => {
495496
});
496497

497498
afterEach(() => {
498-
UIInteractions.clearOverlay();
499499
datePicker?.ngOnDestroy();
500+
UIInteractions.clearOverlay();
500501
});
501502
describe('API tests', () => {
502503
it('Should initialize and update all inputs propery', () => {
@@ -737,24 +738,26 @@ describe('IgxDatePicker', () => {
737738
}
738739
);
739740

740-
spyOnProperty(datePicker, 'collapsed', 'get').and.returnValue(false);
741+
const collapsedSpy = spyOnProperty(datePicker, 'collapsed', 'get');
742+
collapsedSpy.and.returnValue(false);
741743
datePicker.disabled = false;
742744
datePicker.open();
743745
expect(overlay.attach).not.toHaveBeenCalled();
744-
spyOnProperty(datePicker, 'collapsed', 'get').and.returnValue(true);
746+
collapsedSpy.and.returnValue(true);
745747
datePicker.disabled = true;
746748
datePicker.open();
747749
expect(overlay.attach).not.toHaveBeenCalled();
748-
spyOnProperty(datePicker, 'collapsed', 'get').and.returnValue(false);
750+
collapsedSpy.and.returnValue(false);
749751
datePicker.open();
750752
expect(overlay.attach).not.toHaveBeenCalled();
751-
spyOnProperty(datePicker, 'collapsed', 'get').and.returnValue(true);
753+
collapsedSpy.and.returnValue(true);
752754
datePicker.disabled = false;
753-
spyOnProperty(datePicker, 'isDropdown', 'get').and.returnValue(false);
755+
const isDropdownSpy = spyOnProperty(datePicker, 'isDropdown', 'get');
756+
isDropdownSpy.and.returnValue(false);
754757
datePicker.open();
755758
expect(overlay.attach).toHaveBeenCalledWith(IgxCalendarContainerComponent, baseDialogSettings, mockModuleRef);
756759
expect(overlay.show).toHaveBeenCalledWith(mockOverlayId);
757-
spyOnProperty(datePicker, 'isDropdown', 'get').and.returnValue(true);
760+
isDropdownSpy.and.returnValue(true);
758761
datePicker.open();
759762
expect(overlay.attach).toHaveBeenCalledWith(IgxCalendarContainerComponent, baseDropdownSettings, mockModuleRef);
760763
expect(overlay.show).toHaveBeenCalledWith(mockOverlayId);
@@ -780,7 +783,7 @@ describe('IgxDatePicker', () => {
780783
mockModuleRef
781784
);
782785
expect(overlay.show).toHaveBeenCalledWith(mockOverlayId);
783-
spyOnProperty(datePicker, 'isDropdown', 'get').and.returnValue(false);
786+
isDropdownSpy.and.returnValue(false);
784787
mockSettings = {
785788
closeOnEscape: false,
786789
closeOnOutsideClick: false,
@@ -793,7 +796,7 @@ describe('IgxDatePicker', () => {
793796
mockModuleRef
794797
);
795798
expect(overlay.show).toHaveBeenCalledWith(mockOverlayId);
796-
spyOnProperty(datePicker, 'isDropdown', 'get').and.returnValue(true);
799+
isDropdownSpy.and.returnValue(true);
797800
datePicker.overlaySettings = {
798801
modal: false
799802
};
@@ -818,12 +821,13 @@ describe('IgxDatePicker', () => {
818821
datePicker.ngAfterViewInit();
819822

820823
// assign overlayId
821-
spyOnProperty(datePicker, 'collapsed', 'get').and.returnValue(true);
824+
const collapsedSpy = spyOnProperty(datePicker, 'collapsed', 'get');
825+
collapsedSpy.and.returnValue(true);
822826
datePicker.open();
823827
datePicker.close();
824828
expect(overlay.hide).not.toHaveBeenCalled();
825829
expect(overlay.detach).not.toHaveBeenCalled();
826-
spyOnProperty(datePicker, 'collapsed', 'get').and.returnValue(false);
830+
collapsedSpy.and.returnValue(false);
827831
datePicker.close();
828832
expect(overlay.hide).toHaveBeenCalled();
829833
expect(overlay.hide).toHaveBeenCalledWith(mockOverlayId);
@@ -1011,12 +1015,13 @@ describe('IgxDatePicker', () => {
10111015
'date',
10121016
['getHours', 'getMinutes', 'getSeconds', 'getMilliseconds', 'getTime']
10131017
);
1014-
spyOn(mockDate2, 'getHours').and.returnValue(999);
1015-
spyOn(mockDate2, 'getMinutes').and.returnValue(999);
1016-
spyOn(mockDate2, 'getSeconds').and.returnValue(999);
1017-
spyOn(mockDate2, 'getMilliseconds').and.returnValue(999);
1018-
spyOn(mockDate2, 'getTime').and.returnValue(999);
1019-
spyOn(DateTimeUtil, 'parseIsoDate').and.callFake((val: string) => {
1018+
mockDate2.getHours.and.returnValue(999);
1019+
mockDate2.getMinutes.and.returnValue(999);
1020+
mockDate2.getSeconds.and.returnValue(999);
1021+
mockDate2.getMilliseconds.and.returnValue(999);
1022+
mockDate2.getTime.and.returnValue(999);
1023+
const parseIsoDate = spyOn(DateTimeUtil, 'parseIsoDate');
1024+
parseIsoDate.and.callFake((val: string) => {
10201025
if (val === undefined || mockDate1) {
10211026
return mockDate2;
10221027
} else {
@@ -1045,7 +1050,7 @@ describe('IgxDatePicker', () => {
10451050
expect(mockDate1.setMilliseconds).toHaveBeenCalledWith(999);
10461051
expect(datePicker.close).toHaveBeenCalled();
10471052

1048-
spyOn(DateTimeUtil, 'parseIsoDate').and.callFake(init);
1053+
parseIsoDate.and.callFake(init);
10491054

10501055
const mockMinValue = new Date('02/02/2002');
10511056
const mockMaxValue = new Date('03/03/2003');
@@ -1104,7 +1109,7 @@ describe('IgxDatePicker', () => {
11041109
{ type: DateRangeType.Before, dateRange: [mockMinValue] },
11051110
{ type: DateRangeType.After, dateRange: [mockMaxValue] }
11061111
]);
1107-
(mockDate2.getTime as jasmine.Spy<any>).and.returnValue(Infinity);
1112+
mockDate2.getTime.and.returnValue(Infinity);
11081113
mockCalendar.disabledDates = [];
11091114
datePicker.minValue = mockMinValue;
11101115
datePicker.maxValue = mockMaxValue;

0 commit comments

Comments
 (0)