Update op policy UI 22/99822/1
authorxuegao <xg353y@intl.att.com>
Thu, 19 Dec 2019 10:58:45 +0000 (11:58 +0100)
committerxuegao <xg353y@intl.att.com>
Thu, 19 Dec 2019 15:05:40 +0000 (16:05 +0100)
Change the React UI accordingly so that we read OperationalPolicy Object

Issue-ID: CLAMP-583
Change-Id: Ifd14a7eb115dc75acb35f1e7591ee383066a45f1
Signed-off-by: xuegao <xg353y@intl.att.com>
ui-react/src/api/LoopCache.js
ui-react/src/api/LoopCache.test.js
ui-react/src/api/LoopCache_mokeLoopJsonCache.json
ui-react/src/components/dialogs/OperationalPolicy/OperationalPolicyModal.js
ui-react/src/components/dialogs/OperationalPolicy/OperationalPolicyModal.test.js

index 95eb931..c73ed62 100644 (file)
@@ -53,13 +53,19 @@ export default class LoopCache {
        }
        
        getOperationalPolicyJsonSchema() {
-               return this.loopJsonCache["operationalPolicySchema"];
+               return this.loopJsonCache["operationalPolicies"]["0"]["jsonRepresentation"];
        }
 
        getOperationalPolicies() {
                return this.loopJsonCache["operationalPolicies"];
        }
 
+       getOperationalPoliciesNoJsonSchema() {
+               var operationalPolicies = JSON.parse(JSON.stringify(this.loopJsonCache["operationalPolicies"]));
+               delete operationalPolicies[0]["jsonRepresentation"];
+               return operationalPolicies;
+       }
+
        getGlobalProperties() {
                return this.loopJsonCache["globalPropertiesJson"];
        }
index f67bc0a..471fa4d 100644 (file)
@@ -49,13 +49,36 @@ describe('Verify LoopCache functions', () => {
           "operational_policy": {
             "controlLoop": {},
             "policies": []
+          }
+        },
+       "jsonRepresentation": {
+        "schema": {}
+      }
+      }];
+      expect(loopCache.getOperationalPolicies()).toStrictEqual(opPolicy);
+    });
 
+    it('getOperationalPoliciesNoJsonSchema', () => {
+      const opPolicy = [{
+        "name": "OPERATIONAL_h2NMX_v1_0_ResourceInstanceName1_tca",
+        "configurationsJson": {
+          "guard_policies": {},
+          "operational_policy": {
+            "controlLoop": {},
+            "policies": []
           }
         }
       }];
-      expect(loopCache.getOperationalPolicies()).toStrictEqual(opPolicy);
+      expect(loopCache.getOperationalPoliciesNoJsonSchema()).toStrictEqual(opPolicy);
     });
 
+    it('getOperationalPolicyJsonSchema', () => {
+      const jsonSchema = {
+          "schema": {}
+      };
+
+      expect(loopCache.getOperationalPolicyJsonSchema()).toStrictEqual(jsonSchema);
+    });
     it('getGlobalProperties', () => {
       const globelProp = {
         "dcaeDeployParameters": {
index c84b5b6..087ab5d 100644 (file)
@@ -93,6 +93,9 @@
           "controlLoop": {},
           "policies": []
         }
+      },
+      "jsonRepresentation": {
+        "schema": {}
       }
     }
   ],
index 5c5f024..c7363f6 100644 (file)
@@ -114,7 +114,7 @@ export default class OperationalPolicyModal extends React.Component {
                        console.error("NO Operational policy schema found");
                        return;
                }
-               var operationalPoliciesData = this.state.loopCache.getOperationalPolicies();
+               var operationalPoliciesData = this.state.loopCache.getOperationalPoliciesNoJsonSchema();
 
                this.setState({
                                jsonEditor: new JSONEditor(document.getElementById("editor"),
index 9c7da31..522a3f6 100644 (file)
@@ -46,9 +46,9 @@ describe('Verify OperationalPolicyModal', () => {
                         "controlLoop": {},
                         "policies": []
                     }
-                }
-             }],
-            "operationalPolicySchema": {"schema": {}}
+                },
+                "jsonRepresentation" : {"schema": {}}
+             }]
     });
     const historyMock = { push: jest.fn() };
     const flushPromises = () => new Promise(setImmediate);