X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Forg%2Fonap%2Fclamp%2Floop%2FLoopToJsonTest.java;h=de2ef145a0175695c789f94a90690fcda5e95f3e;hb=635445a5f262464c88287e5b5ceace4abf9cc4bc;hp=914c64ea5ccdd370a46b919413bac99b7cf9f732;hpb=5dfa4b58906921dea2aab38d20d761f460f49964;p=clamp.git diff --git a/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java b/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java index 914c64ea..de2ef145 100644 --- a/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java +++ b/src/test/java/org/onap/clamp/loop/LoopToJsonTest.java @@ -32,69 +32,67 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.JsonObject; import com.google.gson.JsonSyntaxException; - import java.io.IOException; -import java.util.HashSet; import java.util.Random; - import org.junit.Test; import org.onap.clamp.clds.util.JsonUtils; import org.onap.clamp.clds.util.ResourceFileUtil; -import org.onap.clamp.loop.components.external.PolicyComponent; import org.onap.clamp.loop.log.LogType; import org.onap.clamp.loop.log.LoopLog; import org.onap.clamp.loop.service.Service; +import org.onap.clamp.loop.template.LoopElementModel; import org.onap.clamp.loop.template.LoopTemplate; -import org.onap.clamp.loop.template.MicroServiceModel; import org.onap.clamp.loop.template.PolicyModel; import org.onap.clamp.policy.microservice.MicroServicePolicy; import org.onap.clamp.policy.operational.OperationalPolicy; -import org.skyscreamer.jsonassert.JSONAssert; public class LoopToJsonTest { private Gson gson = new Gson(); private OperationalPolicy getOperationalPolicy(String configJson, String name) { - return new OperationalPolicy(name, null, gson.fromJson(configJson, JsonObject.class)); + return new OperationalPolicy(name, null, gson.fromJson(configJson, JsonObject.class), + getPolicyModel("org.onap.policy.drools", "yaml", "1.0.0", "Drools", "type1"), null, null, null); } private Loop getLoop(String name, String svgRepresentation, String blueprint, String globalPropertiesJson, - String dcaeId, String dcaeUrl, String dcaeBlueprintId) throws JsonSyntaxException, IOException { - Loop loop = new Loop(name, blueprint, svgRepresentation); + String dcaeId, String dcaeUrl, String dcaeBlueprintId) + throws JsonSyntaxException, IOException { + Loop loop = new Loop(name, svgRepresentation); loop.setGlobalPropertiesJson(new Gson().fromJson(globalPropertiesJson, JsonObject.class)); loop.setLastComputedState(LoopState.DESIGN); loop.setDcaeDeploymentId(dcaeId); loop.setDcaeDeploymentStatusUrl(dcaeUrl); - loop.setDcaeBlueprintId(dcaeBlueprintId); return loop; } private MicroServicePolicy getMicroServicePolicy(String name, String modelType, String jsonRepresentation, - String policyTosca, String jsonProperties, boolean shared) { - MicroServicePolicy microService = new MicroServicePolicy(name, modelType, policyTosca, shared, - gson.fromJson(jsonRepresentation, JsonObject.class), new HashSet<>()); - microService.setProperties(new Gson().fromJson(jsonProperties, JsonObject.class)); + String policyTosca, String jsonProperties, boolean shared) { + MicroServicePolicy microService = new MicroServicePolicy(name, new PolicyModel(modelType, policyTosca, "1.0.0"), + shared, + gson.fromJson(jsonRepresentation, JsonObject.class), null, null, null); + microService.setConfigurationsJson(new Gson().fromJson(jsonProperties, JsonObject.class)); return microService; } - private MicroServiceModel getMicroServiceModel(String yaml, String name, PolicyModel policyModel) { - MicroServiceModel model = new MicroServiceModel(); + private LoopElementModel getLoopElementModel(String yaml, String name, PolicyModel policyModel) { + LoopElementModel model = new LoopElementModel(); model.setBlueprint(yaml); model.setName(name); - model.setPolicyModel(policyModel); + model.addPolicyModel(policyModel); + model.setLoopElementType("OPERATIONAL_POLICY"); return model; } private PolicyModel getPolicyModel(String policyType, String policyModelTosca, String version, String policyAcronym, - String policyVariant) { - return new PolicyModel(policyType, policyModelTosca, version, policyAcronym, policyVariant); + String policyVariant) { + return new PolicyModel(policyType, policyModelTosca, version, policyAcronym); } private LoopTemplate getLoopTemplate(String name, String blueprint, String svgRepresentation, - Integer maxInstancesAllowed) { + Integer maxInstancesAllowed) { LoopTemplate template = new LoopTemplate(name, blueprint, svgRepresentation, maxInstancesAllowed, null); - template.addMicroServiceModel(getMicroServiceModel("yaml", "microService1", + template.addLoopElementModel(getLoopElementModel("yaml", "microService1", getPolicyModel("org.onap.policy.drools", "yaml", "1.0.0", "Drools", "type1"))); return template; } @@ -105,6 +103,10 @@ public class LoopToJsonTest { return log; } + /** + * This tests a GSON encode/decode. + * @throws IOException In case of failure + */ @Test public void loopGsonTest() throws IOException { Loop loopTest = getLoop("ControlLoopTest", "", "yamlcontent", "{\"testname\":\"testvalue\"}", @@ -133,7 +135,6 @@ public class LoopToJsonTest { assertThat(loopTestDeserialized.getComponent("POLICY").getState()).isEqualToComparingOnlyGivenFields( loopTest.getComponent("POLICY").getState(), "stateName", "description"); // svg and blueprint not exposed so wont be deserialized - assertThat(loopTestDeserialized.getBlueprint()).isEqualTo(null); assertThat(loopTestDeserialized.getSvgRepresentation()).isEqualTo(null); assertThat(loopTestDeserialized.getOperationalPolicies()).containsExactly(opPolicy); @@ -146,6 +147,11 @@ public class LoopToJsonTest { assertThat(loopTestDeserialized.getLoopTemplate()).isEqualTo(loopTemplate); } + /** + * This tests the service object GSON encode/decode. + * + * @throws IOException In case of issues + */ @Test public void loopServiceTest() throws IOException { Loop loopTest2 = getLoop("ControlLoopTest", "", "yamlcontent", "{\"testname\":\"testvalue\"}", @@ -165,20 +171,4 @@ public class LoopToJsonTest { assertThat(loopTestDeserialized).isEqualToIgnoringGivenFields(loopTest2, "modelService", "svgRepresentation", "blueprint", "components"); } - - @Test - public void createPoliciesPayloadPdpGroupTest() throws IOException { - Loop loopTest = getLoop("ControlLoopTest", "", "yamlcontent", "{\"testname\":\"testvalue\"}", - "123456789", "https://dcaetest.org", "UUID-blueprint"); - OperationalPolicy opPolicy = this.getOperationalPolicy( - ResourceFileUtil.getResourceAsString("tosca/operational-policy-properties.json"), "GuardOpPolicyTest"); - loopTest.addOperationalPolicy(opPolicy); - MicroServicePolicy microServicePolicy = getMicroServicePolicy("configPolicyTest", "", - "{\"configtype\":\"json\"}", "tosca_definitions_version: tosca_simple_yaml_1_0_0", - "{\"param1\":\"value1\"}", true); - loopTest.addMicroServicePolicy(microServicePolicy); - - JSONAssert.assertEquals(ResourceFileUtil.getResourceAsString("tosca/pdp-group-policy-payload.json"), - PolicyComponent.createPoliciesPayloadPdpGroup(loopTest), false); - } }