summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authork.kedron <k.kedron@partner.samsung.com>2019-06-06 11:18:08 +0200
committerOfir Sonsino <ofir.sonsino@intl.att.com>2019-06-17 07:15:57 +0000
commit4b1861c863570af103e0c070e8834f97dfc35075 (patch)
tree04845158a7deee73ec3c5bf678fb72da6bdb1ef6
parent9f9eca8a4228f02a41d37bfb518dff55f27a64f9 (diff)
Add new test for OnapLoggerFactory and Stopwatch.
Issue-ID: SDC-2327 Signed-off-by: Krystian Kedron <k.kedron@partner.samsung.com> Change-Id: Ib137a2ce8b7e31307b8b2f1483c79f9fa32599c5
-rw-r--r--pom.xml12
-rw-r--r--src/test/java/org/onap/sdc/common/onaplog/LoggerAdapter.java40
-rw-r--r--src/test/java/org/onap/sdc/common/onaplog/OnapLoggerGenericTest.java91
3 files changed, 143 insertions, 0 deletions
diff --git a/pom.xml b/pom.xml
index f35d2dd..02740e5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -94,6 +94,18 @@
<version>0.11</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>uk.org.lidalia</groupId>
+ <artifactId>slf4j-test</artifactId>
+ <version>1.0.0</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-inline</artifactId>
+ <version>2.7.13</version>
+ <scope>test</scope>
+ </dependency>
</dependencies>
<build>
<plugins>
diff --git a/src/test/java/org/onap/sdc/common/onaplog/LoggerAdapter.java b/src/test/java/org/onap/sdc/common/onaplog/LoggerAdapter.java
new file mode 100644
index 0000000..ceb3d98
--- /dev/null
+++ b/src/test/java/org/onap/sdc/common/onaplog/LoggerAdapter.java
@@ -0,0 +1,40 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2019 Samsung. 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.sdc.common.onaplog;
+
+import com.google.common.collect.ImmutableList;
+
+import uk.org.lidalia.slf4jtest.LoggingEvent;
+import uk.org.lidalia.slf4jtest.TestLogger;
+import uk.org.lidalia.slf4jtest.TestLoggerFactory;
+
+class LoggerAdapter {
+
+ private TestLogger logger;
+
+ LoggerAdapter(Class clazz) {
+ this.logger = TestLoggerFactory.getTestLogger(clazz);
+ }
+
+ ImmutableList<LoggingEvent> getLoggingEvents() {
+ return logger.getLoggingEvents();
+ }
+} \ No newline at end of file
diff --git a/src/test/java/org/onap/sdc/common/onaplog/OnapLoggerGenericTest.java b/src/test/java/org/onap/sdc/common/onaplog/OnapLoggerGenericTest.java
new file mode 100644
index 0000000..57adcd3
--- /dev/null
+++ b/src/test/java/org/onap/sdc/common/onaplog/OnapLoggerGenericTest.java
@@ -0,0 +1,91 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2019 Samsung. 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.sdc.common.onaplog;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+
+import com.google.common.collect.ImmutableList;
+import org.junit.Test;
+import org.onap.sdc.common.onaplog.interfaces.IOnapLogConfiguration;
+import org.slf4j.MDC;
+import uk.org.lidalia.slf4jtest.LoggingEvent;
+
+public class OnapLoggerGenericTest {
+
+ private static final String FIRST_ERROR_EXPECTED_MESSAGE = "call to stop without calling start first, " +
+ "this is not compliant with EELF format";
+ private static final String SECOND_ERROR_EXPECTED_MESSAGE = "failed to calculate elapsed time";
+ private static final String ERROR = "ERROR";
+
+ @Test
+ public void stopWatchTest() {
+ // given
+ Stopwatch stopwatch = new Stopwatch();
+
+ // when
+ stopwatch.start();
+ stopwatch.stop();
+
+ // then
+ assertNotNull(MDC.get(IOnapLogConfiguration.MDC_BEGIN_TIMESTAMP));
+ assertNotNull(MDC.get(IOnapLogConfiguration.MDC_END_TIMESTAMP));
+ assertNotNull(MDC.get(IOnapLogConfiguration.MDC_ELAPSED_TIME));
+ }
+
+ @Test
+ public void stopWatchFailTest() {
+ // given
+ Stopwatch stopwatch = new Stopwatch();
+ LoggerAdapter adapter = new LoggerAdapter(Stopwatch.class);
+
+ // when
+ stopwatch.stop();
+ ImmutableList<LoggingEvent> logs = adapter.getLoggingEvents();
+
+ // then
+ LoggingEvent log = logs.get(0);
+ assertEquals(ERROR, log.getLevel().name());
+ assertEquals(FIRST_ERROR_EXPECTED_MESSAGE, log.getMessage());
+
+ log = logs.get(1);
+ assertEquals(ERROR, log.getLevel().name());
+ assertEquals(SECOND_ERROR_EXPECTED_MESSAGE, log.getMessage());
+ }
+
+ @Test
+ public void onapLoggerFactoryTest() {
+
+ OnapLoggerAudit audit = OnapLoggerFactory.getLogger(OnapLoggerAudit.class);
+ OnapLoggerDebug debug = OnapLoggerFactory.getLogger(OnapLoggerDebug.class);
+ OnapLoggerMetric metric = OnapLoggerFactory.getLogger(OnapLoggerMetric.class);
+ OnapLoggerError error = OnapLoggerFactory.getLogger(OnapLoggerError.class);
+ Stopwatch stopwatch = OnapLoggerFactory.getLogger(Stopwatch.class);
+
+ assertNotNull(audit);
+ assertNotNull(debug);
+ assertNotNull(metric);
+ assertNotNull(error);
+
+ assertNull(stopwatch);
+ }
+}