From: elinuxhenrik Date: Tue, 30 Mar 2021 12:14:15 +0000 (+0200) Subject: Add test coverage of PolicyControlComponent X-Git-Tag: 2.2.0~44^2 X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=4e4cb3f185fd507708266621227326fdce816a47;p=portal%2Fnonrtric-controlpanel.git Add test coverage of PolicyControlComponent Change-Id: If18ad9d26d4872c953c0e410dd1f576a33a5c306 Issue-ID: NONRTRIC-390 Signed-off-by: elinuxhenrik --- diff --git a/webapp-frontend/src/app/policy/policy-control.component.spec.ts b/webapp-frontend/src/app/policy/policy-control.component.spec.ts index 92b3bbc..05f95db 100644 --- a/webapp-frontend/src/app/policy/policy-control.component.spec.ts +++ b/webapp-frontend/src/app/policy/policy-control.component.spec.ts @@ -19,14 +19,17 @@ */ import { async, ComponentFixture, TestBed } from "@angular/core/testing"; import { BrowserAnimationsModule } from "@angular/platform-browser/animations"; +import { By } from "@angular/platform-browser"; import { MatIconModule } from "@angular/material/icon"; import { MatTableModule } from "@angular/material/table"; import { CUSTOM_ELEMENTS_SCHEMA } from "@angular/core"; import { of } from "rxjs"; import { PolicyControlComponent } from "./policy-control.component"; -import { PolicyTypeSchema } from "@interfaces/policy.types"; +import { PolicyTypes } from "@interfaces/policy.types"; import { PolicyService } from "@services/policy/policy.service"; +import { MockComponent } from "ng-mocks"; +import { PolicyTypeComponent } from "./policy-type/policy-type.component"; describe("PolicyControlComponent", () => { let component: PolicyControlComponent; @@ -36,15 +39,16 @@ describe("PolicyControlComponent", () => { const policyServiceSpy = jasmine.createSpyObj("PolicyService", [ "getPolicyTypes", ]); - var policyTypeSchema = {} as PolicyTypeSchema; - policyTypeSchema.name = ""; - policyTypeSchema.schemaObject = ""; - policyServiceSpy.getPolicyTypes.and.returnValue(of(["type1"])); + const policyTypes = { policytype_ids: ["type1", "type2"] } as PolicyTypes; + policyServiceSpy.getPolicyTypes.and.returnValue(of(policyTypes)); TestBed.configureTestingModule({ imports: [MatIconModule, MatTableModule, BrowserAnimationsModule], schemas: [CUSTOM_ELEMENTS_SCHEMA], - declarations: [PolicyControlComponent], + declarations: [ + PolicyControlComponent, + MockComponent(PolicyTypeComponent), + ], providers: [{ provide: PolicyService, useValue: policyServiceSpy }], }).compileComponents(); })); @@ -58,4 +62,14 @@ describe("PolicyControlComponent", () => { it("should create", () => { expect(component).toBeTruthy(); }); + + it("should contain two PolicyType components instantiated with the correct type", () => { + const typeComponents: PolicyTypeComponent[] = fixture.debugElement + .queryAll(By.directive(PolicyTypeComponent)) + .map((component) => component.componentInstance); + + expect(typeComponents.length).toEqual(2); + expect(typeComponents[0].policyTypeId).toEqual("type1"); + expect(typeComponents[1].policyTypeId).toEqual("type2"); + }); });