Restore test assertions. Update default plugin imports. Fix sonar
[dcaegen2/platform.git] / mod / bpgenerator / src / test / java / org / onap / blueprintgenerator / core / BlueprintGeneratorTest.java
index 1c7e592..b978701 100644 (file)
 
 package org.onap.blueprintgenerator.core;
 
+import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNotNull;
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 
-import com.fasterxml.jackson.core.JsonParseException;
-import com.fasterxml.jackson.databind.JsonMappingException;
-import java.io.IOException;
 import java.io.PrintStream;
 import java.util.ArrayList;
 import java.util.LinkedHashMap;
@@ -39,22 +38,7 @@ import org.mockito.ArgumentCaptor;
 import org.mockito.Mockito;
 import org.onap.blueprintgenerator.models.blueprint.Blueprint;
 import org.onap.blueprintgenerator.models.blueprint.GetInput;
-import org.onap.blueprintgenerator.models.componentspec.Artifacts;
-import org.onap.blueprintgenerator.models.componentspec.Auxilary;
-import org.onap.blueprintgenerator.models.componentspec.CallsObj;
 import org.onap.blueprintgenerator.models.componentspec.ComponentSpec;
-import org.onap.blueprintgenerator.models.componentspec.Container;
-import org.onap.blueprintgenerator.models.componentspec.HealthCheck;
-import org.onap.blueprintgenerator.models.componentspec.Host;
-import org.onap.blueprintgenerator.models.componentspec.Parameters;
-import org.onap.blueprintgenerator.models.componentspec.Policy;
-import org.onap.blueprintgenerator.models.componentspec.ProvidesObj;
-import org.onap.blueprintgenerator.models.componentspec.Publishes;
-import org.onap.blueprintgenerator.models.componentspec.Self;
-import org.onap.blueprintgenerator.models.componentspec.Services;
-import org.onap.blueprintgenerator.models.componentspec.Streams;
-import org.onap.blueprintgenerator.models.componentspec.Subscribes;
-import org.onap.blueprintgenerator.models.componentspec.Volumes;
 import org.onap.blueprintgenerator.models.dmaapbp.DmaapNode;
 import org.onap.blueprintgenerator.models.onapbp.OnapNode;
 import org.onap.blueprintgenerator.models.policymodel.PolicyModel;
