},
undoDelete: {
method: (node, serviceModelId) => {
- this._store.dispatch(undoDeleteVfModuleInstance(node.data.dynamicModelName, node.parent.data.vnfStoreKey, serviceModelId));
+ this._store.dispatch(undoDeleteVfModuleInstance(node.data.dynamicModelName, node.parent.data.vnfStoreKey, serviceModelId, node.data.modelName));
this._store.dispatch(deleteVFModuleField(node.data.modelName, node.parent.data.vnfStoreKey, node.data.servicedId ,node.data.dynamicModelName, 'retainAssignments'));
},
visible: (node) => this._sharedTreeService.shouldShowUndoDelete(node),
dynamicModelName: string;
vnfStoreKey : string;
serviceId?: string;
+ vfModuleModelName: string;
}
export const removeVfModuleInstance: ActionCreator<DeleteVfModuleInstanceAction> = (modelName, serviceModelId, vfName, vnfStoreKey, dynamicModelName) => ({
vfModuleModelName
});
-export const undoDeleteVfModuleInstance: ActionCreator<UndoDeleteActionVfModuleInstanceAction> = (dynamicModelName, vnfStoreKey, serviceId) => ({
+export const undoDeleteVfModuleInstance: ActionCreator<UndoDeleteActionVfModuleInstanceAction> = (dynamicModelName, vnfStoreKey, serviceId, vfModuleModelName) => ({
type: VfModuleActions.UNDO_DELETE_ACTION_VF_MODULE_INSTANCE,
dynamicModelName: dynamicModelName,
vnfStoreKey : vnfStoreKey,
- serviceId: serviceId
+ serviceId: serviceId,
+ vfModuleModelName
});
export const updateVFModulePosition: ActionCreator<UpdateVFModluePosition> = (node, instanceId, vnfStoreKey) => ({
});
each([
- ['for the first vfModule', 'dynamicModelName1', true],
- ['for the second vfModule', 'dynamicModelName2', true],
+ ['for the first vfModule', 'dynamicModelName1'],
+ ['for the second vfModule', 'dynamicModelName2'],
]).
-test('#DELETE_ACTION_VF_MODULE_INSTANCE %s', (description, dynamicModelName: string, isMissingData: boolean) => {
+test('#DELETE_ACTION_VF_MODULE_INSTANCE %s', (description, dynamicModelName: string) => {
let vfModule = vfModuleReducer(<any>getReduxState(), getDeleteActionVfModule(dynamicModelName))
.serviceInstance['serviceModelId'].vnfs['vnfStoreKey'].vfModules['vfModuleModelName'][dynamicModelName];
});
-test('#UNDO_DELETE_ACTION_VF_MODULE_INSTANCE', () => {
- let vfModule = vfModuleReducer(<any>{
- serviceHierarchy: {
- 'serviceModelId': {}
- },
- serviceInstance: {
- 'serviceModelId': {
- vnfs: {
- 'vnfStoreKey': {
- vfModules: {
- 'modelName': {
- 'dynamicModelName1': {
- isMissingData: true,
- action: 'None_Delete'
- },
- 'dynamicModelName2': {},
- }
- }
- }
- }
- }
- }
- },
- <UndoDeleteActionVfModuleInstanceAction>{
- type: VfModuleActions.UNDO_DELETE_ACTION_VF_MODULE_INSTANCE,
- dynamicModelName: 'dynamicModelName1',
- vnfStoreKey: 'vnfStoreKey',
- serviceId: 'serviceModelId'
- }).serviceInstance['serviceModelId'].vnfs['vnfStoreKey'].vfModules['modelName']['dynamicModelName1'];
+ each([
+ ['for the first vfModule', 'dynamicModelName1', true],
+ ['for the second vfModule', 'dynamicModelName2', true],
+ ]).
+test('#UNDO_DELETE_ACTION_VF_MODULE_INSTANCE %s', (description, dynamicModelName: string) => {
+ let vfModule = vfModuleReducer(<any>getDeleteRedux(), getUndoDeleteActionVfModule(dynamicModelName))
+ .serviceInstance['serviceModelId'].vnfs['vnfStoreKey'].vfModules['vfModuleModelName'][dynamicModelName];
expect(vfModule).toBeDefined();
expect(vfModule.action).toEqual(ServiceInstanceActions.None);
vfModuleModelName: 'vfModuleModelName',
}
}
+
+function getUndoDeleteActionVfModule(dynamicModelName?: string) {
+ return <UndoDeleteActionVfModuleInstanceAction>{
+ type: VfModuleActions.UNDO_DELETE_ACTION_VF_MODULE_INSTANCE,
+ dynamicModelName: dynamicModelName,
+ vnfStoreKey: 'vnfStoreKey',
+ serviceId: 'serviceModelId',
+ vfModuleModelName: 'vfModuleModelName',
+ }
+}
+
+function getDeleteRedux() {
+ return {
+ serviceHierarchy: {
+ 'serviceModelId': {}
+ },
+ serviceInstance: {
+ 'serviceModelId': {
+ vnfs: {
+ 'vnfStoreKey': {
+ vfModules: {
+ 'vfModuleModelName': {
+ 'dynamicModelName1': {
+ isMissingData: true,
+ action: 'None_Delete'
+ },
+ 'dynamicModelName2': {
+ isMissingData: true,
+ action: 'None_Delete'
+ },
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+}
});
return Object.assign({}, state);
}
case VfModuleActions.DELETE_ACTION_VF_MODULE_INSTANCE : {
- let deleteAction = (<DeleteActionVfModuleInstanceAction>action);
+ const deleteAction = (<DeleteActionVfModuleInstanceAction>action);
let newState = _.cloneDeep(state);
let vfModule = newState.serviceInstance[deleteAction.serviceId].vnfs[deleteAction.vnfStoreKey]
.vfModules[deleteAction.vfModuleModelName][deleteAction.dynamicModelName];
newState.serviceInstance[deleteAction.serviceId].vnfs[deleteAction.vnfStoreKey]
.vfModules[deleteAction.vfModuleModelName][deleteAction.dynamicModelName].action = (oldAction + '_Delete') as ServiceInstanceActions;
setLcpCloudRegionIdAndTenantIdFromVnf(newState, deleteAction.serviceId, deleteAction.vnfStoreKey, deleteAction.vfModuleModelName, deleteAction.dynamicModelName);
- updateIsMissingDataOnDeleteVFModule(newState, (<UndoDeleteActionVfModuleInstanceAction>action).serviceId, (<UndoDeleteActionVfModuleInstanceAction>action).vnfStoreKey, deleteAction.vfModuleModelName);
+ updateIsMissingDataOnDeleteVFModule(newState, deleteAction.serviceId, deleteAction.vnfStoreKey, deleteAction.vfModuleModelName);
return newState;
}
case VfModuleActions.UNDO_DELETE_ACTION_VF_MODULE_INSTANCE : {
+ const undoDeleteAction = (<UndoDeleteActionVfModuleInstanceAction>action);
let newState = _.cloneDeep(state);
- let vfModules = newState.serviceInstance[(<DeleteActionVfModuleInstanceAction>action).serviceId].vnfs[(<DeleteActionVfModuleInstanceAction>action).vnfStoreKey].vfModules;
-
- for(let key in vfModules){
- let firstKey = Object.keys(vfModules[key])[0];
- if(firstKey === (<UndoDeleteActionVfModuleInstanceAction>action).dynamicModelName){
- let oldAction = newState.serviceInstance[(<UndoDeleteActionVfModuleInstanceAction>action).serviceId].vnfs[(<UndoDeleteActionVfModuleInstanceAction>action).vnfStoreKey].vfModules[key][firstKey].action;
- newState.serviceInstance[(<UndoDeleteActionVfModuleInstanceAction>action).serviceId].vnfs[(<UndoDeleteActionVfModuleInstanceAction>action).vnfStoreKey].vfModules[key][firstKey].action = (oldAction.split('_')[0]) as ServiceInstanceActions;
- updateIsMissingDataOnDeleteVFModule(newState, (<UndoDeleteActionVfModuleInstanceAction>action).serviceId, (<UndoDeleteActionVfModuleInstanceAction>action).vnfStoreKey, key);
- return newState;
- }
- }
+ let vfModule = newState.serviceInstance[undoDeleteAction.serviceId].vnfs[undoDeleteAction.vnfStoreKey]
+ .vfModules[undoDeleteAction.vfModuleModelName][undoDeleteAction.dynamicModelName];
+
+ let oldAction = vfModule.action;
+ newState.serviceInstance[undoDeleteAction.serviceId].vnfs[undoDeleteAction.vnfStoreKey]
+ .vfModules[undoDeleteAction.vfModuleModelName][undoDeleteAction.dynamicModelName].action = (oldAction.split('_')[0]) as ServiceInstanceActions;
+ updateIsMissingDataOnDeleteVFModule(newState, undoDeleteAction.serviceId, undoDeleteAction.vnfStoreKey, undoDeleteAction.vfModuleModelName);
return newState;
}