From 7c36051fccd12383e5959ca4e5c9cc276c1aac10 Mon Sep 17 00:00:00 2001 From: Giuseppe Digilio Date: Mon, 6 Jul 2020 11:24:21 +0200 Subject: [PATCH 1/2] fixed travis failure --- ...ission-import-external-preview.component.spec.ts | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/app/submission/import-external/import-external-preview/submission-import-external-preview.component.spec.ts b/src/app/submission/import-external/import-external-preview/submission-import-external-preview.component.spec.ts index 58488dd5ab..aa4413637c 100644 --- a/src/app/submission/import-external/import-external-preview/submission-import-external-preview.component.spec.ts +++ b/src/app/submission/import-external/import-external-preview/submission-import-external-preview.component.spec.ts @@ -4,7 +4,7 @@ import { TranslateModule } from '@ngx-translate/core'; import { Router } from '@angular/router'; import { NgbModal, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap'; import { TestScheduler } from 'rxjs/testing'; -import { of as observableOf, of } from 'rxjs/internal/observable/of'; +import { of as observableOf } from 'rxjs/internal/observable/of'; import { getTestScheduler } from 'jasmine-marbles'; import { SubmissionImportExternalPreviewComponent } from './submission-import-external-preview.component'; import { NotificationsService } from '../../../shared/notifications/notifications.service'; @@ -103,16 +103,14 @@ describe('SubmissionImportExternalPreviewComponent test suite', () => { const expected = [ { key: 'dc.identifier.uri', value: Metadata.first(comp.externalSourceEntry.metadata, 'dc.identifier.uri') } ]; - scheduler.schedule(() => comp.ngOnInit()); - scheduler.flush(); + fixture.detectChanges(); expect(comp.metadataList).toEqual(expected); }); it('Should close the modal calling \'activeModal.dismiss\'', () => { comp.modalRef = jasmine.createSpyObj('modal', ['close', 'dismiss']); - scheduler.schedule(() => comp.closeMetadataModal()); - scheduler.flush(); + comp.closeMetadataModal(); expect(compAsAny.activeModal.dismiss).toHaveBeenCalled(); }); @@ -136,7 +134,10 @@ describe('SubmissionImportExternalPreviewComponent test suite', () => { { id: 'jk11k13o-9v4z-632i-sr88-wq071n0h1d47' } ]; comp.externalSourceEntry = externalEntry; - ngbModal.open.and.returnValue({componentInstance: { selectedEvent: observableOf(emittedEvent)}}); + ngbModal.open.and.returnValue({ + componentInstance: { selectedEvent: observableOf(emittedEvent)}, + close: (): void => { /* empty */ } + }); spyOn(comp, 'closeMetadataModal'); submissionServiceStub.createSubmissionFromExternalSource.and.returnValue(observableOf(submissionObjects)); spyOn(compAsAny.router, 'navigateByUrl'); From a38e5cf632f75a98b8bbfdc02dec673df4511ca9 Mon Sep 17 00:00:00 2001 From: Giuseppe Digilio Date: Mon, 6 Jul 2020 12:30:53 +0200 Subject: [PATCH 2/2] fixed travis failure --- ...mport-external-searchbar.component.spec.ts | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/app/submission/import-external/import-external-searchbar/submission-import-external-searchbar.component.spec.ts b/src/app/submission/import-external/import-external-searchbar/submission-import-external-searchbar.component.spec.ts index 25f12c6e38..10cc122624 100644 --- a/src/app/submission/import-external/import-external-searchbar/submission-import-external-searchbar.component.spec.ts +++ b/src/app/submission/import-external/import-external-searchbar/submission-import-external-searchbar.component.spec.ts @@ -1,5 +1,5 @@ import { Component, NO_ERRORS_SCHEMA, ChangeDetectorRef } from '@angular/core'; -import { async, TestBed, ComponentFixture, inject } from '@angular/core/testing'; +import { async, TestBed, ComponentFixture, inject, fakeAsync, tick } from '@angular/core/testing'; import { TranslateModule } from '@ngx-translate/core'; import { of as observableOf } from 'rxjs'; import { SubmissionImportExternalSearchbarComponent, SourceElement } from './submission-import-external-searchbar.component'; @@ -13,13 +13,17 @@ import { ExternalSource } from '../../../core/shared/external-source.model'; import { FindListOptions } from '../../../core/data/request.models'; import { HostWindowService } from '../../../shared/host-window.service'; import { HostWindowServiceStub } from '../../../shared/testing/host-window-service.stub'; +import { getTestScheduler } from 'jasmine-marbles'; +import { TestScheduler } from 'rxjs/testing'; describe('SubmissionImportExternalSearchbarComponent test suite', () => { let comp: SubmissionImportExternalSearchbarComponent; let compAsAny: any; let fixture: ComponentFixture; + let scheduler: TestScheduler; beforeEach(async (() => { + scheduler = getTestScheduler(); TestBed.configureTestingModule({ imports: [ TranslateModule.forRoot(), @@ -85,23 +89,25 @@ describe('SubmissionImportExternalSearchbarComponent test suite', () => { compAsAny = null; }); - it('Should init component properly (without initExternalSourceData)', () => { + it('Should init component properly (without initExternalSourceData)', fakeAsync(() => { comp.initExternalSourceData = { sourceId: '', query: '' }; fixture.detectChanges(); + tick(); expect(comp.selectedElement).toEqual(sourceList[0]); expect(compAsAny.pageInfo).toEqual(paginatedList.pageInfo); expect(comp.sourceList).toEqual(sourceList); - }); + })); - it('Should init component properly (with initExternalSourceData populated)', () => { + it('Should init component properly (with initExternalSourceData populated)', fakeAsync(() => { comp.initExternalSourceData = { query: 'dummy', sourceId: 'ciencia' }; fixture.detectChanges(); + tick(); expect(comp.selectedElement).toEqual(sourceList[1]); expect(compAsAny.pageInfo).toEqual(paginatedList.pageInfo); expect(comp.sourceList).toEqual(sourceList); - }); + })); it('Variable \'selectedElement\' should be assigned', () => { const selectedElement = {id: 'orcid', name: 'orcid'}; @@ -123,7 +129,9 @@ describe('SubmissionImportExternalSearchbarComponent test suite', () => { }); comp.sourceList = sourceList; const expected = sourceList.concat(sourceList); - comp.onScroll(); + + scheduler.schedule(() => comp.onScroll()); + scheduler.flush(); expect(comp.sourceList).toEqual(expected); });