coverage SdncFlatJsonDmaapConsumer 37/39537/1
authorshashikanth.vh <shashikanth.vh@huawei.com>
Wed, 28 Mar 2018 09:19:39 +0000 (14:49 +0530)
committershashikanth.vh <shashikanth.vh@huawei.com>
Wed, 28 Mar 2018 09:19:45 +0000 (14:49 +0530)
Coverage improvement for SdncFlatJsonDmaapConsumer
https://jira.onap.org/browse/CCSDK-213?jql=project%20%3D%20CCSDK%20AND%20text%20~%20coverage

Issue-ID: CCSDK-213
Change-Id: Idb08f426e1626f8aa2b12d2c53f1960474af59c2
Signed-off-by: shashikanth.vh <shashikanth.vh@huawei.com>
dmaap-listener/src/test/java/org/onap/ccsdk/sli/northbound/dmaapclient/TestSdncJsonDmaapConsumer.java

index 01bd3cf..620098c 100644 (file)
@@ -10,6 +10,16 @@ package org.onap.ccsdk.sli.northbound.dmaapclient;
 
 import org.junit.Test;
 
+
+import java.io.BufferedWriter;
+import java.io.File;
+import java.io.FileWriter;
+import java.io.InputStream;
+import java.lang.reflect.Field;
+
+import java.util.Map;
+import java.util.Properties;
+
 public class TestSdncJsonDmaapConsumer {
     private static final String DMAAP_LISTENER_PROPERTIES = "dmaap-listener.properties";
     private static final String DMAAP_LISTENER_PROPERTIES_DIR = "src/test/resources";
@@ -19,9 +29,103 @@ public class TestSdncJsonDmaapConsumer {
         SdncFlatJsonDmaapConsumer consumer = new SdncFlatJsonDmaapConsumer();
         consumer.processMsg(null);
     }
+    
+    @Test
+    public void testProcessMsgFieldMap() throws Exception {
+        SdncFlatJsonDmaapConsumer consumer = new SdncFlatJsonDmaapConsumer();
+
+        String DMAAPLISTENERROOT = "DMAAPLISTENERROOT";
+        File directory = new File("lib");
+
+        if (! directory.exists()){
+            directory.mkdir();
+        }
+
+        File file = new File("lib" + "/" + "input.map");
+        try{
+            FileWriter fw = new FileWriter(file.getAbsoluteFile());
+            BufferedWriter bw = new BufferedWriter(fw);
+            bw.write("SDNC.endpoint=>http://localhost:8282/restconf/operations");
+            bw.close();
+        }
+        catch (Exception e){
+            e.printStackTrace();
+        }
+
+        try {
+            Map<String, String> env = System.getenv();
+            Class<?> cl = env.getClass();
+            Field field = cl.getDeclaredField("m");
+            field.setAccessible(true);
+            Map<String, String> writableEnv = (Map<String, String>) field.get(env);
+            writableEnv.put(DMAAPLISTENERROOT, ".");
+        } catch (Exception e) {
+            throw new IllegalStateException("Failed to set environment variable", e);
+        }
+
+        String msg = "{\n" +
+                "    \"input\" : {        \n" +
+                "    }\n" +
+                "}";
+
+        InputStream propStr = TestSdncJsonDmaapConsumer.class.getResourceAsStream("/dmaap-consumer-pserver.properties");
+        Properties props = new Properties();
+
+        props.load(propStr);
+
+        consumer.init(props, "src/test/resources/dmaap-consumer-pserver.properties");
+        consumer.processMsg(msg);
+    }
+
+    @Test(expected = InvalidMessageException.class)
+    public void testProcessMsgFieldMapNoSdncEndPoint() throws Exception {
+        SdncFlatJsonDmaapConsumer consumer = new SdncFlatJsonDmaapConsumer();
+
+        String DMAAPLISTENERROOT = "DMAAPLISTENERROOT";
+        File directory = new File("lib");
+
+        if (! directory.exists()){
+            directory.mkdir();
+        }
+
+        File file = new File("lib" + "/" + "input.map");
+        try{
+            FileWriter fw = new FileWriter(file.getAbsoluteFile());
+            BufferedWriter bw = new BufferedWriter(fw);
+            bw.write("SDNC");
+            bw.close();
+        }
+        catch (Exception e){
+            e.printStackTrace();
+        }
+
+        try {
+            Map<String, String> env = System.getenv();
+            Class<?> cl = env.getClass();
+            Field field = cl.getDeclaredField("m");
+            field.setAccessible(true);
+            Map<String, String> writableEnv = (Map<String, String>) field.get(env);
+            writableEnv.put(DMAAPLISTENERROOT, ".");
+        } catch (Exception e) {
+            throw new IllegalStateException("Failed to set environment variable", e);
+        }
+
+        String msg = "{\n" +
+                "    \"input\" : {        \n" +
+                "    }\n" +
+                "}";
+
+        InputStream propStr = TestSdncJsonDmaapConsumer.class.getResourceAsStream("/dmaap-consumer-pserver.properties");
+        Properties props = new Properties();
+
+        props.load(propStr);
+
+        consumer.init(props, "src/test/resources/dmaap-consumer-pserver.properties");
+        consumer.processMsg(msg);
+    }
 
     @Test(expected = InvalidMessageException.class)
-    public void testProcessMsgNullFieldMap_shouldThrowException() throws Exception {
+    public void testProcessMsgFieldMapNoFieldMap() throws Exception {
         SdncFlatJsonDmaapConsumer consumer = new SdncFlatJsonDmaapConsumer();
 
         String msg = "{\n" +