57f7b009cbd817e175c9930d38d6a98401e9cb05
[vid.git] / vid-webpack-master / src / app / shared / components / spinner / spinner.component.spec.ts
1 import {ComponentFixture, TestBed} from '@angular/core/testing';
2 import {HttpClientTestingModule} from '@angular/common/http/testing';
3 import {SpinnerComponent, SpinnerInfo} from './spinner.component';
4 import {CUSTOM_ELEMENTS_SCHEMA} from "@angular/core";
5
6 describe('Spinner component', () => {
7   let component: SpinnerComponent;
8   let fixture: ComponentFixture<SpinnerComponent>;
9
10   beforeAll(done => (async () => {
11     TestBed.configureTestingModule({
12       imports: [HttpClientTestingModule],
13       providers: [],
14       declarations: [SpinnerComponent],
15       schemas: [ CUSTOM_ELEMENTS_SCHEMA ]
16     });
17     await TestBed.compileComponents();
18
19     fixture = TestBed.createComponent(SpinnerComponent);
20     component = fixture.componentInstance;
21     fixture.detectChanges();
22
23   })().then(done).catch(done.fail));
24
25
26
27   test('component should be defined', () => {
28     expect(component).toBeDefined();
29   });
30
31   test('component constructor should subscribe of showSpinner event with true', ()=> {
32     let spinnerInfo : SpinnerInfo = new SpinnerInfo(true, 'someUrl', 'json');
33     SpinnerComponent.showSpinner.next(spinnerInfo);
34     expect(component.show).toBeTruthy();
35   });
36
37   test('component constructor should subscribe of showSpinner event with true and then to be false', ()=> {
38     let spinnerInfo : SpinnerInfo = new SpinnerInfo(true, 'someUrl', 'json');
39     SpinnerComponent.showSpinner.next(spinnerInfo);
40     spinnerInfo  = new SpinnerInfo(false, 'someUrl', 'json');
41     SpinnerComponent.showSpinner.next(spinnerInfo);
42     expect(component.show).toBeFalsy();
43   });
44
45   test('component constructor should subscribe of showSpinner event with false', ()=> {
46     let spinnerInfo : SpinnerInfo = new SpinnerInfo(false, 'someUrl', 'json');
47     SpinnerComponent.showSpinner.next(spinnerInfo);
48     expect(component.show).toBeFalsy();
49   });
50 });