aboutsummaryrefslogtreecommitdiffstats
path: root/common-logging/src/test
diff options
context:
space:
mode:
authorJim Hahn <jrh3@att.com>2018-02-20 13:41:59 -0500
committerJim Hahn <jrh3@att.com>2018-02-20 14:16:41 -0500
commit7f6b1b0add6878e996e559c15337f46339c98901 (patch)
treeed381d4fdaaed33a590c06145a9834331e32aa35 /common-logging/src/test
parent19d3bfa5a1e6f69cde7a5e814b1975330249dcd0 (diff)
Increase junit coverage in ONAP-logging
Added some junit tests to increase coverage of ONAP-logger. Many classes still need test cases. Also fixed some sonar issues: Returned interface instead of ConcurrentHashMap. Used EnumMap instead of HashMap. Used StringBuilder instead of StringBuffer. Replaced literals with constants. Replaced enum1.toString().equals(enum2.toString()) with enum1 == enum2 Updated license dates. Updated another license date. Change-Id: I777b6a913d7d03187a29dfeb817800b386ee23aa Issue-ID: POLICY-582 Signed-off-by: Jim Hahn <jrh3@att.com>
Diffstat (limited to 'common-logging/src/test')
-rw-r--r--common-logging/src/test/java/org/onap/policy/common/logging/eelf/DroolsPDPMDCInfoTest.java43
-rw-r--r--common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventDataTest.java174
-rw-r--r--common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventTrackInfoHandlerTest.java130
-rw-r--r--common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventTrackInfoTest.java130
4 files changed, 477 insertions, 0 deletions
diff --git a/common-logging/src/test/java/org/onap/policy/common/logging/eelf/DroolsPDPMDCInfoTest.java b/common-logging/src/test/java/org/onap/policy/common/logging/eelf/DroolsPDPMDCInfoTest.java
new file mode 100644
index 00000000..1be10dae
--- /dev/null
+++ b/common-logging/src/test/java/org/onap/policy/common/logging/eelf/DroolsPDPMDCInfoTest.java
@@ -0,0 +1,43 @@
+/*
+ * ============LICENSE_START=======================================================
+ * ONAP Policy Engine - Common Modules
+ * ================================================================================
+ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.common.logging.eelf;
+
+import static org.junit.Assert.*;
+
+import org.junit.Test;
+
+/**
+ *
+ */
+public class DroolsPDPMDCInfoTest {
+
+ /**
+ * Test method for {@link org.onap.policy.common.logging.eelf.DroolsPDPMDCInfo#getMDCInfo()}.
+ */
+ @Test
+ public void testGetMDCInfo() {
+ DroolsPDPMDCInfo di = new DroolsPDPMDCInfo();
+
+ assertNotNull(di.getMDCInfo());
+ assertEquals("Policy.droolsPdp", di.getMDCInfo().get(Configuration.MDC_SERVICE_NAME));
+ }
+
+}
diff --git a/common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventDataTest.java b/common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventDataTest.java
new file mode 100644
index 00000000..edd57ee1
--- /dev/null
+++ b/common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventDataTest.java
@@ -0,0 +1,174 @@
+/*
+ * ============LICENSE_START=======================================================
+ * ONAP Policy Engine - Common Modules
+ * ================================================================================
+ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.common.logging.eelf;
+
+import static org.junit.Assert.*;
+
+import java.time.Instant;
+
+import org.junit.Test;
+
+/**
+ *
+ */
+public class EventDataTest {
+ private static final Instant istart = Instant.ofEpochMilli(100000l);
+ private static final Instant iend = Instant.ofEpochMilli(200000l);
+
+ /**
+ * Test method for {@link EventData#EventData()}.
+ */
+ @Test
+ public void testEventData() {
+ EventData d = new EventData();
+
+ assertNull(d.getEndTime());
+ assertNull(d.getRequestID());
+ assertNull(d.getStartTime());
+ }
+
+ /**
+ * Test method for {@link EventData#EventData(String, Instant, Instant)}.
+ */
+ @Test
+ public void testEventDataStringInstantInstant() {
+ EventData d = new EventData("myreq", istart, iend);
+
+ assertEquals("myreq", d.getRequestID());
+ assertEquals(istart, d.getStartTime());
+ assertEquals(iend, d.getEndTime());
+ }
+
+ /**
+ * Test method for {@link EventData#getRequestID()} and
+ * {@link EventData#setRequestID(String)}.
+ */
+ @Test
+ public void testGetSetRequestID() {
+ EventData d = new EventData();
+ assertNull(d.getRequestID());
+
+ d.setRequestID("abc");
+ assertEquals("abc", d.getRequestID());
+
+ d.setRequestID("def");
+ assertEquals("def", d.getRequestID());
+ }
+
+ /**
+ * Test method for {@link EventData#getStartTime()} and
+ * {@link EventData#setStartTime(Instant)}.
+ */
+ @Test
+ public void testGetSetStartTime() {
+ EventData d = new EventData();
+ assertNull(d.getStartTime());
+
+ d.setStartTime(istart);
+ assertEquals(istart, d.getStartTime());
+
+ d.setStartTime(iend);
+ assertEquals(iend, d.getStartTime());
+
+ // setting end-time should not effect start-time
+ d.setEndTime(istart);
+ assertEquals(iend, d.getStartTime());
+ }
+
+ /**
+ * Test method for {@link EventData#getEndTime()} and
+ * {@link EventData#setEndTime(Instant)}.
+ */
+ @Test
+ public void testGetSetEndTime() {
+ EventData d = new EventData();
+ assertNull(d.getEndTime());
+
+ d.setEndTime(iend);
+ assertEquals(iend, d.getEndTime());
+
+ d.setEndTime(istart);
+ assertEquals(istart, d.getEndTime());
+
+ // setting start-time should not effect end-time
+ d.setStartTime(iend);
+ assertEquals(istart, d.getEndTime());
+ }
+
+ /**
+ * Test method for {@link EventData#toString()}.
+ */
+ @Test
+ public void testToString() {
+ EventData d = new EventData("myreq", istart, iend);
+ assertEquals("myreq Starting Time : 1970-01-01T00:01:40Z Ending Time : 1970-01-01T00:03:20Z", d.toString());
+ }
+
+ /**
+ * Test method for {@link EventData#hashCode()}.
+ */
+ @Test
+ public void testHashCode() {
+ int hc1 = new EventData("abc", istart, iend).hashCode();
+
+ assertNotEquals(hc1, new EventData("abd", istart, iend).hashCode());
+ assertEquals(hc1, new EventData("abc", iend, istart).hashCode());
+ }
+
+ /**
+ * Test method for {@link EventData#equals(Object)}.
+ */
+ @Test
+ public void testEqualsObject() {
+ EventData d1 = new EventData("abc", istart, iend);
+ EventData d2 = new EventData("abd", istart, iend);
+ EventData d3 = new EventData("abc", iend, istart);
+
+ // same object
+ assertTrue(d1.equals(d1));
+
+ // compare with null
+ assertFalse(d1.equals(null));
+
+ // compare with request id
+ assertTrue(d1.equals("abc"));
+ assertFalse(d1.equals("abd"));
+
+ // compare with int - different class type
+ assertFalse(d1.equals(10));
+
+ // "this" has null request id
+ assertFalse(new EventData().equals(d1));
+
+ // both null
+ assertTrue(new EventData().equals(new EventData()));
+
+ // this request id is not null, other is null
+ assertFalse(d1.equals(new EventData()));
+
+ // neither null, same
+ assertTrue(d1.equals(d3));
+
+ // neither null, diff
+ assertFalse(d1.equals(d2));
+ }
+
+}
diff --git a/common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventTrackInfoHandlerTest.java b/common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventTrackInfoHandlerTest.java
new file mode 100644
index 00000000..68fd52de
--- /dev/null
+++ b/common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventTrackInfoHandlerTest.java
@@ -0,0 +1,130 @@
+/*
+ * ============LICENSE_START=======================================================
+ * ONAP Policy Engine - Common Modules
+ * ================================================================================
+ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.common.logging.eelf;
+
+import static org.junit.Assert.*;
+
+import java.time.Instant;
+import java.util.concurrent.ConcurrentMap;
+
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+/**
+ *
+ */
+public class EventTrackInfoHandlerTest {
+
+ private static final Instant inow = Instant.now();
+ private static final Instant iexpired = Instant.ofEpochMilli(10000l);
+
+ private static final EventData data1 = new EventData("abc", inow, inow);
+ private static final EventData data2 = new EventData("def", inow, inow);
+
+ private static EventTrackInfo tracker;
+ private static ConcurrentMap<String, EventData> info;
+
+ private EventTrackInfoHandler hdlr;
+
+ @BeforeClass
+ public static void setUpBeforeClass() {
+ tracker = PolicyLogger.getEventTracker();
+ info = tracker.getEventInfo();
+ }
+
+ @Before
+ public void setUp() {
+ info.clear();
+
+ hdlr = new EventTrackInfoHandler();
+ }
+
+ @Test
+ public void testNoEvents() {
+ hdlr.run();
+ assertEquals(0, info.size());
+ }
+
+ @Test
+ public void testNothingExpired() {
+ tracker.storeEventData(data1);
+ tracker.storeEventData(data2);
+
+ hdlr.run();
+ assertEquals(2, info.size());
+ }
+
+ @Test
+ public void testSomeExpired() {
+ // not expired
+ tracker.storeEventData(data1);
+ tracker.storeEventData(data2);
+
+ // start time is expired
+ tracker.storeEventData(new EventData("expiredA", iexpired, inow));
+ tracker.storeEventData(new EventData("expiredB", iexpired, inow));
+
+ // end time is expired, but that has no impact - these should be retained
+ EventData oka = new EventData("okA", inow, iexpired);
+ EventData okb = new EventData("okB", inow, iexpired);
+
+ tracker.storeEventData(oka);
+ tracker.storeEventData(okb);
+
+ hdlr.run();
+ assertEquals(4, info.size());
+
+ assertEquals(data1, info.get("abc"));
+ assertEquals(data2, info.get("def"));
+ assertEquals(oka, info.get("okA"));
+ assertEquals(okb, info.get("okB"));
+ }
+
+ @Test
+ public void testMultipleRuns() {
+
+ hdlr.run();
+ assertEquals(0, info.size());
+
+ // not expired
+ tracker.storeEventData(data1);
+ tracker.storeEventData(data2);
+
+ hdlr.run();
+ assertEquals(2, info.size());
+
+ // start time is expired
+ tracker.storeEventData(new EventData("expiredA", iexpired, inow));
+ tracker.storeEventData(new EventData("expiredB", iexpired, inow));
+
+ // end time is expired, but that has no impact - these should be retained
+ tracker.storeEventData(new EventData("okA", inow, iexpired));
+ tracker.storeEventData(new EventData("okB", inow, iexpired));
+
+ hdlr.run();
+ assertEquals(4, info.size());
+
+ hdlr.run();
+ assertEquals(4, info.size());
+ }
+
+}
diff --git a/common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventTrackInfoTest.java b/common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventTrackInfoTest.java
new file mode 100644
index 00000000..3690bc5c
--- /dev/null
+++ b/common-logging/src/test/java/org/onap/policy/common/logging/eelf/EventTrackInfoTest.java
@@ -0,0 +1,130 @@
+/*
+ * ============LICENSE_START=======================================================
+ * ONAP Policy Engine - Common Modules
+ * ================================================================================
+ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.common.logging.eelf;
+
+import static org.junit.Assert.*;
+
+import java.time.Instant;
+
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ *
+ */
+public class EventTrackInfoTest {
+
+ private static final Instant istart = Instant.ofEpochMilli(100000l);
+ private static final Instant iend = Instant.ofEpochMilli(200000l);
+
+ private static final EventData data1 = new EventData("abc", istart, iend);
+ private static final EventData data2 = new EventData("def", iend, istart);
+
+ private EventTrackInfo info;
+
+ @Before
+ public void setUp() {
+ info = new EventTrackInfo();
+
+ }
+
+ /**
+ * Test method for {@link EventTrackInfo#EventTrackInfo()}.
+ */
+ @Test
+ public void testEventTrackInfo() {
+ assertNotNull(info.getEventInfo());
+ }
+
+ /**
+ * Test method for {@link EventTrackInfo#getEventDataByRequestID(String)}.
+ */
+ @Test
+ public void testGetEventDataByRequestID() {
+ info.storeEventData(data1);
+ info.storeEventData(data2);
+
+ assertTrue(data1 == info.getEventDataByRequestID("abc"));
+ assertTrue(data2 == info.getEventDataByRequestID("def"));
+ assertNull(info.getEventDataByRequestID("hello"));
+ }
+
+ /**
+ * Test method for {@link EventTrackInfo#storeEventData(EventData)}.
+ */
+ @Test
+ public void testStoreEventData() {
+ // should ignore null
+ info.storeEventData(null);
+ assertTrue(info.getEventInfo().isEmpty());
+
+ // should ignore if request id is null or empty
+ info.storeEventData(new EventData());
+ info.storeEventData(new EventData("", istart, iend));
+ assertTrue(info.getEventInfo().isEmpty());
+
+ info.storeEventData(data1);
+ info.storeEventData(data2);
+ assertEquals(2, info.getEventInfo().size());
+
+ // look-up by request id
+ assertTrue(data1 == info.getEventDataByRequestID("abc"));
+ assertTrue(data2 == info.getEventDataByRequestID("def"));
+
+ // doesn't replace existing value
+ info.storeEventData(new EventData("abc", iend, istart));
+ assertEquals(2, info.getEventInfo().size());
+ assertTrue(data1 == info.getEventDataByRequestID("abc"));
+ assertTrue(data2 == info.getEventDataByRequestID("def"));
+ }
+
+ /**
+ * Test method for {@link EventTrackInfo#remove(String)}.
+ */
+ @Test
+ public void testRemove() {
+ info.storeEventData(data1);
+ info.storeEventData(data2);
+
+ info.remove("abc");
+
+ // ensure only that item was removed
+ assertEquals(1, info.getEventInfo().size());
+
+ // look-up by request id
+ assertNull(info.getEventDataByRequestID("abc"));
+ assertTrue(data2 == info.getEventDataByRequestID("def"));
+ }
+
+ /**
+ * Test method for {@link EventTrackInfo#getEventInfo()}.
+ */
+ @Test
+ public void testGetEventInfo() {
+ info.storeEventData(data1);
+ info.storeEventData(data2);
+
+ assertEquals(2, info.getEventInfo().size());
+ assertTrue(data1 == info.getEventInfo().get("abc"));
+ assertTrue(data2 == info.getEventInfo().get("def"));
+ }
+
+}