From 3794aaede0b1355a49e059fe4dbf27c8eae00878 Mon Sep 17 00:00:00 2001 From: Rupinder Date: Thu, 27 Feb 2020 18:42:52 +0530 Subject: wrote test case for search component Written test case for search.component.spec.ts Issue-ID: PORTAL-834 Change-Id: I1ecee2df7ced9a2f78119b5ac500686d3bc7a848 Signed-off-by: Rupinder --- .../ext/profile/search/search.component.spec.ts | 68 ++++++++++++++-------- 1 file changed, 44 insertions(+), 24 deletions(-) (limited to 'ecomp-sdk/epsdk-app-overlay/src') diff --git a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/pages/ext/profile/search/search.component.spec.ts b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/pages/ext/profile/search/search.component.spec.ts index 094e52b2..2140e0ae 100644 --- a/ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/pages/ext/profile/search/search.component.spec.ts +++ b/ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/pages/ext/profile/search/search.component.spec.ts @@ -1,9 +1,12 @@ + /* * ============LICENSE_START========================================== * ONAP Portal SDK * =================================================================== * Copyright © 2019 AT&T Intellectual Property. All rights reserved. * =================================================================== + * Modification Copyright © 2020 IBM. + * =================================================================== * * Unless otherwise specified, all software contained herein is licensed * under the Apache License, Version 2.0 (the "License"); @@ -14,50 +17,67 @@ * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * Unless otherwise specified, all documentation contained herein is licensed - * under the Creative Commons License, Attribution 4.0 Intl. (the "License"); - * you may not use this documentation except in compliance with the License. - * You may obtain a copy of the License at - * - * https://creativecommons.org/licenses/by/4.0/ - * - * Unless required by applicable law or agreed to in writing, documentation - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and * limitations under the License. * * ============LICENSE_END============================================ * * */ - import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - import { SearchComponent } from './search.component'; - +import { CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA, NgModule } from '@angular/core'; +import { MatTableModule, MatTableDataSource, MatMenuModule, MatSortModule, MatPaginatorModule } from '@angular/material'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; +import { RouterTestingModule } from '@angular/router/testing'; +import { ConfirmationModalComponent } from 'src/app/modals/confirmation-modal/confirmation-modal.component'; +import { NgbModule, NgbModal } from '@ng-bootstrap/ng-bootstrap'; +import { BrowserDynamicTestingModule } from '@angular/platform-browser-dynamic/testing'; +import { NgbModalBackdrop } from '@ng-bootstrap/ng-bootstrap/modal/modal-backdrop'; +import { NgModel } from '@angular/forms'; describe('SearchComponent', () => { let component: SearchComponent; let fixture: ComponentFixture; - beforeEach(async(() => { TestBed.configureTestingModule({ - declarations: [ SearchComponent ] + schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA], + declarations: [ SearchComponent , ConfirmationModalComponent], + imports: [NoopAnimationsModule, + MatPaginatorModule, + MatSortModule, + MatTableModule, + MatMenuModule, + HttpClientTestingModule, + RouterTestingModule, + ] }) .compileComponents(); - })); - + })); beforeEach(() => { fixture = TestBed.createComponent(SearchComponent); component = fixture.componentInstance; fixture.detectChanges(); }); - it('should create', () => { expect(component).toBeTruthy(); }); -}); + it('should test getUsers method', () => { + component.getUsers(); + expect(component.showSpinner).toEqual(true); + let response; + component.response.subscribe(data => { + expect(response).toEqual(data); + expect(component.result).toEqual(JSON.parse(response.data)); + expect(component.profileList).toEqual(JSON.parse(component.result.profileList)); + expect(component.dataSource).toEqual(new MatTableDataSource(component.profileList)); + expect(component.dataSource.paginator).toEqual(component.paginator); + expect(component.dataSource.sort).toEqual(component.sort); + expect(component.showSpinner).toEqual(false); + }); + }); + // it('should test applyFilter method', () => { + // let filterValue = "test" + // component.applyFilter(filterValue); + // expect(component.dataSource.filter).toEqual(filterValue.trim().toLowerCase()); + // }); +}); \ No newline at end of file -- cgit 1.2.3-korg