1 import { HttpClientTestingModule } from '@angular/common/http/testing';
2 import { NO_ERRORS_SCHEMA } from '@angular/core';
3 import { ComponentFixture, TestBed } from '@angular/core/testing';
5 import { of } from 'rxjs';
7 import { configureTestBed, i18nProviders } from '../../../../testing/unit-test-helper';
8 import { MonitorService } from '../../../shared/api/monitor.service';
9 import { MonitorComponent } from './monitor.component';
11 describe('MonitorComponent', () => {
12 let component: MonitorComponent;
13 let fixture: ComponentFixture<MonitorComponent>;
14 let getMonitorSpy: jasmine.Spy;
17 imports: [HttpClientTestingModule],
18 declarations: [MonitorComponent],
19 schemas: [NO_ERRORS_SCHEMA],
20 providers: [MonitorService, i18nProviders]
24 fixture = TestBed.createComponent(MonitorComponent);
25 component = fixture.componentInstance;
26 const getMonitorPayload: Record<string, any> = {
29 stats: { num_sessions: [[1, 5]] }
62 getMonitorSpy = spyOn(TestBed.get(MonitorService), 'getMonitor').and.returnValue(
67 it('should create', () => {
68 expect(component).toBeTruthy();
71 it('should sort by open sessions column correctly', () => {
74 expect(getMonitorSpy).toHaveBeenCalled();
76 expect(component.inQuorum.columns[3].comparator(undefined, undefined)).toBe(0);
77 expect(component.inQuorum.columns[3].comparator(null, null)).toBe(0);
78 expect(component.inQuorum.columns[3].comparator([], [])).toBe(0);
80 component.inQuorum.columns[3].comparator(
81 component.inQuorum.data[0].cdOpenSessions,
82 component.inQuorum.data[3].cdOpenSessions
86 component.inQuorum.columns[3].comparator(
87 component.inQuorum.data[0].cdOpenSessions,
88 component.inQuorum.data[1].cdOpenSessions
92 component.inQuorum.columns[3].comparator(
93 component.inQuorum.data[1].cdOpenSessions,
94 component.inQuorum.data[0].cdOpenSessions
98 component.inQuorum.columns[3].comparator(
99 component.inQuorum.data[2].cdOpenSessions,
100 component.inQuorum.data[1].cdOpenSessions