2 CreateVFModuleInstanceAction,
3 DeleteActionVfModuleInstanceAction,
4 DeleteVfModuleInstanceAction,
5 UndoDeleteActionVfModuleInstanceAction,
6 UpdateVFModluePosition,
7 UpgradeVfModuleInstanceAction,
9 } from "./vfModule.actions";
10 import {vfModuleReducer} from "./vfModule.reducers";
11 import {VfModuleInstance} from "../../../models/vfModuleInstance";
12 import {ServiceInstanceActions} from "../../../models/serviceInstanceActions";
15 describe('vfModuleReducer', () => {
16 test('#REMOVE_VNF_MODULE_INSTANCE : should delete existing vnf module by dynamicModelName', () => {
17 let state = vfModuleReducer(<any>{serviceInstance : {
23 'dynamicModelName1': {},
24 'dynamicModelName2': {},
31 <DeleteVfModuleInstanceAction>{
32 type: VfModuleActions.REMOVE_VNF_MODULE_INSTANCE,
33 modelName : 'modelName',
35 vnfStoreKey : 'vfName',
36 serviceModelId : 'serviceModelId',
37 dynamicModelName: 'dynamicModelName1'
40 expect(state).toBeDefined();
41 expect(state.serviceInstance['serviceModelId'].vnfs['vfName'].vfModules['modelName']['dynamicModelName2']).toBeDefined();
42 expect(state.serviceInstance['serviceModelId'].vnfs['vfName'].vfModules['modelName']['dynamicModelName1']).not.toBeDefined();
45 test('#DELETE_LAST_VNF_MODULE_INSTANCE : should delete existing vnf module', () => {
46 let state = vfModuleReducer(<any>{serviceInstance : {
60 <DeleteVfModuleInstanceAction>{
61 type: VfModuleActions.REMOVE_VNF_MODULE_INSTANCE,
62 modelName : 'modelName',
64 vnfStoreKey : 'vfName',
65 serviceModelId : 'serviceModelId',
66 dynamicModelName: 'dynamicModelName'
69 expect(state).toBeDefined();
70 expect(state.serviceInstance['serviceModelId'].vnfs['vfName'].vfModules['modelName']).not.toBeDefined();
73 test('#CREATE_VF_MODULE: should create new vfModule to existing VNF', ()=>{
74 let vfModuleInstance : VfModuleInstance = new VfModuleInstance();
75 vfModuleInstance.instanceName = 'instanceName';
76 vfModuleInstance.isMissingData = false;
77 vfModuleInstance.volumeGroupName = 'volumeGroupName';
78 let vfModule = vfModuleReducer(<any>{serviceInstance : {
88 <CreateVFModuleInstanceAction>{
89 type: VfModuleActions.CREATE_VF_MODULE,
91 vfInstance : new VfModuleInstance(),
92 vnfStoreKey : 'vnfStoreKey',
93 serviceUuid : 'serviceUuid',
95 }).serviceInstance['serviceUuid'].vnfs['vnfStoreKey'].vfModules;
97 let firstVfModuleName = Object.keys(vfModule)[0];
98 expect(vfModule[firstVfModuleName]).toBeDefined();
99 expect(vfModule[firstVfModuleName].isMissingData).toBeFalsy();
102 test('#UPDATE_VF_MODULE: should update existing VFModule', ()=>{
103 let vfModuleInstance : VfModuleInstance = new VfModuleInstance();
104 vfModuleInstance.instanceName = 'instanceName';
105 vfModuleInstance.isMissingData = false;
106 vfModuleInstance.volumeGroupName = 'volumeGroupName';
107 let vfModule = vfModuleReducer(<any>{
109 'serviceModelId' : {}
117 'dynamicModelName1': {
120 'dynamicModelName2': {},
127 <CreateVFModuleInstanceAction>{
128 type: VfModuleActions.UPDATE_VF_MODULE,
130 vfInstance : new VfModuleInstance(),
131 vnfStoreKey : 'vfName',
132 dynamicModelName : 'dynamicModelName1',
133 serviceUuid : 'serviceModelId',
135 }).serviceInstance['serviceModelId'].vnfs['vfName'].vfModules;
137 let firstVfModuleName = Object.keys(vfModule)[0];
138 expect(vfModule[firstVfModuleName]).toBeDefined();
139 expect(vfModule[firstVfModuleName].isMissingData).toBeFalsy();
143 test('#UPDATE_VFMODULE_POSITION: should update position', ()=>{
144 let vfModule = vfModuleReducer(<any>{
146 'serviceModelId' : {}
154 'dynamicModelName': {
163 <UpdateVFModluePosition>{
164 type: VfModuleActions.UPDATE_VFMODULE_POSITION,
167 dynamicModelName : "dynamicModelName",
168 modelName : "modelName"
170 instanceId : "serviceModelId",
171 vnfStoreKey : "vfName"
173 }).serviceInstance['serviceModelId'].vnfs['vfName'].vfModules["modelName"]["dynamicModelName"];
175 expect(vfModule.position).toEqual(1);
179 test('#DELETE_ACTION_VF_MODULE_INSTANCE', ()=>{
180 let vfModule = vfModuleReducer(<any>{
182 'serviceModelId' : {}
190 'dynamicModelName1': {
191 isMissingData : true,
194 'dynamicModelName2': {},
201 <DeleteActionVfModuleInstanceAction>{
202 type: VfModuleActions.DELETE_ACTION_VF_MODULE_INSTANCE,
203 dynamicModelName: 'dynamicModelName1',
204 vnfStoreKey : 'vnfStoreKey',
205 serviceId: 'serviceModelId'
206 }).serviceInstance['serviceModelId'].vnfs['vnfStoreKey'].vfModules['modelName']['dynamicModelName1'];
208 console.log(vfModule.action);
209 expect(vfModule).toBeDefined();
210 expect(vfModule.isMissingData).toBeTruthy();
211 expect(vfModule.action).toEqual(ServiceInstanceActions.None_Delete);
214 test('#UNDO_DELETE_ACTION_VF_MODULE_INSTANCE', ()=>{
215 let vfModule = vfModuleReducer(<any>{
217 'serviceModelId' : {}
225 'dynamicModelName1': {
226 isMissingData : true,
227 action : 'None_Delete'
229 'dynamicModelName2': {},
236 <UndoDeleteActionVfModuleInstanceAction>{
237 type: VfModuleActions.UNDO_DELETE_ACTION_VF_MODULE_INSTANCE,
238 dynamicModelName: 'dynamicModelName1',
239 vnfStoreKey : 'vnfStoreKey',
240 serviceId: 'serviceModelId'
241 }).serviceInstance['serviceModelId'].vnfs['vnfStoreKey'].vfModules['modelName']['dynamicModelName1'];
243 console.log(vfModule.action);
244 expect(vfModule).toBeDefined();
245 expect(vfModule.action).toEqual(ServiceInstanceActions.None);
248 test('#UPGRADE_VFMODULE', ()=>{
249 let vfModule = vfModuleReducer(<any>{
251 'serviceModelId' : {}
259 'dynamicModelName1': {
260 isMissingData : true,
263 'dynamicModelName2': {},
270 <UpgradeVfModuleInstanceAction>{
271 type: VfModuleActions.UPGRADE_VFMODULE,
272 dynamicModelName: 'dynamicModelName1',
273 vnfStoreKey : 'vnfStoreKey',
274 serviceId: 'serviceModelId',
275 modelName: 'modelName'
276 }).serviceInstance['serviceModelId'].vnfs['vnfStoreKey'].vfModules['modelName']['dynamicModelName1'];
278 expect(vfModule.action).toEqual(ServiceInstanceActions.None_Upgrade);
281 test('#UNDO_UPGRADE_VFMODULE', ()=>{
282 let vfModule = vfModuleReducer(<any>{
284 'serviceModelId' : {}
292 'dynamicModelName1': {
293 isMissingData : true,
294 action : 'None_Upgrade'
296 'dynamicModelName2': {},
303 <UpgradeVfModuleInstanceAction>{
304 type: VfModuleActions.UNDO_UPGRADE_VFMODULE_ACTION,
305 dynamicModelName: 'dynamicModelName1',
306 vnfStoreKey : 'vnfStoreKey',
307 serviceId: 'serviceModelId',
308 modelName: 'modelName'
309 }).serviceInstance['serviceModelId'].vnfs['vnfStoreKey'].vfModules['modelName']['dynamicModelName1'];
311 expect(vfModule.action).toEqual(ServiceInstanceActions.None);