2 * Copyright (c) 2017. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
3 * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan.
4 * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna.
5 * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus.
6 * Vestibulum commodo. Ut rhoncus gravida arcu.
9 package org.onap.ccsdk.sli.northbound.dmaapclient;
11 import org.junit.Test;
14 import java.io.BufferedWriter;
16 import java.io.FileWriter;
17 import java.io.InputStream;
18 import java.lang.reflect.Field;
21 import java.util.Properties;
23 public class TestSdncJsonDmaapConsumer {
24 private static final String DMAAP_LISTENER_PROPERTIES = "dmaap-listener.properties";
25 private static final String DMAAP_LISTENER_PROPERTIES_DIR = "src/test/resources";
27 @Test(expected = InvalidMessageException.class)
28 public void testProcessMsg_shouldThrowException() throws Exception {
29 SdncFlatJsonDmaapConsumer consumer = new SdncFlatJsonDmaapConsumer();
30 consumer.processMsg(null);
34 public void testProcessMsgFieldMap() throws Exception {
35 SdncFlatJsonDmaapConsumer consumer = new SdncFlatJsonDmaapConsumer();
37 String DMAAPLISTENERROOT = "DMAAPLISTENERROOT";
38 File directory = new File("lib");
40 if (! directory.exists()){
44 File file = new File("lib" + "/" + "input.map");
46 FileWriter fw = new FileWriter(file.getAbsoluteFile());
47 BufferedWriter bw = new BufferedWriter(fw);
48 bw.write("SDNC.endpoint=>http://localhost:8282/restconf/operations");
56 Map<String, String> env = System.getenv();
57 Class<?> cl = env.getClass();
58 Field field = cl.getDeclaredField("m");
59 field.setAccessible(true);
60 Map<String, String> writableEnv = (Map<String, String>) field.get(env);
61 writableEnv.put(DMAAPLISTENERROOT, ".");
62 } catch (Exception e) {
63 throw new IllegalStateException("Failed to set environment variable", e);
71 InputStream propStr = TestSdncJsonDmaapConsumer.class.getResourceAsStream("/dmaap-consumer-pserver.properties");
72 Properties props = new Properties();
76 consumer.init(props, "src/test/resources/dmaap-consumer-pserver.properties");
77 consumer.processMsg(msg);
80 @Test(expected = InvalidMessageException.class)
81 public void testProcessMsgFieldMapNoSdncEndPoint() throws Exception {
82 SdncFlatJsonDmaapConsumer consumer = new SdncFlatJsonDmaapConsumer();
84 String DMAAPLISTENERROOT = "DMAAPLISTENERROOT";
85 File directory = new File("lib");
87 if (! directory.exists()){
91 File file = new File("lib" + "/" + "input.map");
93 FileWriter fw = new FileWriter(file.getAbsoluteFile());
94 BufferedWriter bw = new BufferedWriter(fw);
103 Map<String, String> env = System.getenv();
104 Class<?> cl = env.getClass();
105 Field field = cl.getDeclaredField("m");
106 field.setAccessible(true);
107 Map<String, String> writableEnv = (Map<String, String>) field.get(env);
108 writableEnv.put(DMAAPLISTENERROOT, ".");
109 } catch (Exception e) {
110 throw new IllegalStateException("Failed to set environment variable", e);
114 " \"input\" : { \n" +
118 InputStream propStr = TestSdncJsonDmaapConsumer.class.getResourceAsStream("/dmaap-consumer-pserver.properties");
119 Properties props = new Properties();
123 consumer.init(props, "src/test/resources/dmaap-consumer-pserver.properties");
124 consumer.processMsg(msg);
127 @Test(expected = InvalidMessageException.class)
128 public void testProcessMsgFieldMapNoFieldMap() throws Exception {
129 SdncFlatJsonDmaapConsumer consumer = new SdncFlatJsonDmaapConsumer();
132 " \"input\" : { \n" +
136 consumer.processMsg(msg);