This is an automated email from the ASF dual-hosted git repository. mattsicker pushed a commit to branch release-2.x in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git
commit b62db7ea3c91f701b5eee841bfb8800485b61525 Author: Matt Sicker <boa...@gmail.com> AuthorDate: Sun Sep 13 16:30:59 2020 -0500 Migrate rewrite tests to JUnit 5 Backported from 3.x. Signed-off-by: Matt Sicker <boa...@gmail.com> --- .../rewrite/LoggerNameLevelRewritePolicyTest.java | 13 ++-- .../appender/rewrite/MapRewritePolicyTest.java | 61 ++++++++--------- .../core/appender/rewrite/RewriteAppenderTest.java | 80 +++++++++------------- 3 files changed, 68 insertions(+), 86 deletions(-) diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/LoggerNameLevelRewritePolicyTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/LoggerNameLevelRewritePolicyTest.java index 101f8fa..b03d64b 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/LoggerNameLevelRewritePolicyTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/LoggerNameLevelRewritePolicyTest.java @@ -21,8 +21,9 @@ import org.apache.logging.log4j.core.LogEvent; import org.apache.logging.log4j.core.impl.Log4jLogEvent; import org.apache.logging.log4j.core.util.KeyValuePair; import org.apache.logging.log4j.message.SimpleMessage; -import org.junit.Assert; -import org.junit.Test; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; /** * Tests {@link LoggerNameLevelRewritePolicy}. @@ -44,26 +45,26 @@ public class LoggerNameLevelRewritePolicyTest { final LoggerNameLevelRewritePolicy updatePolicy = LoggerNameLevelRewritePolicy.createPolicy(loggerNameRewrite, rewrite); LogEvent rewritten = updatePolicy.rewrite(logEvent); - Assert.assertEquals(Level.DEBUG, rewritten.getLevel()); + assertEquals(Level.DEBUG, rewritten.getLevel()); logEvent = Log4jLogEvent.newBuilder().setLoggerName(loggerNameRewrite) .setLoggerFqcn("LoggerNameLevelRewritePolicyTest.testUpdate()").setLevel(Level.WARN) .setMessage(new SimpleMessage("Test")).setThrown(new RuntimeException("test")).setThreadName("none") .setTimeMillis(1).build(); rewritten = updatePolicy.rewrite(logEvent); - Assert.assertEquals(Level.INFO, rewritten.getLevel()); + assertEquals(Level.INFO, rewritten.getLevel()); final String loggerNameReadOnly = "com.nochange"; logEvent = Log4jLogEvent.newBuilder().setLoggerName(loggerNameReadOnly) .setLoggerFqcn("LoggerNameLevelRewritePolicyTest.testUpdate()").setLevel(Level.INFO) .setMessage(new SimpleMessage("Test")).setThrown(new RuntimeException("test")).setThreadName("none") .setTimeMillis(1).build(); rewritten = updatePolicy.rewrite(logEvent); - Assert.assertEquals(Level.INFO, rewritten.getLevel()); + assertEquals(Level.INFO, rewritten.getLevel()); logEvent = Log4jLogEvent.newBuilder().setLoggerName(loggerNameReadOnly) .setLoggerFqcn("LoggerNameLevelRewritePolicyTest.testUpdate()").setLevel(Level.WARN) .setMessage(new SimpleMessage("Test")).setThrown(new RuntimeException("test")).setThreadName("none") .setTimeMillis(1).build(); rewritten = updatePolicy.rewrite(logEvent); - Assert.assertEquals(Level.WARN, rewritten.getLevel()); + assertEquals(Level.WARN, rewritten.getLevel()); } } diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/MapRewritePolicyTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/MapRewritePolicyTest.java index e360f83..c9f0c51 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/MapRewritePolicyTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/MapRewritePolicyTest.java @@ -16,16 +16,6 @@ */ package org.apache.logging.log4j.core.appender.rewrite; -import static org.apache.logging.log4j.hamcrest.MapMatchers.hasSize; -import static org.hamcrest.Matchers.hasEntry; -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertThat; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Map; - import org.apache.logging.log4j.Level; import org.apache.logging.log4j.MarkerManager; import org.apache.logging.log4j.core.LogEvent; @@ -38,8 +28,18 @@ import org.apache.logging.log4j.message.StructuredDataMessage; import org.apache.logging.log4j.spi.MutableThreadContextStack; import org.apache.logging.log4j.spi.ThreadContextStack; import org.apache.logging.log4j.util.StringMap; -import org.junit.BeforeClass; -import org.junit.Test; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; + +import static org.apache.logging.log4j.hamcrest.MapMatchers.hasSize; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.hasEntry; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; public class MapRewritePolicyTest { @@ -48,11 +48,11 @@ public class MapRewritePolicyTest { private static KeyValuePair[] rewrite; private static LogEvent logEvent0, logEvent1, logEvent2, logEvent3; - @BeforeClass + @BeforeAll public static void setupClass() { stringMap.putValue("test1", "one"); stringMap.putValue("test2", "two"); - map = stringMap.toMap(); + map = stringMap.toMap(); logEvent0 = Log4jLogEvent.newBuilder() // .setLoggerName("test") // .setContextData(stringMap) // @@ -93,7 +93,7 @@ public class MapRewritePolicyTest { final MapRewritePolicy addPolicy = MapRewritePolicy.createPolicy("Add", rewrite); LogEvent rewritten = addPolicy.rewrite(logEvent0); compareLogEvents(logEvent0, rewritten); - assertEquals("Simple log message changed", logEvent0.getMessage(), rewritten.getMessage()); + assertEquals(logEvent0.getMessage(), rewritten.getMessage(), "Simple log message changed"); rewritten = addPolicy.rewrite(logEvent1); compareLogEvents(logEvent1, rewritten); @@ -113,7 +113,7 @@ public class MapRewritePolicyTest { final MapRewritePolicy updatePolicy = MapRewritePolicy.createPolicy("Update", rewrite); LogEvent rewritten = updatePolicy.rewrite(logEvent0); compareLogEvents(logEvent0, rewritten); - assertEquals("Simple log message changed", logEvent0.getMessage(), rewritten.getMessage()); + assertEquals(logEvent0.getMessage(), rewritten.getMessage(), "Simple log message changed"); rewritten = updatePolicy.rewrite(logEvent1); compareLogEvents(logEvent1, rewritten); @@ -133,7 +133,7 @@ public class MapRewritePolicyTest { final MapRewritePolicy addPolicy = MapRewritePolicy.createPolicy(null, rewrite); LogEvent rewritten = addPolicy.rewrite(logEvent0); compareLogEvents(logEvent0, rewritten); - assertEquals("Simple log message changed", logEvent0.getMessage(), rewritten.getMessage()); + assertEquals(logEvent0.getMessage(), rewritten.getMessage(), "Simple log message changed"); rewritten = addPolicy.rewrite(logEvent1); compareLogEvents(logEvent1, rewritten); @@ -164,19 +164,18 @@ public class MapRewritePolicyTest { @SuppressWarnings("deprecation") private void compareLogEvents(final LogEvent orig, final LogEvent changed) { // Ensure that everything but the Mapped Data is still the same - assertEquals("LoggerName changed", orig.getLoggerName(), changed.getLoggerName()); - assertEquals("Marker changed", orig.getMarker(), changed.getMarker()); - assertEquals("FQCN changed", orig.getLoggerFqcn(), changed.getLoggerFqcn()); - assertEquals("Level changed", orig.getLevel(), changed.getLevel()); - assertArrayEquals("Throwable changed", - orig.getThrown() == null ? null : orig.getThrownProxy().getExtendedStackTrace(), - changed.getThrown() == null ? null : changed.getThrownProxy().getExtendedStackTrace() - ); - assertEquals("ContextMap changed", orig.getContextMap(), changed.getContextMap()); - assertEquals("ContextData changed", orig.getContextData(), changed.getContextData()); - assertEquals("ContextStack changed", orig.getContextStack(), changed.getContextStack()); - assertEquals("ThreadName changed", orig.getThreadName(), changed.getThreadName()); - assertEquals("Source changed", orig.getSource(), changed.getSource()); - assertEquals("Millis changed", orig.getTimeMillis(), changed.getTimeMillis()); + assertEquals(orig.getLoggerName(), changed.getLoggerName(), "LoggerName changed"); + assertEquals(orig.getMarker(), changed.getMarker(), "Marker changed"); + assertEquals(orig.getLoggerFqcn(), changed.getLoggerFqcn(), "FQCN changed"); + assertEquals(orig.getLevel(), changed.getLevel(), "Level changed"); + assertArrayEquals( + orig.getThrown() == null ? null : orig.getThrownProxy().getExtendedStackTrace(), + changed.getThrown() == null ? null : changed.getThrownProxy().getExtendedStackTrace(), + "Throwable changed"); + assertEquals(orig.getContextData(), changed.getContextData(), "ContextData changed"); + assertEquals(orig.getContextStack(), changed.getContextStack(), "ContextStack changed"); + assertEquals(orig.getThreadName(), changed.getThreadName(), "ThreadName changed"); + assertEquals(orig.getSource(), changed.getSource(), "Source changed"); + assertEquals(orig.getTimeMillis(), changed.getTimeMillis(), "Millis changed"); } } diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/RewriteAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/RewriteAppenderTest.java index 73082e9..9a94289 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/RewriteAppenderTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/RewriteAppenderTest.java @@ -16,51 +16,33 @@ */ package org.apache.logging.log4j.core.appender.rewrite; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.util.List; -import java.util.Map; - import org.apache.logging.log4j.EventLogger; -import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.core.LogEvent; -import org.apache.logging.log4j.junit.LoggerContextRule; +import org.apache.logging.log4j.core.LoggerContext; +import org.apache.logging.log4j.hamcrest.MapMatchers; +import org.apache.logging.log4j.junit.LoggerContextSource; +import org.apache.logging.log4j.junit.Named; import org.apache.logging.log4j.message.Message; import org.apache.logging.log4j.message.StructuredDataMessage; import org.apache.logging.log4j.test.appender.ListAppender; -import org.junit.After; -import org.junit.Before; -import org.junit.ClassRule; -import org.junit.Test; +import org.junit.jupiter.api.Test; -/** - * - */ -public class RewriteAppenderTest { - private ListAppender app; - private ListAppender app2; +import java.util.List; +import java.util.Map; - @ClassRule - public static LoggerContextRule init = new LoggerContextRule("log4j-rewrite.xml"); +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.*; +import static org.junit.jupiter.api.Assertions.*; - @Before - public void setUp() throws Exception { - app = init.getListAppender("List"); - app2 = init.getListAppender("List2"); - } +@LoggerContextSource("log4j-rewrite.xml") +public class RewriteAppenderTest { + private final ListAppender app; + private final ListAppender app2; - @After - public void tearDown() throws Exception { - if (app != null) { - app.clear(); - } - if (app2 != null) { - app2.clear(); - } + public RewriteAppenderTest(@Named("List") final ListAppender app, @Named("List2") final ListAppender app2) { + this.app = app.clear(); + this.app2 = app2.clear(); } @Test @@ -70,44 +52,44 @@ public class RewriteAppenderTest { msg.put("Key2", "Value2"); EventLogger.logEvent(msg); final List<LogEvent> list = app.getEvents(); - assertNotNull("No events generated", list); - assertTrue("Incorrect number of events. Expected 1, got " + list.size(), list.size() == 1); + assertThat(list, hasSize(1)); final LogEvent event = list.get(0); final Message m = event.getMessage(); - assertTrue("Message is not a StringMapMessage: " + m.getClass(), m instanceof StructuredDataMessage); + assertThat(m, instanceOf(StructuredDataMessage.class)); final StructuredDataMessage message = (StructuredDataMessage) m; final Map<String, String> map = message.getData(); - assertNotNull("No Map", map); - assertTrue("Incorrect number of map entries, expected 3 got " + map.size(), map.size() == 3); + assertNotNull(map, "No Map"); + assertThat(map, MapMatchers.hasSize(3)); final String value = map.get("Key1"); assertEquals("Apache", value); } @Test - public void testProperties() { - final Logger logger = LogManager.getLogger(RewriteAppenderTest.class); + public void testProperties(final LoggerContext context) { + final Logger logger = context.getLogger(RewriteAppenderTest.class); logger.debug("Test properties rewrite"); final List<String> list = app2.getMessages(); - assertNotNull("No events generated", list); - assertTrue("Incorrect number of events. Expected 1, got " + list.size(), list.size() == 1); - assertFalse("Did not resolve user name", list.get(0).contains("{user.dir}")); + assertThat(list, hasSize(1)); + assertThat(list.get(0), not(containsString("{user.dir}"))); + assertNotNull(list, "No events generated"); + assertEquals(list.size(), 1, "Incorrect number of events. Expected 1, got " + list.size()); + assertFalse(list.get(0).contains("{user."), "Did not resolve user name"); } @Test - public void testFilter() { + public void testFilter(final LoggerContext context) { StructuredDataMessage msg = new StructuredDataMessage("Test", "This is a test", "Service"); msg.put("Key1", "Value2"); msg.put("Key2", "Value1"); - final Logger logger = LogManager.getLogger("org.apache.logging.log4j.core.Logging"); + final Logger logger = context.getLogger("org.apache.logging.log4j.core.Logging"); logger.debug(msg); msg = new StructuredDataMessage("Test", "This is a test", "Service"); msg.put("Key1", "Value1"); msg.put("Key2", "Value2"); logger.trace(msg); - final List<LogEvent> list = app.getEvents(); - assertTrue("Events were generated", list == null || list.isEmpty()); + assertThat(app.getEvents(), empty()); } }