Add support to 7.1 VES data-stream in-parallel to 5.4
[holmes/engine-management.git] / engine-d / src / test / java / org / onap / holmes / dsa / dmaappolling / DMaaPResponseUtilTest.java
index 3b46fed..ded50b0 100644 (file)
@@ -24,8 +24,9 @@ import org.onap.holmes.common.api.stat.VesAlarm;
 import org.powermock.core.classloader.annotations.PrepareForTest;
 
 import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.TimeZone;
 
 import static org.hamcrest.CoreMatchers.equalTo;
 import static org.junit.Assert.assertThat;
@@ -62,7 +63,7 @@ public class DMaaPResponseUtilTest {
                 + "\"sourceId\":\"3345556444\","
                 + "\"sourceName\":\"nihoahh\","
                 + "\"startEpochMicrosec\":54545454,"
-                + "\"version\":998989879"
+                + "\"version\":\"4.0\""
                 + "},"
                 + "\"faultFields\":{"
                 + "\"alarmAdditionalInformation\":["
@@ -80,7 +81,7 @@ public class DMaaPResponseUtilTest {
                 + "\"eventCategory\":\"Event category\","
                 + "\"eventSeverity\":\"CRITICAL\","
                 + "\"eventSourceType\":\"type of event source\","
-                + "\"faultFieldsVersion\":567567567,"
+                + "\"faultFieldsVersion\":\"2.0\","
                 + "\"specificProblem\":\"short description\","
                 + "\"vfStatus\":\"Preparing to terminate\""
                 + "}"
@@ -101,25 +102,122 @@ public class DMaaPResponseUtilTest {
         expected.setSourceId("3345556444");
         expected.setSourceName("nihoahh");
         expected.setStartEpochMicrosec((long) 54545454);
-        expected.setVersion((long) 998989879);
-
-        List<AlarmAdditionalField> alarmAdditionalFields = new ArrayList<>();
-        AlarmAdditionalField alarmAdditionalField1 = new AlarmAdditionalField();
-        alarmAdditionalField1.setName("niaho");
-        alarmAdditionalField1.setName("1111");
-        alarmAdditionalFields.add(alarmAdditionalField1);
-        AlarmAdditionalField alarmAdditionalField2 = new AlarmAdditionalField();
-        alarmAdditionalField2.setName("tian");
-        alarmAdditionalField2.setName("22222");
-        alarmAdditionalFields.add(alarmAdditionalField2);
+        expected.setVersion("4.0");
+
+        Map<String, String> alarmAdditionalFields = new HashMap<String, String>();
+       alarmAdditionalFields.put("niaho", "1111");
+       alarmAdditionalFields.put("titan", "22222");
         expected.setAlarmAdditionalInformation(alarmAdditionalFields);
+       expected.setAlarmCondition("fadilel");
+        expected.setAlarmInterfaceA("generating the alarm");
+        expected.setEventCategory("Event category");
+        expected.setEventSeverity("CRITICAL");
+        expected.setEventSourceType("type of event source");
+        expected.setFaultFieldsVersion("2.0");
+        expected.setSpecificProblem("short description");
+        expected.setVfStatus("Preparing to terminate");
+
+        VesAlarm result = dMaaPResponseUtil.convertJsonToVesAlarm(json);
+
+        assertThat(expected.getDomain(), equalTo(result.getDomain()));
+        assertThat(expected.getEventId(), equalTo(result.getEventId()));
+        assertThat(expected.getEventName(), equalTo(result.getEventName()));
+        assertThat(expected.getEventType(), equalTo(result.getEventType()));
+        assertThat(expected.getLastEpochMicrosec(), equalTo(result.getLastEpochMicrosec()));
+        assertThat(expected.getNfcNamingCode(), equalTo(result.getNfcNamingCode()));
+        assertThat(expected.getNfNamingCode(), equalTo(result.getNfNamingCode()));
+        assertThat(expected.getPriority(), equalTo(result.getPriority()));
+        assertThat(expected.getReportingEntityId(), equalTo(result.getReportingEntityId()));
+        assertThat(expected.getReportingEntityName(), equalTo(result.getReportingEntityName()));
+        assertThat(expected.getSequence(), equalTo(result.getSequence()));
+        assertThat(expected.getSourceId(), equalTo(result.getSourceId()));
+        assertThat(expected.getSourceName(), equalTo(result.getSourceName()));
+        assertThat(expected.getStartEpochMicrosec(), equalTo(result.getStartEpochMicrosec()));
+        assertThat(expected.getVersion(), equalTo(result.getVersion()));
+
+        assertThat(expected.getAlarmCondition(), equalTo(result.getAlarmCondition()));
+        assertThat(expected.getAlarmInterfaceA(), equalTo(result.getAlarmInterfaceA()));
+        assertThat(expected.getEventCategory(), equalTo(result.getEventCategory()));
+        assertThat(expected.getEventSeverity(), equalTo(result.getEventSeverity()));
+        assertThat(expected.getEventSourceType(), equalTo(result.getEventSourceType()));
+        assertThat(expected.getFaultFieldsVersion(), equalTo(result.getFaultFieldsVersion()));
+        assertThat(expected.getSpecificProblem(), equalTo(result.getSpecificProblem()));
+        assertThat(expected.getVfStatus(), equalTo(result.getVfStatus()));
+
+    }
+
+    @Test
+    public void testDMaaPResponseUtil_v7_input_normal() throws IOException {
+        String json = "{\"event\":{"
+                + "\"commonEventHeader\":{"
+                + "\"domain\":\"fault\","
+                + "\"eventId\":\"112355255-24345\","
+                + "\"eventName\":\"4333454333\","
+                + "\"eventType\":\"remote\","
+                + "\"lastEpochMicrosec\":333434333,"
+                + "\"nfcNamingCode\":\"567422\","
+                + "\"nfNamingCode\":\"qweertrr\","
+                + "\"priority\":\"High\","
+                + "\"reportingEntityId\":\"99888888888\","
+                + "\"reportingEntityName\":\"tianshisdlsdjf\","
+                + "\"sequence\":34566,"
+                + "\"sourceId\":\"3345556444\","
+                + "\"sourceName\":\"nihoahh\","
+                + "\"startEpochMicrosec\":54545454,"
+                + "\"version\":\"998989879\","
+                + "\"timeZoneOffset\":\"UTC-05:30\","
+                       + "\"nfVendorName\": \"Ericsson\","
+                + "\"vesEventListenerVersion\": \"7.2.1\""
+                + "},"
+                + "\"faultFields\":{"
+                + "\"alarmAdditionalInformation\":"
+                + "{"
+                + "\"niaho\":\"1111\","
+                + "\"titan\":\"2222\""
+                + "}"
+                + ","
+                + "\"alarmCondition\":\"fadilel\","
+                + "\"alarmInterfaceA\":\"generating the alarm\","
+                + "\"eventCategory\":\"Event category\","
+                + "\"eventSeverity\":\"CRITICAL\","
+                + "\"eventSourceType\":\"type of event source\","
+                + "\"faultFieldsVersion\":4.0,"
+                + "\"specificProblem\":\"short description\","
+                + "\"vfStatus\":\"Preparing to terminate\""
+                + "}"
+                + "}"
+                + "}";
+        VesAlarm expected = new VesAlarm();
+        expected.setDomain("fault");
+        expected.setEventId("112355255-24345");
+        expected.setEventName("4333454333");
+        expected.setEventType("remote");
+        expected.setLastEpochMicrosec((long) 333434333);
+        expected.setNfcNamingCode("567422");
+        expected.setNfNamingCode("qweertrr");
+        expected.setPriority("High");
+        expected.setReportingEntityId("99888888888");
+        expected.setReportingEntityName("tianshisdlsdjf");
+        expected.setSequence(34566);
+        expected.setSourceId("3345556444");
+        expected.setSourceName("nihoahh");
+        expected.setStartEpochMicrosec((long) 54545454);
+        expected.setVersion("998989879");
+        expected.setNfVendorName("Ericsson");
+        expected.setVesEventListenerVersion("7.2.1");
+        TimeZone timeZone = TimeZone.getTimeZone("UTC-05:30");
+        expected.setTimeZoneOffset(timeZone);
+        Map<String, String> alarmAdditionalFields = new HashMap<String, String>();
+       alarmAdditionalFields.put("niaho", "1111");
+       alarmAdditionalFields.put("titan", "22222");
+       expected.setAlarmAdditionalInformation(alarmAdditionalFields);
 
         expected.setAlarmCondition("fadilel");
         expected.setAlarmInterfaceA("generating the alarm");
         expected.setEventCategory("Event category");
         expected.setEventSeverity("CRITICAL");
         expected.setEventSourceType("type of event source");
-        expected.setFaultFieldsVersion((long) 567567567);
+        expected.setFaultFieldsVersion("4.0");
         expected.setSpecificProblem("short description");
         expected.setVfStatus("Preparing to terminate");
 
@@ -149,6 +247,9 @@ public class DMaaPResponseUtilTest {
         assertThat(expected.getFaultFieldsVersion(), equalTo(result.getFaultFieldsVersion()));
         assertThat(expected.getSpecificProblem(), equalTo(result.getSpecificProblem()));
         assertThat(expected.getVfStatus(), equalTo(result.getVfStatus()));
+        assertThat(expected.getVesEventListenerVersion(), equalTo(result.getVesEventListenerVersion()));
+        assertThat(expected.getNfVendorName(), equalTo(result.getNfVendorName()));
+        assertThat(expected.getTimeZoneOffset(), equalTo(result.getTimeZoneOffset()));
 
     }
 
@@ -180,7 +281,7 @@ public class DMaaPResponseUtilTest {
                 + "\"sequence\":34566,"
                 + "\"sourceName\":\"nihoahh\","
                 + "\"startEpochMicrosec\":54545454,"
-                + "\"version\":998989879"
+                + "\"version\":\"4.0\""
                 + "},"
                 + "\"faultFields\":{"
                 + "\"alarmAdditionalInformation\":["
@@ -196,7 +297,7 @@ public class DMaaPResponseUtilTest {
                 + "\"alarmCondition\":\"fadilel\","
                 + "\"eventSeverity\":\"CRITICAL\","
                 + "\"eventSourceType\":\"type of event source\","
-                + "\"faultFieldsVersion\":567567567,"
+                + "\"faultFieldsVersion\":\"2.0\","
                 + "\"specificProblem\":\"short description\","
                 + "\"vfStatus\":\"Preparing to terminate\""
                 + "}"
@@ -211,23 +312,16 @@ public class DMaaPResponseUtilTest {
         expected.setSequence(34566);
         expected.setSourceName("nihoahh");
         expected.setStartEpochMicrosec((long) 54545454);
-        expected.setVersion((long) 998989879);
-
-        List<AlarmAdditionalField> alarmAdditionalFields = new ArrayList<>();
-        AlarmAdditionalField alarmAdditionalField1 = new AlarmAdditionalField();
-        alarmAdditionalField1.setName("niaho");
-        alarmAdditionalField1.setName("1111");
-        alarmAdditionalFields.add(alarmAdditionalField1);
-        AlarmAdditionalField alarmAdditionalField2 = new AlarmAdditionalField();
-        alarmAdditionalField2.setName("tian");
-        alarmAdditionalField2.setName("22222");
-        alarmAdditionalFields.add(alarmAdditionalField2);
+        expected.setVersion("4.0");
+       Map<String, String> alarmAdditionalFields = new HashMap<String, String>();
+       alarmAdditionalFields.put("niaho", "1111");
+       alarmAdditionalFields.put("titan", "22222");
         expected.setAlarmAdditionalInformation(alarmAdditionalFields);
 
         expected.setAlarmCondition("fadilel");
         expected.setEventSeverity("CRITICAL");
         expected.setEventSourceType("type of event source");
-        expected.setFaultFieldsVersion((long) 567567567);
+        expected.setFaultFieldsVersion("2.0");
         expected.setSpecificProblem("short description");
         expected.setVfStatus("Preparing to terminate");
 
@@ -265,7 +359,7 @@ public class DMaaPResponseUtilTest {
                 + "\"sequence\":34566,"
                 + "\"sourceName\":\"nihoahh\","
                 + "\"startEpochMicrosec\":54545454,"
-                + "\"version\":998989879"
+                + "\"version\":\"4.0\""
                 + "},"
                 + "\"faultFields\":{"
                 + "\"alarmAdditionalInformation\":["
@@ -281,7 +375,7 @@ public class DMaaPResponseUtilTest {
                 + "\"alarmCondition\":\"fadilel\","
                 + "\"eventSeverity\":\"CRITICAL\","
                 + "\"eventSourceType\":\"type of event source\","
-                + "\"faultFieldsVersion\":567567567,"
+                + "\"faultFieldsVersion\":\"2.0\","
                 + "\"specificProblem\":\"short description\","
                 + "\"vfStatus\":\"Preparing to terminate\""
                 + "}"
@@ -296,23 +390,15 @@ public class DMaaPResponseUtilTest {
         expected.setSequence(34566);
         expected.setSourceName("nihoahh");
         expected.setStartEpochMicrosec((long) 54545454);
-        expected.setVersion((long) 998989879);
-
-        List<AlarmAdditionalField> alarmAdditionalFields = new ArrayList<>();
-        AlarmAdditionalField alarmAdditionalField = new AlarmAdditionalField();
-        alarmAdditionalField.setName(null);
-        alarmAdditionalField.setValue("1111");
-        alarmAdditionalFields.add(alarmAdditionalField);
-        alarmAdditionalField = new AlarmAdditionalField();
-        alarmAdditionalField.setName("tian");
-        alarmAdditionalField.setValue("22222");
-        alarmAdditionalFields.add(alarmAdditionalField);
+        expected.setVersion("4.0");
+       Map<String, String> alarmAdditionalFields = new HashMap<String, String>();
+       alarmAdditionalFields.put(null, "1111");
         expected.setAlarmAdditionalInformation(alarmAdditionalFields);
 
         expected.setAlarmCondition("fadilel");
         expected.setEventSeverity("CRITICAL");
         expected.setEventSourceType("type of event source");
-        expected.setFaultFieldsVersion((long) 567567567);
+        expected.setFaultFieldsVersion("2.0");
         expected.setSpecificProblem("short description");
         expected.setVfStatus("Preparing to terminate");
 
@@ -327,11 +413,9 @@ public class DMaaPResponseUtilTest {
         assertThat(expected.getSourceName(), equalTo(result.getSourceName()));
         assertThat(expected.getStartEpochMicrosec(), equalTo(result.getStartEpochMicrosec()));
         assertThat(expected.getVersion(), equalTo(result.getVersion()));
+       assertThat(expected.getAlarmAdditionalInformation().get("niaho"),
+        equalTo(result.getAlarmAdditionalInformation().get("niaho")));
 
-        assertThat(expected.getAlarmAdditionalInformation().get(0).getName(),
-                equalTo(result.getAlarmAdditionalInformation().get(0).getName()));
-        assertThat(expected.getAlarmAdditionalInformation().get(0).getValue(),
-                equalTo(result.getAlarmAdditionalInformation().get(0).getValue()));
 
         assertThat(expected.getAlarmCondition(), equalTo(result.getAlarmCondition()));
         assertThat(expected.getEventSeverity(), equalTo(result.getEventSeverity()));