wrote test case for search component 00/102500/1
authorRupinder <rupinsi1@in.ibm.com>
Thu, 27 Feb 2020 13:12:52 +0000 (18:42 +0530)
committerRupinder <rupinsi1@in.ibm.com>
Thu, 27 Feb 2020 13:12:57 +0000 (18:42 +0530)
Written test case for search.component.spec.ts

Issue-ID: PORTAL-834
Change-Id: I1ecee2df7ced9a2f78119b5ac500686d3bc7a848
Signed-off-by: Rupinder<rupinsi1@in.ibm.com>
ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/pages/ext/profile/search/search.component.spec.ts

index 094e52b..2140e0a 100644 (file)
@@ -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");
  *
  * 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<SearchComponent>;
-
   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