X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=webapp-frontend%2Fsrc%2Fapp%2Fservices%2Fpolicy%2Fpolicy.service.spec.ts;h=095443b49d522522a2115c1ff94741596ec31af1;hb=refs%2Fchanges%2F68%2F5668%2F5;hp=ee20509e5a02055f2fef30643d2c73576f517098;hpb=e409ac955e6f0654f1721c69e1885bda23e1cf99;p=portal%2Fnonrtric-controlpanel.git diff --git a/webapp-frontend/src/app/services/policy/policy.service.spec.ts b/webapp-frontend/src/app/services/policy/policy.service.spec.ts index ee20509..095443b 100644 --- a/webapp-frontend/src/app/services/policy/policy.service.spec.ts +++ b/webapp-frontend/src/app/services/policy/policy.service.spec.ts @@ -21,11 +21,11 @@ import { TestBed } from '@angular/core/testing'; import { PolicyService } from './policy.service'; import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing' -import { PolicyInstance, PolicyTypes } from '../../interfaces/policy.types'; +import { PolicyInstance, PolicyInstances, PolicyTypes } from '../../interfaces/policy.types'; describe('PolicyService', () => { let apiVersion2 = 'v2' - let basePath = ''; + let basePath = '/a1-policy/'; let policyService: PolicyService; let httpTestingController: HttpTestingController; beforeEach(() => TestBed.configureTestingModule({ @@ -44,8 +44,8 @@ describe('PolicyService', () => { let emptyPolicyType: PolicyTypes; beforeEach(() => { - policyService = TestBed.get(PolicyService); - httpTestingController = TestBed.get(HttpTestingController); + policyService = TestBed.inject(PolicyService); + httpTestingController = TestBed.inject(HttpTestingController); expectedPolicytypes = { "policytype_ids": [ "", @@ -59,7 +59,6 @@ describe('PolicyService', () => { policytypes => expect(policytypes).toEqual(expectedPolicytypes, 'should return expected PolicyTypes'), fail ); - const req = httpTestingController.expectOne(basePath + apiVersion2 + '/' + policyService.policyTypesPath); expect(req.request.method).toEqual('GET'); @@ -81,36 +80,71 @@ describe('PolicyService', () => { req.flush(emptyPolicyType); //Return empty data }); }); - describe('#getPolicyInstance', () => { - let expectedPolicyInstances: PolicyInstance[]; - let policyTypeId: string; + describe('#getPolicyInstances', () => { + let expectedPolicyInstances: PolicyInstances; + let emptyPolicyInstances: PolicyInstances; + let policyTypeId = '1'; beforeEach(() => { - policyService = TestBed.get(PolicyService); - httpTestingController = TestBed.get(HttpTestingController); - expectedPolicyInstances = [ - { id: '2000', json: '{"scope": {"ueId": "ue3100","qosId": "qos3100"},"qosObjectives": {"priorityLevel": 3100}}', service: 'service1', lastModified: '2020-12-08T21:12:43.719084Z' } - ] as PolicyInstance[]; - policyTypeId = "1"; + policyService = TestBed.inject(PolicyService); + httpTestingController = TestBed.inject(HttpTestingController); + expectedPolicyInstances = { + "policy_ids": [ + "2100", + "2000" + ] + } as PolicyInstances; }); //Policy Instances Test Case 1: it('should return all policy instances', () => { - policyService.getPolicyInstances(policyTypeId).subscribe( + policyService.getPolicyInstancesByType(policyTypeId).subscribe( policyinstances => expect(policyinstances).toEqual(expectedPolicyInstances, 'should return expected Policy Instances'), fail ); - const req = httpTestingController.expectOne(basePath + apiVersion2 + '/' + policyService.policyPath + '?type=' + policyTypeId); + const req = httpTestingController.expectOne(basePath + apiVersion2 + '/' + policyService.policyPath + '?' + 'policytype_id=' + policyTypeId); expect(req.request.method).toEqual('GET'); req.flush(expectedPolicyInstances); }); //Policy Instances Test Case 2: + emptyPolicyInstances = { + "policy_ids": [ + ] + } as PolicyInstances; it('should return no policy instances', () => { - policyService.getPolicyInstances(policyTypeId).subscribe( - policyinstances => expect(policyinstances.length).toEqual(0, 'should return empty array of Policy Instances'), + policyService.getPolicyInstancesByType(policyTypeId).subscribe( + policyinstances => expect(policyinstances.policy_ids.length).toEqual(0, 'should return empty array of Policy Instances'), fail ); - const req = httpTestingController.expectOne(basePath + apiVersion2 + '/' + policyService.policyPath + '?type=' + policyTypeId); - req.flush([]); //Return empty data + const req = httpTestingController.expectOne(basePath + apiVersion2 + '/' + policyService.policyPath + '?' + 'policytype_id=' + policyTypeId); + req.flush(emptyPolicyInstances); //Return empty data + }); + }); + + describe('#getPolicyInstance', () => { + let expectedPolicyInstance: PolicyInstance; + let emptyPolicyInstances: PolicyInstances; + let policyId = "2000"; + beforeEach(() => { + policyService = TestBed.inject(PolicyService); + httpTestingController = TestBed.inject(HttpTestingController); + expectedPolicyInstance = { + "policy_id": "2000", + "policytype_id": "1", + "ric_id": "ric1", + "policy_data": "", + "service_id": "service1", + "lastModified": "" + } as PolicyInstance; + }); + //Policy Instances Test Case 1: + it('should return one policy instance', () => { + policyService.getPolicyInstance(policyId).subscribe( + policyinstance => expect(policyinstance).toEqual(expectedPolicyInstance, 'should return expected Policy Instances'), + fail + ); + const req = httpTestingController.expectOne(basePath + apiVersion2 + '/' + policyService.policyPath + '/' + policyId); + expect(req.request.method).toEqual('GET'); + req.flush(expectedPolicyInstance); }); }); });