From 7cdf685b0b8726e9ee2233d189692dbeb7e434f5 Mon Sep 17 00:00:00 2001 From: Eylon Malin Date: Thu, 5 Dec 2019 08:11:42 +0200 Subject: support build recreate url in instantiationStatus service Issue-ID: VID-724 Change-Id: I95891a7b2e9e16bd123408d3451df38a89796714 Signed-off-by: Eylon Malin --- .../service-planning/drawing-board.modes.ts | 3 +- .../instantiationStatus.component.service.spec.ts | 76 ++++++++++++---------- .../instantiationStatus.component.service.ts | 29 ++++++--- 3 files changed, 63 insertions(+), 45 deletions(-) (limited to 'vid-webpack-master/src') diff --git a/vid-webpack-master/src/app/drawingBoard/service-planning/drawing-board.modes.ts b/vid-webpack-master/src/app/drawingBoard/service-planning/drawing-board.modes.ts index 452666f91..78e2b629e 100644 --- a/vid-webpack-master/src/app/drawingBoard/service-planning/drawing-board.modes.ts +++ b/vid-webpack-master/src/app/drawingBoard/service-planning/drawing-board.modes.ts @@ -4,5 +4,6 @@ export enum DrawingBoardModes { VIEW = 'VIEW', EDIT = 'EDIT', OLD_VIEW_EDIT = 'OLD_VIEW_EDIT', - CREATE = 'CREATE' + CREATE = 'CREATE', + RECREATE = 'RECREATE' } diff --git a/vid-webpack-master/src/app/instantiationStatus/instantiationStatus.component.service.spec.ts b/vid-webpack-master/src/app/instantiationStatus/instantiationStatus.component.service.spec.ts index 27d3f419b..a5e6fab89 100644 --- a/vid-webpack-master/src/app/instantiationStatus/instantiationStatus.component.service.spec.ts +++ b/vid-webpack-master/src/app/instantiationStatus/instantiationStatus.component.service.spec.ts @@ -1,16 +1,5 @@ import {getTestBed, TestBed} from '@angular/core/testing'; -import { - COMPLETED_WITH_ERRORS, - INPROGRESS, - InstantiationStatusComponentService, - PAUSE, - PENDING, - ServiceStatus, - STOPPED, - SUCCESS_CIRCLE, - UNKNOWN, - X_O -} from './instantiationStatus.component.service'; +import {COMPLETED_WITH_ERRORS, INPROGRESS, InstantiationStatusComponentService, PAUSE, PENDING, ServiceStatus, STOPPED, SUCCESS_CIRCLE, UNKNOWN, X_O} from './instantiationStatus.component.service'; import {ServiceInfoModel} from '../shared/server/serviceInfo/serviceInfo.model'; import {AaiService} from "../shared/services/aaiService/aai.service"; import {MsoService} from "../shared/services/msoService/mso.service"; @@ -101,33 +90,48 @@ describe('Instantiation Status Service', () => { }); }); - test('click on "Open" button should open new view edit' , ()=>{ - const item = { - serviceModelId : 'serviceModelId', - serviceInstanceId : 'serviceInstanceId', - serviceType : 'serviceType', - subscriberId : 'subscriberId' - }; - let params:UrlTree = service.getNewViewEditUrlTree(item, DrawingBoardModes.VIEW); - expect(params.toString().startsWith('/servicePlanning/VIEW')).toBeTruthy(); - expect(params.queryParams).toEqual( - { - serviceModelId: item.serviceModelId, - serviceInstanceId: item.serviceInstanceId, - serviceType : item.serviceType, - subscriberId : item.subscriberId - }); - }); + describe('navigations tests:', () => { - test('build the View Edit url' , ()=>{ const item = { - serviceModelId : '28aeb8f6-5620-4148-8bfb-a5fb406f0309', + serviceModelId: '28aeb8f6-5620-4148-8bfb-a5fb406f0309', + serviceInstanceId: 'myInstanceId', + serviceType: 'myService', + subscriberId: 'mySubscriber', + jobId: 'aJobId' }; - let serviceModelUrl: string = '/servicePlanning/EDIT?serviceModelId=28aeb8f6-5620-4148-8bfb-a5fb406f0309'; - let suffix:string = '../../serviceModels.htm#'; - let tree:UrlTree = service.getNewViewEditUrlTree(item, DrawingBoardModes.EDIT); - let result = service.getViewEditUrl(tree); - expect (suffix + serviceModelUrl).toEqual(result); + + test('click on "Open" button should open new view edit', () => { + let params: UrlTree = service.getNewViewEditUrlTree(item, DrawingBoardModes.VIEW); + expect(params.toString().startsWith('/servicePlanning/VIEW')).toBeTruthy(); + expect(params.queryParams).toEqual( + { + serviceModelId: item.serviceModelId, + serviceInstanceId: item.serviceInstanceId, + serviceType: item.serviceType, + subscriberId: item.subscriberId, + jobId: item.jobId + }); + }); + + test('build the View Edit url', () => { + + let serviceModelUrl: string = '/servicePlanning/EDIT?serviceModelId=28aeb8f6-5620-4148-8bfb-a5fb406f0309' + + '&serviceInstanceId=myInstanceId&serviceType=myService&subscriberId=mySubscriber&jobId=aJobId'; + let prefix: string = '../../serviceModels.htm#'; + let tree: UrlTree = service.getNewViewEditUrlTree(item, DrawingBoardModes.EDIT); + let result = service.getViewEditUrl(tree); + expect(result).toEqual(prefix + serviceModelUrl); + }); + + test('recreate url shall contains mode RECREATE and only jobId and serviceModelId', () =>{ + let params: UrlTree = service.getNewViewEditUrlTree(item, DrawingBoardModes.RECREATE); + expect(params.toString().startsWith('/servicePlanning/RECREATE')).toBeTruthy(); + expect(params.queryParams).toEqual( + { + serviceModelId: item.serviceModelId, + jobId: item.jobId + }); + }); }); for (let [status, tooltip] of Object.entries({ diff --git a/vid-webpack-master/src/app/instantiationStatus/instantiationStatus.component.service.ts b/vid-webpack-master/src/app/instantiationStatus/instantiationStatus.component.service.ts index ffc2e681a..6848a9948 100644 --- a/vid-webpack-master/src/app/instantiationStatus/instantiationStatus.component.service.ts +++ b/vid-webpack-master/src/app/instantiationStatus/instantiationStatus.component.service.ts @@ -122,19 +122,31 @@ export class InstantiationStatusComponentService { ['/servicePlanning/' + mode], { queryParams: - { - serviceModelId: item.serviceModelId, - serviceInstanceId: item.serviceInstanceId, - serviceType : item.serviceType, - subscriberId : item.subscriberId, - jobId: item.jobId - } + mode==DrawingBoardModes.RECREATE ? + this.getRecreateQueryParams(item) : + this.getDefaultViewEditQueryParams(item) }); } + private getDefaultViewEditQueryParams(item: ServiceInfoModel) { + return { + serviceModelId: item.serviceModelId, + serviceInstanceId: item.serviceInstanceId, + serviceType: item.serviceType, + subscriberId: item.subscriberId, + jobId: item.jobId + }; + } + + private getRecreateQueryParams(item: ServiceInfoModel) { + return { + serviceModelId: item.serviceModelId, + jobId: item.jobId + }; + } + getViewEditUrl(viewEditUrlTree:UrlTree): string { return '../../serviceModels.htm#' + viewEditUrlTree.toString(); - } getStatus(status : string) : ServiceStatus { @@ -162,6 +174,7 @@ export class InstantiationStatusComponentService { retry(item: ServiceInfoModel): void { this.navigateToNewViewEdit(item, DrawingBoardModes.RETRY_EDIT); } + } -- cgit 1.2.3-korg