1 import {async, ComponentFixture, TestBed} from '@angular/core/testing';
3 import {PackagesHeaderComponent} from './packages-header.component';
4 import {PackagesStore} from '../../packages.store';
5 import {BrowserDynamicTestingModule, platformBrowserDynamicTesting} from '@angular/platform-browser-dynamic/testing';
6 import {PackagesDashboardState} from '../../model/packages-dashboard.state';
7 import {getBluePrintPageMock} from '../../blueprint.page.mock';
8 import {of} from 'rxjs';
9 import {By} from '@angular/platform-browser';
11 fdescribe('PackagesHeaderComponent', () => {
12 let component: PackagesHeaderComponent;
13 let fixture: ComponentFixture<PackagesHeaderComponent>;
14 let packageStoreStub: Partial<PackagesStore>;
15 let packageDashboardState;
17 packageDashboardState = new PackagesDashboardState();
18 packageDashboardState.totalPackagesWithoutSearchorFilters = 9;
20 packageStoreStub = {state$: of(packageDashboardState)};
21 TestBed.resetTestEnvironment();
22 TestBed.initTestEnvironment(BrowserDynamicTestingModule,
23 platformBrowserDynamicTesting());
24 TestBed.configureTestingModule({
25 declarations: [PackagesHeaderComponent],
27 {provide: PackagesStore, useValue: packageStoreStub}
33 fixture = TestBed.createComponent(PackagesHeaderComponent);
34 component = fixture.componentInstance;
35 fixture.detectChanges();
38 it('should create', () => {
39 expect(component).toBeTruthy();
42 it('should display the number of packages', () => {
43 component.numberOfPackages = 10;
44 const numberOfPackage = fixture.debugElement.query(By.css('#numberOfPackages'));
45 const numberOfPackageElement: HTMLElement = numberOfPackage.nativeElement;
46 fixture.detectChanges();
47 expect(numberOfPackageElement.textContent).toContain('' + 10);
50 it('should equals number of packages at store ', async(() => {
51 packageDashboardState.totalPackagesWithoutSearchorFilters = 17;
52 packageStoreStub = {state$: of(packageDashboardState)};
54 fixture = TestBed.createComponent(PackagesHeaderComponent);
55 component = fixture.componentInstance;
56 fixture.detectChanges();
57 const numberOfPackage = fixture.debugElement.query(By.css('#numberOfPackages'));
58 const numberOfPackageElement: HTMLElement = numberOfPackage.nativeElement;
59 fixture.whenStable().then(() => {
60 fixture.detectChanges();
61 expect(numberOfPackageElement.textContent).toContain('' + 17);