diff options
author | k.kedron <k.kedron@partner.samsung.com> | 2019-06-06 11:18:08 +0200 |
---|---|---|
committer | Ofir Sonsino <ofir.sonsino@intl.att.com> | 2019-06-17 07:15:57 +0000 |
commit | 4b1861c863570af103e0c070e8834f97dfc35075 (patch) | |
tree | 04845158a7deee73ec3c5bf678fb72da6bdb1ef6 | |
parent | 9f9eca8a4228f02a41d37bfb518dff55f27a64f9 (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.xml | 12 | ||||
-rw-r--r-- | src/test/java/org/onap/sdc/common/onaplog/LoggerAdapter.java | 40 | ||||
-rw-r--r-- | src/test/java/org/onap/sdc/common/onaplog/OnapLoggerGenericTest.java | 91 |
3 files changed, 143 insertions, 0 deletions
@@ -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); + } +} |