diff options
Diffstat (limited to 'vid-webpack-master/src/app/shared/components/genericFormPopup/genericFormServices/vfModuleUpgrade/vfModule.upgrade.popup.service.spec.ts')
-rw-r--r-- | vid-webpack-master/src/app/shared/components/genericFormPopup/genericFormServices/vfModuleUpgrade/vfModule.upgrade.popup.service.spec.ts | 92 |
1 files changed, 68 insertions, 24 deletions
diff --git a/vid-webpack-master/src/app/shared/components/genericFormPopup/genericFormServices/vfModuleUpgrade/vfModule.upgrade.popup.service.spec.ts b/vid-webpack-master/src/app/shared/components/genericFormPopup/genericFormServices/vfModuleUpgrade/vfModule.upgrade.popup.service.spec.ts index 8d11caf5d..e20964d29 100644 --- a/vid-webpack-master/src/app/shared/components/genericFormPopup/genericFormServices/vfModuleUpgrade/vfModule.upgrade.popup.service.spec.ts +++ b/vid-webpack-master/src/app/shared/components/genericFormPopup/genericFormServices/vfModuleUpgrade/vfModule.upgrade.popup.service.spec.ts @@ -1,6 +1,6 @@ import {LogService} from "../../../../utils/log/log.service"; import {NgRedux} from "@angular-redux/store"; -import {BasicControlGenerator} from "../../../genericForm/formControlsServices/basic.control.generator"; +import {BasicControlGenerator, SDN_C_PRE_LOAD, SUPPLEMENTARY_FILE} from "../../../genericForm/formControlsServices/basic.control.generator"; import {AaiService} from "../../../../services/aaiService/aai.service"; import {HttpClient} from "@angular/common/http"; import {GenericFormService} from "../../../genericForm/generic-form.service"; @@ -26,8 +26,20 @@ class MockAppStore<T> {} class MockReduxStore<T> { getState() { - return {}; + return { + service: { + serviceInstance : { + serviceId : { + vnfs : { + vnfStoreKey : { + vfModules: { + vfModuleName: { + vfModuleId : { + supplementaryFileName: "myFileName" + }}}}}}}} + }; } + dispatch() {} } @@ -71,33 +83,53 @@ describe('VFModule popup service', () => { fb = injector.get(FormBuilder); iframeService = injector.get(IframeService); store = injector.get(NgRedux); + service.uuidData = { + modelName: 'vfModuleName', + vFModuleStoreKey: 'vfModuleId' + }; + })().then(done).catch(done.fail)); test('getTitle should return the correct title', () => { expect(service.getTitle()).toBe("Upgrade Module") }); - test('get controls should return retainAssignments control with true i', ()=> { + function findControlByName(controls, controlName) { + return controls.find((control) => { + return control.controlName === controlName; + }); + } + + function getControlByNameAndCheckValue(controlName, expectedValue ) { + const controls = service.getControls('serviceId', 'vnfStoreKey', 'vfModuleId', true); + const control = findControlByName(controls, controlName); + expect(control).toBeDefined(); + expect(control.value).toEqual(expectedValue); + } - const controls = service.getControls(); - expect(controls.length).toEqual(3); + test('get controls should return retainAssignments control with true value', ()=> { + getControlByNameAndCheckValue(UpgradeFormControlNames.RETAIN_ASSIGNMENTS, true); + }); - const retainAssignmentsControl = controls.find((control)=>{ - return control.controlName === UpgradeFormControlNames.RETAIN_ASSIGNMENTS; - }); + test('get controls should return retainVolumeGroup control with true value', ()=> { + getControlByNameAndCheckValue(UpgradeFormControlNames.RETAIN_VOLUME_GROUPS, true); + }); - expect(retainAssignmentsControl).toBeDefined(); - expect(retainAssignmentsControl.value).toBeTruthy(); + test('get controls should contain SUPPLEMENTARY_FILE controller', ()=> { - const retainVolumeGroup = controls.find((control)=>{ - return control.controlName === UpgradeFormControlNames.RETAIN_VOLUME_GROUPS; - }); + //when + const controls = service.getControls('serviceId', 'vnfStoreKey', 'vfModuleId', true); - expect(retainVolumeGroup).toBeDefined(); - expect(retainVolumeGroup.value).toBeTruthy(); + //then + const control = findControlByName(controls, SUPPLEMENTARY_FILE); + expect(control).toBeDefined(); + expect(control.selectedFile).toBe("myFileName"); }); test('on submit should call merge action of form value to vfModule', () => { + + //given + const serviceId = "serviceId5"; const vnfStoreKey = 'vnfStoreKey3'; const modelName = 'modelA'; @@ -125,10 +157,27 @@ describe('VFModule popup service', () => { let mockFrom: FormGroup = mock(FormGroup); let form = instance(mockFrom); - form.setValue({ + form.value = { a: "value", b: "another" - }); + }; + form.controls = { + supplementaryFile_hidden_content : { + value: '{"c": "c", "d": 1}' + }, + supplementaryFile_hidden : { + value: { + name: "name" + } + } + }; + + let expectedMergePayload = { + a: "value", + b: "another", + supplementaryFileContent: {c: "c", d: 1}, + supplementaryFileName: "name" + }; spyOn(store, 'dispatch'); @@ -137,7 +186,7 @@ describe('VFModule popup service', () => { //then expect(store.dispatch).toBeCalledWith( - {type: GeneralActions.MERGE_OBJECT_BY_PATH, path: ['serviceInstance', serviceId, 'vnfs', vnfStoreKey, 'vfModules',modelName, dynamicModelName], payload:form.value}); + {type: GeneralActions.MERGE_OBJECT_BY_PATH, path: ['serviceInstance', serviceId, 'vnfs', vnfStoreKey, 'vfModules',modelName, dynamicModelName], payload:expectedMergePayload}); expect(store.dispatch).toBeCalledWith( {type: VfModuleActions.UPGRADE_VFMODULE, dynamicModelName: "dynamicModel", modelName: "modelA", serviceId: "serviceId5", vnfStoreKey: "vnfStoreKey3"}); expect(store.dispatch).toBeCalledWith({type: ServiceActions.UPGRADE_SERVICE_ACTION, serviceUuid: "serviceId5"}); @@ -146,11 +195,6 @@ describe('VFModule popup service', () => { test( 'get controls should return usePreload with false value', () => { - const controls = service.getControls(); - const usePreloadControl = controls.find((control)=>{ - return control.controlName === 'sdncPreLoad'; - }); - expect(usePreloadControl).toBeDefined(); - expect(usePreloadControl.value).toBeFalsy(); + getControlByNameAndCheckValue(SDN_C_PRE_LOAD, false); }); }); |