});
it('should run postProcess and split the breadcrumbs when navigating to hosts', fakeAsync(() => {
- router.navigateByUrl('/hosts');
+ fixture.ngZone.run(() => {
+ router.navigateByUrl('/hosts');
+ });
tick();
expect(component.crumbs).toEqual([
{ path: null, text: 'Cluster' },
}));
it('should display empty breadcrumb when navigating to perf_counters from unknown path', fakeAsync(() => {
- router.navigateByUrl('/perf_counters');
+ fixture.ngZone.run(() => {
+ router.navigateByUrl('/perf_counters');
+ });
tick();
expect(component.crumbs).toEqual([
{ path: null, text: 'Cluster' },
}));
it('should display Monitor breadcrumb when navigating to perf_counters from Monitors', fakeAsync(() => {
- router.navigate(['/perf_counters'], { queryParams: { fromLink: '/monitor' } });
+ fixture.ngZone.run(() => {
+ router.navigate(['/perf_counters'], { queryParams: { fromLink: '/monitor' } });
+ });
tick();
expect(component.crumbs).toEqual([
{ path: null, text: 'Cluster' },
}));
it('should display Hosts breadcrumb when navigating to perf_counters from Hosts', fakeAsync(() => {
- router.navigate(['/perf_counters'], { queryParams: { fromLink: '/hosts' } });
+ fixture.ngZone.run(() => {
+ router.navigate(['/perf_counters'], { queryParams: { fromLink: '/hosts' } });
+ });
tick();
expect(component.crumbs).toEqual([
{ path: null, text: 'Cluster' },
}));
it('should show all 3 breadcrumbs when navigating to RBD Add', fakeAsync(() => {
- router.navigateByUrl('/block/rbd/add');
+ fixture.ngZone.run(() => {
+ router.navigateByUrl('/block/rbd/add');
+ });
tick();
expect(component.crumbs).toEqual([
{ path: null, text: 'Block' },
-import { Component } from '@angular/core';
+import { Component, NgZone } from '@angular/core';
import { fakeAsync, TestBed, tick } from '@angular/core/testing';
import { Router, Routes } from '@angular/router';
import { RouterTestingModule } from '@angular/router/testing';
describe('AuthGuardService', () => {
let service: AuthGuardService;
let authStorageService: AuthStorageService;
+ let ngZone: NgZone;
@Component({ selector: 'cd-login', template: '' })
class LoginComponent {}
beforeEach(() => {
service = TestBed.get(AuthGuardService);
authStorageService = TestBed.get(AuthStorageService);
+ ngZone = TestBed.get(NgZone);
});
it('should be created', () => {
it('should prevent user if not loggedIn and redirect to login page', fakeAsync(() => {
const router = TestBed.get(Router);
- expect(service.canActivate(null, null)).toBe(false);
+ ngZone.run(() => {
+ expect(service.canActivate(null, null)).toBe(false);
+ });
tick();
expect(router.url).toBe('/login');
}));
import { HttpClient } from '@angular/common/http';
-import { Component } from '@angular/core';
+import { Component, NgZone } from '@angular/core';
import { fakeAsync, TestBed, tick } from '@angular/core/testing';
import { ActivatedRouteSnapshot, Router, Routes } from '@angular/router';
import { RouterTestingModule } from '@angular/router/testing';
let httpClient: HttpClient;
let router: Router;
let route: ActivatedRouteSnapshot;
+ let ngZone: NgZone;
@Component({ selector: 'cd-foo', template: '' })
class FooComponent {}
const testCanActivate = (getResult: {}, activateResult: boolean, urlResult: string) => {
let result: boolean;
spyOn(httpClient, 'get').and.returnValue(observableOf(getResult));
- service.canActivateChild(route, null).subscribe((resp) => {
- result = resp;
+ ngZone.run(() => {
+ service.canActivateChild(route, null).subscribe((resp) => {
+ result = resp;
+ });
});
tick();
redirectTo: '/foo'
}
};
+ ngZone = TestBed.get(NgZone);
});
it('should be created', () => {