X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=models-tosca%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fpolicy%2Fmodels%2Ftosca%2Fsimple%2Fserialization%2FMonitoringPolicySerializationTest.java;h=4e491fde33a65a6f617a2f9c934ad58d3475a4e6;hb=6a75c3cd6b96a8ceef4ba02cf13832f88a15e352;hp=5f0cbb355eaf644607a3e662016b820e2b0ea025;hpb=0ac03692ecd0fbe69660b1246ca0c1fbac53e623;p=policy%2Fmodels.git diff --git a/models-tosca/src/test/java/org/onap/policy/models/tosca/simple/serialization/MonitoringPolicySerializationTest.java b/models-tosca/src/test/java/org/onap/policy/models/tosca/simple/serialization/MonitoringPolicySerializationTest.java index 5f0cbb355..4e491fde3 100644 --- a/models-tosca/src/test/java/org/onap/policy/models/tosca/simple/serialization/MonitoringPolicySerializationTest.java +++ b/models-tosca/src/test/java/org/onap/policy/models/tosca/simple/serialization/MonitoringPolicySerializationTest.java @@ -1,7 +1,7 @@ /*- * ============LICENSE_START======================================================= - * Copyright (C) 2019 Nordix Foundation. - * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2019-2020 Nordix Foundation. + * Copyright (C) 2019-2020,2022 AT&T Intellectual Property. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,26 +21,25 @@ package org.onap.policy.models.tosca.simple.serialization; +import static org.assertj.core.api.Assertions.assertThatCode; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; import com.google.gson.JsonArray; import com.google.gson.JsonObject; import com.google.gson.JsonParser; - import java.util.Map; -import org.junit.Before; import org.junit.Test; import org.onap.policy.common.utils.coder.CoderException; import org.onap.policy.common.utils.coder.StandardCoder; +import org.onap.policy.common.utils.coder.YamlJsonTranslator; import org.onap.policy.common.utils.resources.ResourceUtils; import org.onap.policy.models.base.PfConceptKey; -import org.onap.policy.models.base.PfValidationResult; import org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplate; import org.onap.policy.models.tosca.simple.concepts.JpaToscaPolicy; import org.onap.policy.models.tosca.simple.concepts.JpaToscaServiceTemplate; +import org.onap.policy.models.tosca.utils.ToscaServiceTemplateUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.yaml.snakeyaml.Yaml; @@ -53,6 +52,35 @@ import org.yaml.snakeyaml.Yaml; */ public class MonitoringPolicySerializationTest { + private static final String VERSION = "version"; + + private static final String YAML_VERSION = "tosca_simple_yaml_1_1_0"; + + private static final String DEFINITION_VERSION = "tosca_definitions_version"; + + private static final String TOPOLOGY_TEMPLATE = "topology_template"; + + private static final String TCA_POLICY = "tca.policy"; + + private static final String PROPERTIES2 = "properties"; + + private static final String POLICY_ID = "policy-id"; + + private static final String POLICIES = "policies"; + + private static final String POLICY3 = "onap.vfirewall.tca"; + + private static final String POLICY2 = "onap.scaleout.tca"; + + private static final String POLICY1 = "onap.restart.tca"; + + private static final String TYPE1 = "onap.policies.monitoring.tcagen2"; + + private static final String METADATA = "metadata"; + + private static final String VERSION_100 = "1.0.0"; + private static final String VERSION_200 = "2.0.0"; + private static final Logger LOGGER = LoggerFactory.getLogger(MonitoringPolicySerializationTest.class); private static final String VCPE_MON_INPUT_JSON = "policies/vCPE.policy.monitoring.input.tosca.json"; @@ -61,44 +89,52 @@ public class MonitoringPolicySerializationTest { private static final String VDNS_MON_INPUT_YAML = "policies/vDNS.policy.monitoring.input.tosca.yaml"; private static final String VFW_MON_INPUT_JSON = "policies/vFirewall.policy.monitoring.input.tosca.json"; private static final String VFW_MON_INPUT_YAML = "policies/vFirewall.policy.monitoring.input.tosca.yaml"; + private static final String VFW_MON_INPUT_V2_JSON = "policies/vFirewall.policy.monitoring.input.tosca.v2.json"; + private static final String VFW_MON_INPUT_V2_YAML = "policies/vFirewall.policy.monitoring.input.tosca.v2.yaml"; - private StandardCoder standardCoder; - - @Before - public void setUp() { - standardCoder = new StandardCoder(); - } + private final StandardCoder standardCoder = new StandardCoder(); + private final YamlJsonTranslator yamlJsonTranslator = new YamlJsonTranslator(); @Test - public void testDeserialization() { - try { - // vCPE - JpaToscaServiceTemplate serviceTemplateFromJson = deserializeMonitoringInputJson(VCPE_MON_INPUT_JSON); - verifyVcpeMonitoringInputDeserialization(serviceTemplateFromJson); - JpaToscaServiceTemplate serviceTemplateFromYaml = deserializeMonitoringInputYaml(VCPE_MON_INPUT_YAML); - assertTrue(serviceTemplateFromJson.compareTo(serviceTemplateFromYaml) == 0); - - // vDNS - serviceTemplateFromJson = deserializeMonitoringInputJson(VDNS_MON_INPUT_JSON); - verifyVdnsMonitoringInputDeserialization(serviceTemplateFromJson); - serviceTemplateFromYaml = deserializeMonitoringInputYaml(VDNS_MON_INPUT_YAML); - assertTrue(serviceTemplateFromJson.compareTo(serviceTemplateFromYaml) == 0); - - // vFirewall - serviceTemplateFromJson = deserializeMonitoringInputJson(VFW_MON_INPUT_JSON); - verifyVfwMonitoringInputDeserialization(serviceTemplateFromJson); - serviceTemplateFromYaml = deserializeMonitoringInputYaml(VFW_MON_INPUT_YAML); - assertTrue(serviceTemplateFromJson.compareTo(serviceTemplateFromYaml) == 0); - - } catch (Exception e) { - LOGGER.warn("No exception should be thrown", e); - fail("No exception should be thrown"); - } + public void testDeserialization() throws Exception { + String policyTypeInputJson = + ResourceUtils.getResourceAsString("policytypes/onap.policies.monitoring.tcagen2.yaml"); + ToscaServiceTemplate plainPolicyTypes = + yamlJsonTranslator.fromYaml(policyTypeInputJson, ToscaServiceTemplate.class); + + JpaToscaServiceTemplate policyTypeServiceTemplate = new JpaToscaServiceTemplate(); + policyTypeServiceTemplate.fromAuthorative(plainPolicyTypes); + + // vCPE + JpaToscaServiceTemplate serviceTemplateFromJson = deserializeMonitoringInputJson(VCPE_MON_INPUT_JSON); + JpaToscaServiceTemplate mergedServiceTemplate = + ToscaServiceTemplateUtils.addFragment(policyTypeServiceTemplate, serviceTemplateFromJson); + verifyVcpeMonitoringInputDeserialization(mergedServiceTemplate); + JpaToscaServiceTemplate serviceTemplateFromYaml = deserializeMonitoringInputYaml(VCPE_MON_INPUT_YAML); + assertEquals(0, serviceTemplateFromJson.compareTo(serviceTemplateFromYaml)); + + // vDNS + serviceTemplateFromJson = deserializeMonitoringInputJson(VDNS_MON_INPUT_JSON); + mergedServiceTemplate = + ToscaServiceTemplateUtils.addFragment(policyTypeServiceTemplate, serviceTemplateFromJson); + verifyVdnsMonitoringInputDeserialization(mergedServiceTemplate); + serviceTemplateFromYaml = deserializeMonitoringInputYaml(VDNS_MON_INPUT_YAML); + assertEquals(0, serviceTemplateFromJson.compareTo(serviceTemplateFromYaml)); + + // vFirewall + serviceTemplateFromJson = deserializeMonitoringInputJson(VFW_MON_INPUT_JSON); + mergedServiceTemplate = + ToscaServiceTemplateUtils.addFragment(policyTypeServiceTemplate, serviceTemplateFromJson); + verifyVfwMonitoringInputDeserialization(mergedServiceTemplate, VERSION_100); + serviceTemplateFromYaml = deserializeMonitoringInputYaml(VFW_MON_INPUT_YAML); + assertEquals(0, serviceTemplateFromJson.compareTo(serviceTemplateFromYaml)); + + testDeserializationMonitoringV2(); } @Test public void testSerialization() { - try { + assertThatCode(() -> { // vCPE JpaToscaServiceTemplate serviceTemplate = deserializeMonitoringInputJson(VCPE_MON_INPUT_JSON); String serializedServiceTemplate = serializeMonitoringServiceTemplate(serviceTemplate); @@ -112,17 +148,34 @@ public class MonitoringPolicySerializationTest { // vFirewall serviceTemplate = deserializeMonitoringInputJson(VFW_MON_INPUT_JSON); serializedServiceTemplate = serializeMonitoringServiceTemplate(serviceTemplate); - verifyVfwMonitoringOutputserialization(serializedServiceTemplate); + verifyVfwMonitoringOutputserialization(serializedServiceTemplate, VERSION_100); - } catch (Exception e) { - LOGGER.warn("No exception should be thrown", e); - fail("No exception should be thrown"); - } + // vFirewall v2 + serviceTemplate = deserializeMonitoringInputJson(VFW_MON_INPUT_V2_JSON); + serializedServiceTemplate = serializeMonitoringServiceTemplate(serviceTemplate); + verifyVfwMonitoringOutputserialization(serializedServiceTemplate, VERSION_200); + }).as("No exception should be thrown").doesNotThrowAnyException(); } - private JpaToscaServiceTemplate deserializeMonitoringInputJson(String resourcePath) - throws Exception { + private void testDeserializationMonitoringV2() throws Exception { + String policyTypeInputJson = + ResourceUtils.getResourceAsString("policytypes/onap.policies.monitoring.tcagen2.v2.yaml"); + ToscaServiceTemplate plainPolicyTypes = + yamlJsonTranslator.fromYaml(policyTypeInputJson, ToscaServiceTemplate.class); + + JpaToscaServiceTemplate policyTypeServiceTemplate = new JpaToscaServiceTemplate(); + policyTypeServiceTemplate.fromAuthorative(plainPolicyTypes); + + JpaToscaServiceTemplate serviceTemplateFromJson = deserializeMonitoringInputJson(VFW_MON_INPUT_V2_JSON); + JpaToscaServiceTemplate mergedServiceTemplate = + ToscaServiceTemplateUtils.addFragment(policyTypeServiceTemplate, serviceTemplateFromJson); + verifyVfwMonitoringInputDeserialization(mergedServiceTemplate, VERSION_200); + + JpaToscaServiceTemplate serviceTemplateFromYaml = deserializeMonitoringInputYaml(VFW_MON_INPUT_V2_YAML); + assertEquals(0, serviceTemplateFromJson.compareTo(serviceTemplateFromYaml)); + } + private JpaToscaServiceTemplate deserializeMonitoringInputJson(String resourcePath) throws Exception { String policyJson = ResourceUtils.getResourceAsString(resourcePath); ToscaServiceTemplate serviceTemplate = standardCoder.decode(policyJson, ToscaServiceTemplate.class); JpaToscaServiceTemplate jpaToscaServiceTemplate = new JpaToscaServiceTemplate(); @@ -130,8 +183,7 @@ public class MonitoringPolicySerializationTest { return jpaToscaServiceTemplate; } - private JpaToscaServiceTemplate deserializeMonitoringInputYaml(String resourcePath) - throws Exception { + private JpaToscaServiceTemplate deserializeMonitoringInputYaml(String resourcePath) throws Exception { Yaml yaml = new Yaml(); String policyYaml = ResourceUtils.getResourceAsString(resourcePath); @@ -152,32 +204,31 @@ public class MonitoringPolicySerializationTest { // Sanity check the entire structure assertNotNull(serviceTemplate); - LOGGER.info(serviceTemplate.validate(new PfValidationResult()).toString()); - assertTrue(serviceTemplate.validate(new PfValidationResult()).isValid()); + LOGGER.info(serviceTemplate.validate("").toString()); + assertTrue(serviceTemplate.validate("").isValid()); // Check tosca_definitions_version - assertEquals("tosca_simple_yaml_1_0_0", - serviceTemplate.getToscaDefinitionsVersion()); + assertEquals(YAML_VERSION, serviceTemplate.getToscaDefinitionsVersion()); - Map policiesConceptMap = serviceTemplate.getTopologyTemplate() - .getPolicies().getConceptMap(); + Map policiesConceptMap = + serviceTemplate.getTopologyTemplate().getPolicies().getConceptMap(); // Check policies - assertTrue(policiesConceptMap.size() == 1); - assertEquals("onap.restart.tca", policiesConceptMap.keySet().iterator().next().getName()); + assertEquals(1, policiesConceptMap.size()); + assertEquals(POLICY1, policiesConceptMap.keySet().iterator().next().getName()); assertEquals("onap.restart.tca:1.0.0", - serviceTemplate.getTopologyTemplate().getPolicies().get("onap.restart.tca").getId()); + serviceTemplate.getTopologyTemplate().getPolicies().get(POLICY1).getId()); JpaToscaPolicy policyVal = policiesConceptMap.values().iterator().next(); // Check metadata - assertTrue(policyVal.getMetadata().size() == 1); - assertEquals("policy-id", policyVal.getMetadata().entrySet().iterator().next().getKey()); - assertEquals("onap.restart.tca", policyVal.getMetadata().entrySet().iterator().next().getValue()); + assertEquals(2, policyVal.getMetadata().size()); + assertEquals(POLICY_ID, policyVal.getMetadata().entrySet().iterator().next().getKey()); + assertEquals(POLICY1, policyVal.getMetadata().entrySet().iterator().next().getValue()); // Check properties - assertTrue(policiesConceptMap.values().iterator().next().getProperties().size() == 1); - assertEquals("tca_policy", policyVal.getProperties().keySet().iterator().next()); + assertEquals(1, policiesConceptMap.values().iterator().next().getProperties().size()); + assertEquals(TCA_POLICY, policyVal.getProperties().keySet().iterator().next()); assertNotNull(policyVal.getProperties().values().iterator().next()); } @@ -185,123 +236,114 @@ public class MonitoringPolicySerializationTest { // Sanity check the entire structure assertNotNull(serviceTemplate); - LOGGER.info(serviceTemplate.validate(new PfValidationResult()).toString()); - assertTrue(serviceTemplate.validate(new PfValidationResult()).isValid()); + LOGGER.info(serviceTemplate.validate("").toString()); + assertTrue(serviceTemplate.validate("").isValid()); // Check tosca_definitions_version - assertEquals("tosca_simple_yaml_1_0_0", - serviceTemplate.getToscaDefinitionsVersion()); + assertEquals(YAML_VERSION, serviceTemplate.getToscaDefinitionsVersion()); - Map policiesConceptMap = serviceTemplate.getTopologyTemplate() - .getPolicies().getConceptMap(); + Map policiesConceptMap = + serviceTemplate.getTopologyTemplate().getPolicies().getConceptMap(); // Check policies - assertTrue(policiesConceptMap.size() == 1); - assertEquals("onap.scaleout.tca", policiesConceptMap.keySet().iterator().next().getName()); + assertEquals(1, policiesConceptMap.size()); + assertEquals(POLICY2, policiesConceptMap.keySet().iterator().next().getName()); assertEquals("onap.scaleout.tca:1.0.0", - serviceTemplate.getTopologyTemplate().getPolicies().get("onap.scaleout.tca").getId()); + serviceTemplate.getTopologyTemplate().getPolicies().get(POLICY2).getId()); JpaToscaPolicy policyVal = policiesConceptMap.values().iterator().next(); // Check metadata - assertTrue(policyVal.getMetadata().size() == 1); - assertEquals("policy-id", policyVal.getMetadata().entrySet().iterator().next().getKey()); - assertEquals("onap.scaleout.tca", policyVal.getMetadata().entrySet().iterator().next().getValue()); + assertEquals(2, policyVal.getMetadata().size()); + assertEquals(POLICY_ID, policyVal.getMetadata().entrySet().iterator().next().getKey()); + assertEquals(POLICY2, policyVal.getMetadata().entrySet().iterator().next().getValue()); // Check properties - assertTrue(policiesConceptMap.values().iterator().next().getProperties().size() == 1); - assertEquals("tca_policy", policyVal.getProperties().keySet().iterator().next()); + assertEquals(1, policiesConceptMap.values().iterator().next().getProperties().size()); + assertEquals(TCA_POLICY, policyVal.getProperties().keySet().iterator().next()); assertNotNull(policyVal.getProperties().values().iterator().next()); } - private void verifyVfwMonitoringInputDeserialization(JpaToscaServiceTemplate serviceTemplate) { + private void verifyVfwMonitoringInputDeserialization(JpaToscaServiceTemplate serviceTemplate, String version) { // Sanity check the entire structure assertNotNull(serviceTemplate); - LOGGER.info(serviceTemplate.validate(new PfValidationResult()).toString()); - assertTrue(serviceTemplate.validate(new PfValidationResult()).isValid()); + LOGGER.info(serviceTemplate.validate("").toString()); + assertTrue(serviceTemplate.validate("").isValid()); // Check tosca_definitions_version - assertEquals("tosca_simple_yaml_1_0_0", - serviceTemplate.getToscaDefinitionsVersion()); + assertEquals(YAML_VERSION, serviceTemplate.getToscaDefinitionsVersion()); - Map policiesConceptMap = serviceTemplate.getTopologyTemplate() - .getPolicies().getConceptMap(); + Map policiesConceptMap = + serviceTemplate.getTopologyTemplate().getPolicies().getConceptMap(); // Check policies - assertTrue(policiesConceptMap.size() == 1); - assertEquals("onap.vfirewall.tca", policiesConceptMap.keySet().iterator().next().getName()); - assertEquals("onap.vfirewall.tca:1.0.0", - serviceTemplate.getTopologyTemplate().getPolicies().get("onap.vfirewall.tca").getId()); + assertEquals(1, policiesConceptMap.size()); + assertEquals(POLICY3, policiesConceptMap.keySet().iterator().next().getName()); + assertEquals("onap.vfirewall.tca:" + version, + serviceTemplate.getTopologyTemplate().getPolicies().get(POLICY3).getId()); JpaToscaPolicy policyVal = policiesConceptMap.values().iterator().next(); // Check metadata - assertTrue(policyVal.getMetadata().size() == 1); - assertEquals("policy-id", policyVal.getMetadata().entrySet().iterator().next().getKey()); - assertEquals("onap.vfirewall.tca", policyVal.getMetadata().entrySet().iterator().next().getValue()); + assertEquals(2, policyVal.getMetadata().size()); + assertEquals(POLICY_ID, policyVal.getMetadata().entrySet().iterator().next().getKey()); + assertEquals(POLICY3, policyVal.getMetadata().entrySet().iterator().next().getValue()); // Check properties - assertTrue(policiesConceptMap.values().iterator().next().getProperties().size() == 1); - assertEquals("tca_policy", policyVal.getProperties().keySet().iterator().next()); + assertEquals(1, policiesConceptMap.values().iterator().next().getProperties().size()); + assertEquals(TCA_POLICY, policyVal.getProperties().keySet().iterator().next()); assertNotNull(policyVal.getProperties().values().iterator().next()); } private void verifyVcpeMonitoringOutputserialization(String serializedServiceTemplate) { - JsonObject serviceTemplateJsonObject = new JsonParser().parse(serializedServiceTemplate).getAsJsonObject(); - assertEquals("tosca_simple_yaml_1_0_0", serviceTemplateJsonObject.get("tosca_definitions_version") - .getAsString()); - JsonObject topologyTemplateJsonObject = serviceTemplateJsonObject.get("topology_template") - .getAsJsonObject(); - JsonArray policiesJsonArray = topologyTemplateJsonObject.get("policies").getAsJsonArray(); - assertTrue(policiesJsonArray.size() == 1); + JsonObject serviceTemplateJsonObject = JsonParser.parseString(serializedServiceTemplate).getAsJsonObject(); + assertEquals(YAML_VERSION, serviceTemplateJsonObject.get(DEFINITION_VERSION).getAsString()); + JsonObject topologyTemplateJsonObject = serviceTemplateJsonObject.get(TOPOLOGY_TEMPLATE).getAsJsonObject(); + JsonArray policiesJsonArray = topologyTemplateJsonObject.get(POLICIES).getAsJsonArray(); + assertEquals(1, policiesJsonArray.size()); JsonObject policy = policiesJsonArray.iterator().next().getAsJsonObject(); - assertNotNull(policy.get("onap.restart.tca")); - JsonObject policyVal = policy.get("onap.restart.tca").getAsJsonObject(); - assertEquals("onap.policies.monitoring.cdap.tca.hi.lo.app", policyVal.get("type").getAsString()); - assertEquals("1.0.0", policyVal.get("version").getAsString()); - assertEquals("onap.restart.tca", policyVal.get("metadata").getAsJsonObject().get("policy-id") - .getAsString()); - JsonObject properties = policyVal.get("properties").getAsJsonObject(); - assertNotNull(properties.get("tca_policy")); + assertNotNull(policy.get(POLICY1)); + JsonObject policyVal = policy.get(POLICY1).getAsJsonObject(); + assertEquals(TYPE1, policyVal.get("type").getAsString()); + assertEquals(VERSION_100, policyVal.get(VERSION).getAsString()); + assertEquals(POLICY1, policyVal.get(METADATA).getAsJsonObject().get(POLICY_ID).getAsString()); + JsonObject properties = policyVal.get(PROPERTIES2).getAsJsonObject(); + assertNotNull(properties.get(TCA_POLICY)); } private void verifyVdnsMonitoringOutputserialization(String serializedServiceTemplate) { - JsonObject serviceTemplateJsonObject = new JsonParser().parse(serializedServiceTemplate).getAsJsonObject(); - assertEquals("tosca_simple_yaml_1_0_0", serviceTemplateJsonObject.get("tosca_definitions_version") - .getAsString()); - JsonObject topologyTemplateJsonObject = serviceTemplateJsonObject.get("topology_template").getAsJsonObject(); - JsonArray policiesJsonArray = topologyTemplateJsonObject.get("policies").getAsJsonArray(); - assertTrue(policiesJsonArray.size() == 1); + JsonObject serviceTemplateJsonObject = JsonParser.parseString(serializedServiceTemplate).getAsJsonObject(); + assertEquals(YAML_VERSION, serviceTemplateJsonObject.get(DEFINITION_VERSION).getAsString()); + JsonObject topologyTemplateJsonObject = serviceTemplateJsonObject.get(TOPOLOGY_TEMPLATE).getAsJsonObject(); + JsonArray policiesJsonArray = topologyTemplateJsonObject.get(POLICIES).getAsJsonArray(); + assertEquals(1, policiesJsonArray.size()); JsonObject policy = policiesJsonArray.iterator().next().getAsJsonObject(); - assertNotNull(policy.get("onap.scaleout.tca")); - JsonObject policyVal = policy.get("onap.scaleout.tca").getAsJsonObject(); - assertEquals("onap.policies.monitoring.cdap.tca.hi.lo.app", policyVal.get("type").getAsString()); - assertEquals("1.0.0", policyVal.get("version").getAsString()); - assertEquals("onap.scaleout.tca", policyVal.get("metadata").getAsJsonObject().get("policy-id") - .getAsString()); - JsonObject properties = policyVal.get("properties").getAsJsonObject(); - assertNotNull(properties.get("tca_policy")); + assertNotNull(policy.get(POLICY2)); + JsonObject policyVal = policy.get(POLICY2).getAsJsonObject(); + assertEquals(TYPE1, policyVal.get("type").getAsString()); + assertEquals(VERSION_100, policyVal.get(VERSION).getAsString()); + assertEquals(POLICY2, policyVal.get(METADATA).getAsJsonObject().get(POLICY_ID).getAsString()); + JsonObject properties = policyVal.get(PROPERTIES2).getAsJsonObject(); + assertNotNull(properties.get(TCA_POLICY)); } - private void verifyVfwMonitoringOutputserialization(String serializedServiceTemplate) { + private void verifyVfwMonitoringOutputserialization(String serializedServiceTemplate, String version) { - JsonObject serviceTemplateJsonObject = new JsonParser().parse(serializedServiceTemplate).getAsJsonObject(); - assertEquals("tosca_simple_yaml_1_0_0", serviceTemplateJsonObject.get("tosca_definitions_version") - .getAsString()); - JsonObject topologyTemplateJsonObject = serviceTemplateJsonObject.get("topology_template").getAsJsonObject(); - JsonArray policiesJsonArray = topologyTemplateJsonObject.get("policies").getAsJsonArray(); - assertTrue(policiesJsonArray.size() == 1); + JsonObject serviceTemplateJsonObject = JsonParser.parseString(serializedServiceTemplate).getAsJsonObject(); + assertEquals(YAML_VERSION, serviceTemplateJsonObject.get(DEFINITION_VERSION).getAsString()); + JsonObject topologyTemplateJsonObject = serviceTemplateJsonObject.get(TOPOLOGY_TEMPLATE).getAsJsonObject(); + JsonArray policiesJsonArray = topologyTemplateJsonObject.get(POLICIES).getAsJsonArray(); + assertEquals(1, policiesJsonArray.size()); JsonObject policy = policiesJsonArray.iterator().next().getAsJsonObject(); - assertNotNull(policy.get("onap.vfirewall.tca")); - JsonObject policyVal = policy.get("onap.vfirewall.tca").getAsJsonObject(); - assertEquals("onap.policy.monitoring.cdap.tca.hi.lo.app", policyVal.get("type").getAsString()); - assertEquals("1.0.0", policyVal.get("version").getAsString()); - assertEquals("onap.vfirewall.tca", policyVal.get("metadata").getAsJsonObject().get("policy-id") - .getAsString()); - JsonObject properties = policyVal.get("properties").getAsJsonObject(); - assertNotNull(properties.get("tca_policy")); + assertNotNull(policy.get(POLICY3)); + JsonObject policyVal = policy.get(POLICY3).getAsJsonObject(); + assertEquals(TYPE1, policyVal.get("type").getAsString()); + assertEquals(version, policyVal.get(VERSION).getAsString()); + assertEquals(POLICY3, policyVal.get(METADATA).getAsJsonObject().get(POLICY_ID).getAsString()); + JsonObject properties = policyVal.get(PROPERTIES2).getAsJsonObject(); + assertNotNull(properties.get(TCA_POLICY)); } }