@@ -70,146 +54,20 @@ public class BlueprintGeneratorTest {
     /**
      * Component spec test.
      *
-     * @throws JsonParseException   the json parse exception
-     * @throws JsonMappingException the json mapping exception
-     * @throws IOException          Signals that an I/O exception has occurred.
      */
-
     @Test
-    public void componentSpecTest() throws JsonParseException, JsonMappingException, IOException {
-
+    public void componentSpecTest() {
         ComponentSpec spec = new ComponentSpec();
         TestComponentSpec test = new TestComponentSpec();
-        spec.createComponentSpecFromString(test.getCs());
-
-        //Manually fill a component spec object with the values from the file itself
-        ComponentSpec manualSpec = new ComponentSpec();
-
-        Self self = new Self();
-        self.setComponent_type("docker");
-        self.setDescription("Test component spec");
-        self.setName("test.component.spec");
-        self.setVersion("1.0.1");
-        manualSpec.setSelf(self);
-
-        //assertEquals(manualSpec.getSelf(), spec.getSelf());
-
-        Services services = new Services();
-        CallsObj[] calls = new CallsObj[0];
-        ProvidesObj[] provides = new ProvidesObj[0];
-        services.setCalls(calls);
-        services.setProvides(provides);
-        manualSpec.setServices(null);
-
-        //assertEquals(manualSpec.getServices(), spec.getServices());
-
-        Streams streams = new Streams();
-        Publishes[] publishes = new Publishes[2];
-        Publishes pub1 = new Publishes();
-        pub1.setConfig_key("TEST-PUB-DR");
-        pub1.setFormat("dataformat_Hello_World_PM");
-        pub1.setType("data_router");
-        pub1.setVersion("1.0.0");
-
-        Publishes pub2 = new Publishes();
-        pub2.setConfig_key("TEST-PUB-MR");
-        pub2.setFormat("dataformat_Hello_World_PM");
-        pub2.setType("message_router");
-        pub2.setVersion("1.0.0");
-        publishes[0] = pub1;
-        publishes[1] = pub2;
-        streams.setPublishes(publishes);
-
-        Subscribes[] subscribes = new Subscribes[2];
-        Subscribes sub1 = new Subscribes();
-        sub1.setConfig_key("TEST-SUB-MR");
-        sub1.setFormat("dataformat_Hello_World_PM");
-        sub1.setRoute("/TEST_HELLO_WORLD_SUB_MR");
-        sub1.setType("message_router");
-        sub1.setVersion("1.0.0");
-
-        Subscribes sub2 = new Subscribes();
-        sub2.setConfig_key("TEST-SUB-DR");
-        sub2.setFormat("dataformat_Hello_World_PM");
-        sub2.setRoute("/TEST-HELLO-WORLD-SUB-DR");
-        sub2.setType("data_router");
-        sub2.setVersion("1.0.0");
-        subscribes[0] = sub1;
-        subscribes[1] = sub2;
-        streams.setSubscribes(subscribes);
-
-        manualSpec.setStreams(streams);
-
-        //assertEquals(manualSpec.getStreams(), spec.getStreams());
-
-        Parameters[] parameters = new Parameters[1];
-        Parameters par1 = new Parameters();
-        par1.setName("testParam1");
-        par1.setValue("test-param-1");
-        par1.setDescription("test parameter 1");
-        par1.setSourced_at_deployment(true);
-        par1.setDesigner_editable(true);
-        par1.setPolicy_editable(true);
-        par1.setPolicy_group("Test_Parameters");
-        par1.setRequired(true);
-        par1.setType("string");
-        parameters[0] = par1;
-
-        manualSpec.setParameters(parameters);
-
-        //assertEquals(manualSpec.getParameters(), spec.getParameters());
-
-        Auxilary auxilary = new Auxilary();
-        HealthCheck healthcheck = new HealthCheck();
-        healthcheck.setInterval("300s");
-        healthcheck.setTimeout("120s");
-        healthcheck.setScript("/etc/init.d/nagios status");
-        healthcheck.setType("docker");
-        auxilary.setHealthcheck(healthcheck);
-
-        Volumes[] volumes = new Volumes[1];
-        Volumes vol1 = new Volumes();
-        Container con1 = new Container();
-        con1.setBind("/opt/app/manager/config/hostname");
-        Host host1 = new Host();
-        host1.setPath("/etc/hostname");
-        host1.setMode("ro");
-        vol1.setContainer(con1);
-        vol1.setHost(host1);
-
-        volumes[0] = vol1;
-
-        auxilary.setVolumes(volumes);
-
-        ArrayList<Object> ports = new ArrayList();
-        ports.add("80:90");
-        ports.add("99:99");
-
-        TreeMap<String, String> dataBases = new TreeMap<String, String>();
-        dataBases.put("TestDB1", "PGaaS");
-        dataBases.put("TestDB2", "PGaaS");
-        auxilary.setDatabases(dataBases);
-
-        Policy pol = new Policy();
-        pol.setTrigger_type("docker");
-        pol.setScript_path("/opt/app/manager/bin/reconfigure.sh");
-        auxilary.setPolicy(pol);
-
-        auxilary.setPorts(ports);
-
-        manualSpec.setAuxilary(auxilary);
-
-        //assertEquals(manualSpec.getAuxilary(), spec.getAuxilary());
-
-        Artifacts[] artifacts = new Artifacts[1];
-        Artifacts art = new Artifacts();
-        art.setType("docker image");
-        art.setUri("test.tester");
-
-        artifacts[0] = art;
-        manualSpec.setArtifacts(artifacts);
-
-        //assertEquals(manualSpec.getArtifacts(), spec.getArtifacts());
+        spec.createComponentSpecFromString(test.getComponentSpecAsString());
+        ComponentSpec expectedSpec = test.getComponentSpec();
+
+        assertEquals(expectedSpec.getSelf(), spec.getSelf());
+        assertEquals(expectedSpec.getServices(), spec.getServices());
+        assertEquals(expectedSpec.getStreams(), spec.getStreams());
+        assertArrayEquals(expectedSpec.getParameters(), spec.getParameters());
+        assertEquals(expectedSpec.getAuxilary(), spec.getAuxilary());
+        assertArrayEquals(expectedSpec.getArtifacts(), spec.getArtifacts());
     }
 
     /**
@@ -219,11 +77,11 @@ public class BlueprintGeneratorTest {
     public void toscaDefinitionTest() {
         ComponentSpec cs = new ComponentSpec();
         TestComponentSpec test = new TestComponentSpec();
-        cs.createComponentSpecFromString(test.getCs());
+        cs.createComponentSpecFromString(test.getComponentSpecAsString());
         Blueprint bp = new Blueprint();
         bp = bp.createBlueprint(cs, "", 'o', "", "");
 
-        assertEquals(bp.getTosca_definitions_version(), "cloudify_dsl_1_3");
+        assertEquals("cloudify_dsl_1_3", bp.getTosca_definitions_version());
     }
 
     /**
@@ -233,19 +91,16 @@ public class BlueprintGeneratorTest {
     public void importsTest() {
         ComponentSpec cs = new ComponentSpec();
         TestComponentSpec test = new TestComponentSpec();
-        cs.createComponentSpecFromString(test.getCs());
+        cs.createComponentSpecFromString(test.getComponentSpecAsString());
 
         Blueprint bp = new Blueprint();
         bp = bp.createBlueprint(cs, "", 'o', "", "");
 
-        ArrayList<String> imps = new ArrayList<String>();
-
-        imps.add("http://www.getcloudify.org/spec/cloudify/3.4/types.yaml");
-        imps.add(
-            "https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R6/k8splugin/1.7.2/k8splugin_types.yaml");
-        imps.add(
-            "https://nexus.onap.org/service/local/repositories/raw/content/org.onap.dcaegen2.platform.plugins/R6/dcaepolicyplugin/2.4.0/dcaepolicyplugin_types.yaml");
-        assertEquals(bp.getImports(), imps);
+        ArrayList<String> imps = new ArrayList<>();
+        imps.add("https://www.getcloudify.org/spec/cloudify/4.5.5/types.yaml");
+        imps.add("plugin:k8splugin?version=3.4.2");
+        imps.add("plugin:dcaepolicyplugin?version=2.4.0");
+        assertEquals(imps, bp.getImports());
     }
 
     @Test
@@ -256,50 +111,49 @@ public class BlueprintGeneratorTest {
         Blueprint bp = new Blueprint();
         bp = bp.createBlueprint(cs, "", 'o', "", "");
 
-        TreeMap<String, LinkedHashMap<String, Object>> inputs = new TreeMap<String, LinkedHashMap<String, Object>>();
+        TreeMap<String, LinkedHashMap<String, Object>> inputs = new TreeMap<>();
 
         //mr inputs
-        LinkedHashMap<String, Object> stringType = new LinkedHashMap<String, Object>();
+        LinkedHashMap<String, Object> stringType = new LinkedHashMap<>();
         stringType.put("type", "string");
 
         //necessary inputs
-        LinkedHashMap<String, Object> tag = new LinkedHashMap<String, Object>();
+        LinkedHashMap<String, Object> tag = new LinkedHashMap<>();
         tag.put("type", "string");
         String tester = "test.tester";
         tag.put("default", '"' + tester + '"');
-        String tagVersion = "tag_version";
         inputs.put("tag_version", tag);
 
         inputs.put("log_directory", stringType);
 
-        LinkedHashMap cert = new LinkedHashMap();
+        LinkedHashMap<String, Object> cert = new LinkedHashMap<>();
         cert.put("type", "string");
         cert.put("default", "");
         inputs.put("cert_directory", cert);
 
-        LinkedHashMap<String, Object> env = new LinkedHashMap();
+        LinkedHashMap<String, Object> env = new LinkedHashMap<>();
         env.put("default", "{}");
         inputs.put("envs", env);
 
-        LinkedHashMap port = new LinkedHashMap();
+        LinkedHashMap<String, Object> port = new LinkedHashMap<>();
         port.put("type", "string");
         port.put("description", "Kubernetes node port on which collector is exposed");
         port.put("default", "99");
         inputs.put("external_port", port);
 
-        LinkedHashMap<String, Object> rep = new LinkedHashMap<String, Object>();
+        LinkedHashMap<String, Object> rep = new LinkedHashMap<>();
         rep.put("type", "integer");
         rep.put("description", "number of instances");
         rep.put("default", 1);
         inputs.put("replicas", rep);
 
-        LinkedHashMap<String, Object> aaf = new LinkedHashMap();
+        LinkedHashMap<String, Object> aaf = new LinkedHashMap<>();
         aaf.put("type", "boolean");
         aaf.put("default", false);
         inputs.put("use_tls", aaf);
 
         //parmaeter input
-        LinkedHashMap<String, Object> test = new LinkedHashMap<String, Object>();
+        LinkedHashMap<String, Object> test = new LinkedHashMap<>();
         test.put("type", "string");
         String testParam = "test-param-1";
         test.put("default", '"' + testParam + '"');
@@ -325,19 +179,17 @@ public class BlueprintGeneratorTest {
         inputs.put("topic0_name", stringType);
         inputs.put("topic1_name", stringType);
 
-        LinkedHashMap<String, Object> cpu = new LinkedHashMap();
+        LinkedHashMap<String, Object> cpu = new LinkedHashMap<>();
         cpu.put("type", "string");
         cpu.put("default", "250m");
         inputs.put("test.component.spec_cpu_limit", cpu);
         inputs.put("test.component.spec_cpu_request", cpu);
 
-        LinkedHashMap<String, Object> mem = new LinkedHashMap();
+        LinkedHashMap<String, Object> mem = new LinkedHashMap<>();
         mem.put("type", "string");
         mem.put("default", "128Mi");
         inputs.put("test.component.spec_memory_limit", mem);
         inputs.put("test.component.spec_memory_request", mem);
-
-        assertEquals(true, true);
     }
 
     @Test
@@ -355,10 +207,9 @@ public class BlueprintGeneratorTest {
         //set the type
         testNode.setType("dcae.nodes.ContainerizedServiceComponent");
 
-        ArrayList<String> ports = new ArrayList<String>();
+        ArrayList<String> ports = new ArrayList<>();
         ports.add("concat: [\"80:\", {get_input: external_port }]");
         ports.add("concat: [\"99:\", {get_input: external_port }]");
-        assertEquals(true, true);
     }
 
     @Test
@@ -372,7 +223,7 @@ public class BlueprintGeneratorTest {
         OnapNode node = (OnapNode) bp.getNode_templates().get("test.component.spec");
 
         GetInput par = (GetInput) node.getProperties().getApplication_config().getParams().get("testParam1");
-        assertEquals(par.getBpInputName(), "testParam1");
+        assertEquals("testParam1", par.getBpInputName());
     }
 
     @Test
@@ -385,13 +236,7 @@ public class BlueprintGeneratorTest {
 
         OnapNode node = (OnapNode) bp.getNode_templates().get("test.component.spec");
 
-        boolean test = false;
-        if (!node.getProperties().getApplication_config().getStreams_publishes().isEmpty()) {
-            test = true;
-            System.out.println("tst");
-        }
-
-        assertEquals(true, test);
+        assertFalse(node.getProperties().getApplication_config().getStreams_publishes().isEmpty());
     }
 
     @Test
@@ -405,13 +250,8 @@ public class BlueprintGeneratorTest {
         DmaapNode dmaap = (DmaapNode) bp.getNode_templates().get("test.component.spec");
 
         //check if the stream publishes and subscribes are not null to see if the dmaap plugin was invoked properly
-        boolean d = false;
-
-        if (dmaap.getProperties().getStreams_publishes() != null
-            || dmaap.getProperties().getStreams_subscribes() != null) {
-            d = true;
-        }
-        assertEquals(true, d);
+        assertNotNull(dmaap.getProperties().getStreams_publishes());
+        assertNotNull(dmaap.getProperties().getStreams_subscribes());
     }
 
     @Test
@@ -442,17 +282,5 @@ public class BlueprintGeneratorTest {
 
         PolicyModel p = new PolicyModel();
         p.createPolicyModels(cs, "TestModels");
-
-        assertEquals(true, true);
-    }
-
-    private void assertContainsInputWithDefault(Blueprint bp, String inputName, Object defaultValue) {
-        LinkedHashMap<String, Object> input = bp.getInputs().get(inputName);
-        assertNotNull(input);
-        assertEquals(defaultValue, input.get("default"));
-    }
-
-    private String inQuotes(String filedName) {
-        return String.format("\"%s\"", filedName);
     }
 }