menu component- test cases 31/99131/1
authorArundathi Patil <arundpil@in.ibm.com>
Wed, 4 Dec 2019 10:21:42 +0000 (15:51 +0530)
committerArundathi Patil <arundpil@in.ibm.com>
Wed, 4 Dec 2019 10:21:56 +0000 (15:51 +0530)
wrote test case for menu component

Issue-ID: PORTAL-416
Change-Id: I5884c703a81d101a266742b529e95dbdbe808f17
Signed-off-by: Arundathi Patil <arundpil@in.ibm.com>
ecomp-sdk/epsdk-app-overlay/src/main/webapp/ngapp/src/app/pages/admin/menus/menus.component.spec.ts

index 9984cee..04a691b 100644 (file)
@@ -1,25 +1,52 @@
-import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+import { async, ComponentFixture, TestBed, inject } from '@angular/core/testing';
+import { MatTableModule } from '@angular/material/table';
+import { MatPaginatorModule } from '@angular/material/paginator';
+import { MatSortModule } from '@angular/material/sort';
+import { HttpClientModule } from '@angular/common/http';
+import { NoopAnimationsModule } from '@angular/platform-browser/animations';
+import { BrowserDynamicTestingModule } from '@angular/platform-browser-dynamic/testing';
+import { NgbModule, NgbModal } from '@ng-bootstrap/ng-bootstrap';
 
 import { MenusComponent } from './menus.component';
+import { InformationModalComponent } from 'src/app/modals/information-modal/information-modal.component';
+import { AdminService } from '../admin.service';
 
 describe('MenusComponent', () => {
   let component: MenusComponent;
   let fixture: ComponentFixture<MenusComponent>;
+  let modalService: any;
+  let modalRef: any;
 
   beforeEach(async(() => {
     TestBed.configureTestingModule({
-      declarations: [ MenusComponent ]
-    })
-    .compileComponents();
+      declarations: [ MenusComponent, InformationModalComponent ],
+      imports: [ MatTableModule, MatPaginatorModule, MatSortModule, HttpClientModule, NoopAnimationsModule, NgbModule.forRoot() ]
+    }).
+    overrideModule(BrowserDynamicTestingModule, { set: { entryComponents: [InformationModalComponent] } });;
   }));
 
-  beforeEach(() => {
+  beforeEach(async() => {
     fixture = TestBed.createComponent(MenusComponent);
     component = fixture.componentInstance;
     fixture.detectChanges();
+    modalService = TestBed.get(NgbModal);
+    modalRef = modalService.open(InformationModalComponent);
+    spyOn(modalService, "open").and.returnValue(modalRef);
+    spyOn(modalRef, "result").and.returnValue('Ok');
   });
 
   it('should create', () => {
     expect(component).toBeTruthy();
   });
+
+  it('should test getDismissReason function to call NgbModal.open function', () => {
+    component.removeMenuItem({'label': 'abc'});
+    expect(modalService.open).toHaveBeenCalled();
+  });
+
+  it('should test getDismissReason function', inject([AdminService],(adminservice) => {
+    component.getMenus();
+    expect(adminservice.getFnMenuItems).toHaveBeenCalled();
+  }));
+
 });