1 import {VnfInstance} from "../../../models/vnfInstance";
3 CreateVnfInstanceAction,
4 RemoveVnfInstanceAction,
5 UpdateVnfPosition, UpgradeVnfAction,
7 } from "./vnf.actions";
8 import {vnfReducer} from "./vnf.reducers";
9 import {ServiceInstanceActions} from "../../../models/serviceInstanceActions";
10 import {ActionOnFirstLevel} from "../firstLevel/firstLevel.actions";
12 describe('vnfReducer', () => {
13 test('#UPDATE_VNF_POSITION', () => {
14 let vnfInstance: VnfInstance = new VnfInstance();
15 vnfInstance.isMissingData = false;
16 vnfInstance.instanceName = 'instanceName';
17 let vnfState = vnfReducer(<any>{
28 type: VNFActions.UPDATE_VNF_POSITION,
32 vnfStoreKey : 'vnfStoreKey',
33 instanceId : 'serviceModelId'
34 }).serviceInstance['serviceModelId'].vnfs['vnfStoreKey'];
36 expect(vnfState).toBeDefined();
37 expect(vnfState.position).toEqual(1);
40 test('#CREATE_NETWORK_INSTANCE', () => {
41 let vnfInstance: VnfInstance = new VnfInstance();
42 vnfInstance.isMissingData = false;
43 vnfInstance.instanceName = 'instanceName';
44 let vnfState = vnfReducer(<any>{serviceInstance : {
51 <CreateVnfInstanceAction>{
52 type: VNFActions.CREATE_VNF_INSTANCE,
53 vnfInstance : vnfInstance,
55 vnfModelName : 'vnfModelName',
56 serviceUuid : 'serviceModelId'
57 }).serviceInstance['serviceModelId'].vnfs['vnfModelName'];
59 expect(vnfState).toBeDefined();
60 expect(vnfState.isMissingData).toBeFalsy();
63 test('#DELETE_ACTION_VNF_INSTANCE', () => {
64 let vnfState = vnfReducer(<any>{serviceInstance : {
75 type: VNFActions.DELETE_ACTION_VNF_INSTANCE,
76 firstLevelName: 'vnfs',
77 storeKey: 'vnfStoreKey',
78 serviceId: 'serviceModelId'
79 }).serviceInstance['serviceModelId'].vnfs['vnfStoreKey'];
81 expect(vnfState).toBeDefined();
82 expect(vnfState.action).toEqual(ServiceInstanceActions.None_Delete);
85 test('#UNDO_DELETE_ACTION_VNF_INSTANCE', () => {
86 let vnfState = vnfReducer(<any>{serviceInstance : {
91 action : 'Update_Delete'
97 type: VNFActions.UNDO_DELETE_ACTION_VNF_INSTANCE,
98 storeKey: 'vnfStoreKey',
99 firstLevelName: 'vnfs',
100 serviceId: 'serviceModelId'
101 }).serviceInstance['serviceModelId'].vnfs['vnfStoreKey'];
103 expect(vnfState).toBeDefined();
104 expect(vnfState.action).toEqual(ServiceInstanceActions.Update);
107 test('#REMOVE_VNF_INSTANCE', () => {
108 let vnfs = vnfReducer(<any>{serviceInstance : {
112 isMissingData : true,
113 action : 'Update_Delete'
116 isMissingData : true,
117 action : 'Update_Delete'
122 <RemoveVnfInstanceAction>{
123 type: VNFActions.REMOVE_VNF_INSTANCE,
124 vnfStoreKey: 'vnfStoreKey',
125 serviceId: 'serviceModelId'
126 }).serviceInstance['serviceModelId'].vnfs;
128 expect(vnfs).toBeDefined();
129 expect(vnfs['vnfStoreKey']).toBeUndefined();
132 test('#UPGRADE_VNF_ACTION', () => {
133 const vnfStoreKey: string = 'vnfStoreKey';
134 const serviceModelId: string = 'serviceModelId';
135 let vnfs = vnfReducer(<any>{serviceInstance : {
139 isMissingData : true,
146 type: VNFActions.UPGRADE_VNF_ACTION,
147 vnfStoreKey: vnfStoreKey,
148 serviceUuid: serviceModelId
149 }).serviceInstance[serviceModelId].vnfs[vnfStoreKey];
151 expect(vnfs).toBeDefined();
152 expect(vnfs[vnfStoreKey]).toBeUndefined();
154 test('#UNDO_UPGRADE_VNF_ACTION', () => {
155 const vnfStoreKey: string = 'vnfStoreKey';
156 const serviceModelId: string = 'serviceModelId';
157 let vnfs = vnfReducer(<any>{serviceInstance : {
161 isMissingData : true,
162 action : 'None_Upgrade'
168 type: VNFActions.UNDO_UPGRADE_VNF_ACTION,
169 vnfStoreKey: vnfStoreKey,
170 serviceUuid: serviceModelId
171 }).serviceInstance[serviceModelId].vnfs[vnfStoreKey];
173 expect(vnfs).toBeDefined();
174 expect(vnfs[vnfStoreKey]).toBeUndefined();