added test cases to TestMergeNode.java 17/73417/4
authorSandeep J <sandeejh@in.ibm.com>
Fri, 23 Nov 2018 11:43:23 +0000 (17:13 +0530)
committerTakamune Cho <takamune.cho@att.com>
Thu, 29 Nov 2018 01:19:32 +0000 (01:19 +0000)
to increase code coverage

Issue-ID: APPC-1086
Change-Id: I7113c096993247135d54dcb9b686f1006907ca33
Signed-off-by: Sandeep J <sandeejh@in.ibm.com>
appc-config/appc-config-generator/provider/src/test/java/org/onap/sdnc/config/generator/merge/TestMergeNode.java

index e56b29b..a51c603 100644 (file)
@@ -31,11 +31,18 @@ import java.io.IOException;
 import java.util.HashMap;
 import java.util.Map;
 import org.apache.commons.io.IOUtils;
+import org.junit.Rule;
 import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.junit.runner.RunWith;
 import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 import org.onap.ccsdk.sli.core.sli.SvcLogicException;
 import org.onap.sdnc.config.generator.ConfigGeneratorConstant;
+import org.powermock.modules.junit4.PowerMockRunner;
+import org.mockito.Mock;
+import org.mockito.Mockito;
 
+@RunWith(PowerMockRunner.class)
 public class TestMergeNode {
 
     @Test(expected = Exception.class)
@@ -55,7 +62,40 @@ public class TestMergeNode {
                 ConfigGeneratorConstant.OUTPUT_STATUS_SUCCESS);
 
     }
+    
+    @Test(expected = Exception.class)
+    public void testMergeJsonDataOnTemplateForEmptyParamData() throws Exception {
+        MergeNode mergeNode = new MergeNode();
+        Map<String, String> inParams = new HashMap<String, String>();
+        inParams.put(ConfigGeneratorConstant.INPUT_PARAM_RESPONSE_PRIFIX, "test");
+        String templateData = IOUtils.toString(TestMergeNode.class.getClassLoader()
+                .getResourceAsStream("merge/vdbe_template.xml"));
+        inParams.put(ConfigGeneratorConstant.INPUT_PARAM_TEMPLATE_DATA, templateData);
+        SvcLogicContext ctx = new SvcLogicContext();
+        expectedEx.expect(SvcLogicException.class);
+        expectedEx.expectMessage("Param Data is missing..");
+        mergeNode.mergeJsonDataOnTemplate(inParams, ctx);
+       
+    }
+
+    @Rule
+    public ExpectedException expectedEx = ExpectedException.none();
 
+    @Test(expected = Exception.class)
+    public void testMergeJsonDataOnTemplateForEmptyTemplateData() throws Exception {
+        MergeNode mergeNode = new MergeNode();
+        Map<String, String> inParams = new HashMap<String, String>();
+        inParams.put(ConfigGeneratorConstant.INPUT_PARAM_RESPONSE_PRIFIX, "test");
+        String jsonData = IOUtils.toString(
+                TestMergeNode.class.getClassLoader().getResourceAsStream("merge/vdbe_data.json"));
+        inParams.put(ConfigGeneratorConstant.INPUT_PARAM_JSON_DATA, jsonData);
+        SvcLogicContext ctx = new SvcLogicContext();
+        expectedEx.expect(SvcLogicException.class);
+        expectedEx.expectMessage("Template data or Template file is missing");
+        mergeNode.mergeJsonDataOnTemplate(inParams, ctx);
+    }
+
+    
     @Test(expected = Exception.class)
     public void testMergeComplexJsonDataOnTemplate() throws Exception {
         MergeNode mergeNode = new MergeNode();