diff options
Diffstat (limited to 'vid-webpack-master/src/app/drawingBoard/service-planning/search/search.component.spec.ts')
-rw-r--r-- | vid-webpack-master/src/app/drawingBoard/service-planning/search/search.component.spec.ts | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/vid-webpack-master/src/app/drawingBoard/service-planning/search/search.component.spec.ts b/vid-webpack-master/src/app/drawingBoard/service-planning/search/search.component.spec.ts new file mode 100644 index 000000000..754dd6690 --- /dev/null +++ b/vid-webpack-master/src/app/drawingBoard/service-planning/search/search.component.spec.ts @@ -0,0 +1,93 @@ +import {ComponentFixture, TestBed} from '@angular/core/testing'; +import {HttpClientTestingModule} from '@angular/common/http/testing'; +import {CUSTOM_ELEMENTS_SCHEMA} from "@angular/core"; +import {SearchComponent} from "./search.component"; +import {FormsModule, ReactiveFormsModule} from "@angular/forms"; + +describe('Spinner component', () => { + + let component: SearchComponent; + let fixture: ComponentFixture<SearchComponent>; + + beforeAll(done => (async () => { + TestBed.configureTestingModule({ + imports: [FormsModule, ReactiveFormsModule, HttpClientTestingModule], + providers: [], + declarations: [SearchComponent], + schemas: [CUSTOM_ELEMENTS_SCHEMA] + }); + await TestBed.compileComponents(); + + fixture = TestBed.createComponent(SearchComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + + })().then(done).catch(done.fail)); + + + test('component should be defined', () => { + expect(component).toBeDefined(); + }); + + test('searchTree should return all nodes that include some text: with text', () => { + component.nodes = [ + { + name: 'name_1' + }, + { + name: 'name_2' + }, + { + name: 'name_3' + }, + { + name: 'name_3' + }]; + jest.spyOn(component.updateNodes, 'emit'); + spyOn(component, 'expandParentByNodeId').and.stub(); + component.searchTree('name_1'); + + expect(component.updateNodes.emit).toHaveBeenCalledWith({ + nodes: [ + { + name: 'name_1' + }, + { + name: 'name_2' + }, + { + name: 'name_3' + }, + { + name: 'name_3' + }], + filterValue: 'name_1' + }); + }); + + test('searchTree should return all nodes that include some text: without text', () => { + component.nodes = [ + { + name: 'name_1', + children: [ + { + name: 'name_child_1' + } + ] + }, + { + name: 'name_2' + }, + { + name: 'name_3' + }, + { + name: 'name_4' + }]; + jest.spyOn(component.updateNodes, 'emit'); + spyOn(component, 'expandParentByNodeId').and.stub(); + component.searchTree(''); + + expect(component.updateNodes.emit).toHaveBeenCalled(); + }); +}); |