Merge "Translate owning entity name to owning entity ID - update api test to except...
authorIttay Stern <ittay.stern@att.com>
Thu, 13 Feb 2020 16:44:01 +0000 (16:44 +0000)
committerGerrit Code Review <gerrit@onap.org>
Thu, 13 Feb 2020 16:44:01 +0000 (16:44 +0000)
vid-webpack-master/src/app/drawingBoard/service-planning/objectsToTree/shared.tree.service.spec.ts
vid-webpack-master/src/app/drawingBoard/service-planning/objectsToTree/shared.tree.service.ts

index 8905d41..3499377 100644 (file)
@@ -80,6 +80,7 @@ describe('Shared Tree Service', () => {
   let service: SharedTreeService;
   let _objectToInstanceTreeService: ObjectToInstanceTreeService;
   let store: NgRedux<AppState>;
+
   beforeAll(done => (async () => {
     TestBed.configureTestingModule({
       imports: [HttpClientTestingModule, NgReduxTestingModule, SdcUiComponentsModule],
@@ -392,6 +393,34 @@ describe('Shared Tree Service', () => {
     expect(isDiffCustomizationUuidResponse).toEqual(expected);
   });
 
+  each([
+    [false, true, true, false],
+    [true, true, true, true],
+    [true, true, false, true],
+    [true, false, true, true],
+    [true, false, false, false],
+  ]).
+  test('when flag is %s the UpdatedLatestVersion is %s and Vfmodule CustomizationUuid Differ is %s isShouldShowButtonGenericMustToBeCalled should return %s', (
+     flag: boolean,
+     isThereAnUpdatedLatestVersion: boolean,
+     isVfmoduleAlmostPartOfModelOnlyCustomizationUuidDiffer: boolean,
+     isShouldShowButtonGenericMustToBeCalled: boolean
+     ) => {
+      let node = <any>  {};
+      let serviceModelId : string = '08c5fa17-769a-4231-bd92-aed4b0ed086d';
+      jest.spyOn(store, 'getState').mockReturnValue(<any>{
+        global: {
+          "flags": {
+            "FLAG_FLASH_REPLACE_VF_MODULE": flag,
+          },
+        }
+      });
+      spyOn(service, 'isThereAnUpdatedLatestVersion').and.returnValue(isThereAnUpdatedLatestVersion);
+      spyOn(service, 'isVfmoduleAlmostPartOfModelOnlyCustomizationUuidDiffer').and.returnValue(isVfmoduleAlmostPartOfModelOnlyCustomizationUuidDiffer);
+
+      expect(service.isVfMoudleCouldBeUpgraded(node, serviceModelId)).toEqual(isShouldShowButtonGenericMustToBeCalled);
+    });
+
 });
 
 function getStore() {
index 9e7a021..de859e4 100644 (file)
@@ -216,13 +216,13 @@ export class SharedTreeService {
    * should return true if customer can upgrade a VFM *
    ****************************************************/
   shouldShowUpgrade(node, serviceModelId): boolean {
-    if (FeatureFlagsService.getFlagState(Features.FLAG_FLASH_REPLACE_VF_MODULE, this._store) &&
-      (this.isThereAnUpdatedLatestVersion(serviceModelId)) || this.isVfmoduleAlmostPartOfModelOnlyCustomizationUuidDiffer(node, serviceModelId)) {
-      return this.shouldShowButtonGeneric(node, VNFMethods.UPGRADE, serviceModelId);
-    }
-    else {
-      return false
+      return (this.isVfMoudleCouldBeUpgraded(node, serviceModelId))
+        && this.shouldShowButtonGeneric(node, VNFMethods.UPGRADE, serviceModelId) ;
     }
+
+  isVfMoudleCouldBeUpgraded(node, serviceModelId): boolean{
+    return (FeatureFlagsService.getFlagState(Features.FLAG_FLASH_REPLACE_VF_MODULE, this._store) &&
+      ((this.isThereAnUpdatedLatestVersion(serviceModelId)) || this.isVfmoduleAlmostPartOfModelOnlyCustomizationUuidDiffer(node, serviceModelId)))
   }