diff --git a/scilog/src/app/logbook/core/change-stream.service.spec.ts b/scilog/src/app/logbook/core/change-stream.service.spec.ts index e24cb9dc..db9f09c8 100644 --- a/scilog/src/app/logbook/core/change-stream.service.spec.ts +++ b/scilog/src/app/logbook/core/change-stream.service.spec.ts @@ -3,7 +3,11 @@ import { TestBed } from '@angular/core/testing'; import { ChangeStreamService } from './change-stream.service'; import { SnackbarService } from '@shared/snackbar.service'; import { ServerSettingsService } from '@shared/config/server-settings.service'; -import { waitForAsync } from '@angular/core/testing'; +import { AppConfigService } from 'src/app/app-config.service'; +import { MatSnackBar } from '@angular/material/snack-bar'; +import { Overlay } from '@angular/cdk/overlay'; + +const getConfig = () => ({}); describe('ChangeStreamService', () => { let service: ChangeStreamService; @@ -20,12 +24,15 @@ describe('ChangeStreamService', () => { providers: [ChangeStreamService, {providers: SnackbarService, useValue:snackSpy}, {providers: ServerSettingsService, useValue:serverSpy}, + {provide: AppConfigService, useValue: { getConfig }}, + MatSnackBar, + Overlay ], }); service = TestBed.inject(ChangeStreamService); }); - // it('should be created', () => { - // expect(service).toBeTruthy(); - // }); + it('should be created', () => { + expect(service).toBeTruthy(); + }); }); diff --git a/scilog/src/app/logbook/core/settings/view-settings/view-settings.component.spec.ts b/scilog/src/app/logbook/core/settings/view-settings/view-settings.component.spec.ts index de8dca2f..a33ad8ad 100644 --- a/scilog/src/app/logbook/core/settings/view-settings/view-settings.component.spec.ts +++ b/scilog/src/app/logbook/core/settings/view-settings/view-settings.component.spec.ts @@ -32,6 +32,7 @@ describe('ViewSettingsComponent', () => { logbookSpy.logbookInfo.and.returnValue([]); logbookDataSpy = jasmine.createSpyObj("LogbookDataService", ["getLocations"]); + logbookDataSpy.getLocations.and.returnValue([{}]); beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ diff --git a/scilog/src/app/logbook/widgets/widget-preferences/widget-preferences.component.spec.ts b/scilog/src/app/logbook/widgets/widget-preferences/widget-preferences.component.spec.ts index 6163d621..365664da 100644 --- a/scilog/src/app/logbook/widgets/widget-preferences/widget-preferences.component.spec.ts +++ b/scilog/src/app/logbook/widgets/widget-preferences/widget-preferences.component.spec.ts @@ -30,6 +30,7 @@ describe('WidgetPreferencesComponent', () => { logbookSpy.logbookInfo.and.returnValue([]); logbookDataSpy = jasmine.createSpyObj("LogbookDataService", ["getLogbookInfo", "getLogbooksInfo"]); + logbookDataSpy.getLogbooksInfo.and.returnValue([]); widgetPreferencesSpy = jasmine.createSpyObj("WidgetPreferencesDataService", ["getSnippetsForLogbook", "getPlotSnippets"]); widgetPreferencesSpy.getSnippetsForLogbook.and.returnValue(of({})); diff --git a/scilog/src/app/overview/overview.component.spec.ts b/scilog/src/app/overview/overview.component.spec.ts index 80f128df..52e471dd 100644 --- a/scilog/src/app/overview/overview.component.spec.ts +++ b/scilog/src/app/overview/overview.component.spec.ts @@ -10,7 +10,6 @@ import { of } from 'rxjs'; import { RouterTestingModule } from '@angular/router/testing'; import {Pipe, PipeTransform} from '@angular/core'; import { Logbooks } from '@model/logbooks'; -import { IDatasource } from 'ngx-ui-scroll'; import { ResizedEvent } from 'angular-resize-event'; @Pipe({name: 'logbookSearch'}) @@ -73,14 +72,14 @@ describe('OverviewComponent', () => { }); [ - {adapter: {firstVisible: {element: {}}}}, {}, - {adapter: {firstVisible: {element: {querySelector: () => ({clientWidth: 0, clientHeight: 0})}}}}, - {adapter: {firstVisible: {element: {querySelector: () => ({clientWidth: 10, clientHeight: 20})}}}}, + undefined, + {clientWidth: 0, clientHeight: 0}, + {clientWidth: 10, clientHeight: 20}, ].forEach((t, i) => { [['logbook-module', 10], ['logbook-headline', 20]].forEach(st => { it(`should test get matCardSide ${i}:${st[0]}`, () => { - component['logbookIconScrollService']['datasource'] = t as unknown as IDatasource; + spyOn(component, 'getFirstVisibleElement').and.returnValue(t); component.matCardType = st[0] as MatCardType; const expected = st[0] === 'logbook-module' ? 352 : 47; expect(component.matCardSide).toEqual(i === 3 ? st[1] as number : expected); diff --git a/scilog/src/app/overview/overview.component.ts b/scilog/src/app/overview/overview.component.ts index 134efa0d..0a8be564 100644 --- a/scilog/src/app/overview/overview.component.ts +++ b/scilog/src/app/overview/overview.component.ts @@ -109,7 +109,7 @@ export class OverviewComponent implements OnInit { get matCardSide() { const matCardType = this.matCardType; - const element = this.logbookIconScrollService?.datasource?.adapter?.firstVisible?.element?.querySelector?.(`.${matCardType}`); + const element = this.getFirstVisibleElement(matCardType); const matCardSide = element?.[this.clientSide]; if (!matCardSide) return this._matCardSide[matCardType]; @@ -117,6 +117,10 @@ export class OverviewComponent implements OnInit { return this._matCardSide[matCardType] } + private getFirstVisibleElement(matCardType: string) { + return this.logbookIconScrollService?.datasource?.adapter?.firstVisible?.element?.querySelector?.(`.${matCardType}`); + } + groupSize(viewPortSide: number) { return Math.floor(viewPortSide / this.matCardSide) || 1; }