From 492de2e6bdeac75cdb05a295cc809498f416c6cb Mon Sep 17 00:00:00 2001 From: Joern Huxhorn Date: Thu, 17 Nov 2016 10:50:40 +0100 Subject: [PATCH] Refactored AbstractLoggerTest. --- .../apache/logging/log4j/AbstractLoggerTest.java | 1702 ++++++++++---------- 1 file changed, 862 insertions(+), 840 deletions(-) diff --git a/log4j-api/src/test/java/org/apache/logging/log4j/AbstractLoggerTest.java b/log4j-api/src/test/java/org/apache/logging/log4j/AbstractLoggerTest.java index 348cda1..9510c9f 100644 --- a/log4j-api/src/test/java/org/apache/logging/log4j/AbstractLoggerTest.java +++ b/log4j-api/src/test/java/org/apache/logging/log4j/AbstractLoggerTest.java @@ -16,9 +16,6 @@ */ package org.apache.logging.log4j; -import java.lang.reflect.Field; -import java.lang.reflect.Modifier; - import org.apache.logging.log4j.message.Message; import org.apache.logging.log4j.message.ObjectMessage; import org.apache.logging.log4j.message.ParameterizedMessage; @@ -26,51 +23,22 @@ import org.apache.logging.log4j.message.ParameterizedMessageFactory; import org.apache.logging.log4j.message.SimpleMessage; import org.apache.logging.log4j.spi.AbstractLogger; import org.apache.logging.log4j.spi.MessageFactory2Adapter; -import org.junit.Before; import org.junit.Test; -import static org.junit.Assert.*; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; /** * */ -public class AbstractLoggerTest extends AbstractLogger { - static final StringBuilder CHAR_SEQ = new StringBuilder("CharSeq"); - private int charSeqCount; - private int objectCount; - - // TODO add proper tests for ReusableMessage - @Before - public void before() throws Exception { - final Field field = AbstractLogger.class.getDeclaredField("messageFactory"); - field.setAccessible(true); // make non-private - - final Field modifierField = Field.class.getDeclaredField("modifiers"); - modifierField.setAccessible(true); - modifierField.setInt(field, field.getModifiers() &~ Modifier.FINAL); // make non-private - - field.set(this, new MessageFactory2Adapter(ParameterizedMessageFactory.INSTANCE)); - } - - private static class LogEvent { - - String markerName; - Message data; - Throwable t; - - public LogEvent(final String markerName, final Message data, final Throwable t) { - this.markerName = markerName; - this.data = data; - this.t = t; - } - } +public class AbstractLoggerTest { - private static final long serialVersionUID = 1L; + private static final StringBuilder CHAR_SEQ = new StringBuilder("CharSeq"); - private static Level currentLevel; - - private LogEvent currentEvent; + // TODO add proper tests for ReusableMessage + @SuppressWarnings("ThrowableInstanceNeverThrown") private static Throwable t = new UnsupportedOperationException("Test"); private static Class obj = AbstractLogger.class; @@ -84,870 +52,924 @@ public class AbstractLoggerTest extends AbstractLogger { private static Message param = new ParameterizedMessage(pattern, p1, p2); - private static String marker = "TEST"; + private static final Marker MARKER = MarkerManager.getMarker("TEST"); + private static final String MARKER_NAME = "TEST"; - private static LogEvent[] events = new LogEvent[] { + private static final LogEvent[] EVENTS = new LogEvent[] { new LogEvent(null, simple, null), - new LogEvent(marker, simple, null), + new LogEvent(MARKER_NAME, simple, null), new LogEvent(null, simple, t), - new LogEvent(marker, simple, t), + new LogEvent(MARKER_NAME, simple, t), new LogEvent(null, object, null), - new LogEvent(marker, object, null), + new LogEvent(MARKER_NAME, object, null), new LogEvent(null, object, t), - new LogEvent(marker, object, t), + new LogEvent(MARKER_NAME, object, t), new LogEvent(null, param, null), - new LogEvent(marker, param, null), + new LogEvent(MARKER_NAME, param, null), new LogEvent(null, simple, null), new LogEvent(null, simple, t), - new LogEvent(marker, simple, null), - new LogEvent(marker, simple, t), - new LogEvent(marker, simple, null), + new LogEvent(MARKER_NAME, simple, null), + new LogEvent(MARKER_NAME, simple, t), + new LogEvent(MARKER_NAME, simple, null), new LogEvent(null, charSeq, null), new LogEvent(null, charSeq, t), - new LogEvent(marker, charSeq, null), - new LogEvent(marker, charSeq, t), + new LogEvent(MARKER_NAME, charSeq, null), + new LogEvent(MARKER_NAME, charSeq, t), }; - @Override - public Level getLevel() { - return currentLevel; - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final Message data, final Throwable t) { - assertTrue("Incorrect Level. Expected " + currentLevel + ", actual " + level, level.equals(currentLevel)); - if (marker == null) { - if (currentEvent.markerName != null) { - fail("Incorrect marker. Expected " + currentEvent.markerName + ", actual is null"); - } - } else { - if (currentEvent.markerName == null) { - fail("Incorrect marker. Expected null. Actual is " + marker.getName()); - } else { - assertTrue("Incorrect marker. Expected " + currentEvent.markerName + ", actual " + - marker.getName(), currentEvent.markerName.equals(marker.getName())); - } - } - if (data == null) { - if (currentEvent.data != null) { - fail("Incorrect message. Expected " + currentEvent.data + ", actual is null"); - } - } else { - if (currentEvent.data == null) { - fail("Incorrect message. Expected null. Actual is " + data.getFormattedMessage()); - } else { - assertTrue("Incorrect message type. Expected " + currentEvent.data + ", actual " + data, - data.getClass().isAssignableFrom(currentEvent.data.getClass())); - assertTrue("Incorrect message. Expected " + currentEvent.data.getFormattedMessage() + ", actual " + - data.getFormattedMessage(), - currentEvent.data.getFormattedMessage().equals(data.getFormattedMessage())); - } - } - if (t == null) { - if (currentEvent.t != null) { - fail("Incorrect Throwable. Expected " + currentEvent.t + ", actual is null"); - } - } else { - if (currentEvent.t == null) { - fail("Incorrect Throwable. Expected null. Actual is " + t); - } else { - assertTrue("Incorrect Throwable. Expected " + currentEvent.t + ", actual " + t, - currentEvent.t.equals(t)); - } - } - return true; - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final CharSequence data, final Throwable t) { - charSeqCount++; - return isEnabled(level, marker, (Message) new SimpleMessage(data), t); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final Object data, final Throwable t) { - objectCount++; - return isEnabled(level, marker, new ObjectMessage(data), t); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String data) { - return isEnabled(level, marker, (Message) new SimpleMessage(data), null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String data, final Object... p1) { - return isEnabled(level, marker, new ParameterizedMessage(data, p1), null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0) { - return isEnabled(level, marker, new ParameterizedMessage(message, p0), null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, - final Object p1) { - return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1), null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, - final Object p1, final Object p2) { - return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2), null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, - final Object p1, final Object p2, final Object p3) { - return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3), null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, - final Object p1, final Object p2, final Object p3, - final Object p4) { - return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4), null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, - final Object p1, final Object p2, final Object p3, - final Object p4, final Object p5) { - return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4, p5), null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, - final Object p1, final Object p2, final Object p3, - final Object p4, final Object p5, final Object p6) { - return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4, p5, p6), null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, - final Object p1, final Object p2, final Object p3, - final Object p4, final Object p5, final Object p6, - final Object p7) { - return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4, p5, p6, p7), null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, - final Object p1, final Object p2, final Object p3, - final Object p4, final Object p5, final Object p6, - final Object p7, final Object p8) { - return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4, p5, p6, p7, p8), null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, - final Object p1, final Object p2, final Object p3, - final Object p4, final Object p5, final Object p6, - final Object p7, final Object p8, final Object p9) { - return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9), - null); - } - - @Override - public boolean isEnabled(final Level level, final Marker marker, final String data, final Throwable t) { - return isEnabled(level, marker, (Message) new SimpleMessage(data), t); - } - - @Override - public void logMessage(final String fqcn, final Level level, final Marker marker, final Message data, final Throwable t) { - assertTrue("Incorrect Level. Expected " + currentLevel + ", actual " + level, level.equals(currentLevel)); - if (marker == null) { - if (currentEvent.markerName != null) { - fail("Incorrect marker. Expected " + currentEvent.markerName + ", actual is null"); - } - } else { - if (currentEvent.markerName == null) { - fail("Incorrect marker. Expected null. Actual is " + marker.getName()); - } else { - assertTrue("Incorrect marker. Expected " + currentEvent.markerName + ", actual " + - marker.getName(), currentEvent.markerName.equals(marker.getName())); - } - } - if (data == null) { - if (currentEvent.data != null) { - fail("Incorrect message. Expected " + currentEvent.data + ", actual is null"); - } - } else { - if (currentEvent.data == null) { - fail("Incorrect message. Expected null. Actual is " + data.getFormattedMessage()); - } else { - assertTrue("Incorrect message type. Expected " + currentEvent.data + ", actual " + data, - data.getClass().isAssignableFrom(currentEvent.data.getClass())); - assertTrue("Incorrect message. Expected " + currentEvent.data.getFormattedMessage() + ", actual " + - data.getFormattedMessage(), - currentEvent.data.getFormattedMessage().equals(data.getFormattedMessage())); - } - } - if (t == null) { - if (currentEvent.t != null) { - fail("Incorrect Throwable. Expected " + currentEvent.t + ", actual is null"); - } - } else { - if (currentEvent.t == null) { - fail("Incorrect Throwable. Expected null. Actual is " + t); - } else { - assertTrue("Incorrect Throwable. Expected " + currentEvent.t + ", actual " + t, - currentEvent.t.equals(t)); - } - } - } @Test public void testDebug() { - currentLevel = Level.DEBUG; - - currentEvent = events[0]; - debug("Hello"); - debug((Marker) null, "Hello"); - currentEvent = events[1]; - debug(MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - debug("Hello", t); - debug((Marker) null, "Hello", t); - currentEvent = events[3]; - debug(MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - debug(obj); - currentEvent = events[5]; - debug(MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - debug(obj, t); - debug((Marker) null, obj, t); - currentEvent = events[7]; - debug(MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - debug(pattern, p1, p2); - currentEvent = events[9]; - debug(MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - debug(simple); - debug((Marker) null, simple); - debug((Marker) null, simple, null); - currentEvent = events[11]; - debug(simple, t); - debug((Marker) null, simple, t); - currentEvent = events[12]; - debug(MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - debug(MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - debug(MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - debug(CHAR_SEQ); - currentEvent = events[16]; - debug(CHAR_SEQ, t); - currentEvent = events[17]; - debug(MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - debug(MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.DEBUG); + + logger.setCurrentEvent(EVENTS[0]); + logger.debug("Hello"); + logger.debug((Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.debug(MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.debug("Hello", t); + logger.debug((Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.debug(MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.debug(obj); + logger.setCurrentEvent(EVENTS[5]); + logger.debug(MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.debug(obj, t); + logger.debug((Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.debug(MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.debug(pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.debug(MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.debug(simple); + logger.debug((Marker) null, simple); + logger.debug((Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.debug(simple, t); + logger.debug((Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.debug(MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.debug(MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.debug(MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.debug(CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.debug(CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.debug(MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.debug(MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); } @Test public void testError() { - currentLevel = Level.ERROR; - - currentEvent = events[0]; - error("Hello"); - error((Marker) null, "Hello"); - currentEvent = events[1]; - error(MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - error("Hello", t); - error((Marker) null, "Hello", t); - currentEvent = events[3]; - error(MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - error(obj); - currentEvent = events[5]; - error(MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - error(obj, t); - error((Marker) null, obj, t); - currentEvent = events[7]; - error(MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - error(pattern, p1, p2); - currentEvent = events[9]; - error(MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - error(simple); - error((Marker) null, simple); - error((Marker) null, simple, null); - currentEvent = events[11]; - error(simple, t); - error((Marker) null, simple, t); - currentEvent = events[12]; - error(MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - error(MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - error(MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - error(CHAR_SEQ); - currentEvent = events[16]; - error(CHAR_SEQ, t); - currentEvent = events[17]; - error(MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - error(MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.ERROR); + + logger.setCurrentEvent(EVENTS[0]); + logger.error("Hello"); + logger.error((Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.error(MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.error("Hello", t); + logger.error((Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.error(MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.error(obj); + logger.setCurrentEvent(EVENTS[5]); + logger.error(MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.error(obj, t); + logger.error((Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.error(MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.error(pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.error(MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.error(simple); + logger.error((Marker) null, simple); + logger.error((Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.error(simple, t); + logger.error((Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.error(MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.error(MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.error(MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.error(CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.error(CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.error(MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.error(MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); } @Test public void testFatal() { - currentLevel = Level.FATAL; - - currentEvent = events[0]; - fatal("Hello"); - fatal((Marker) null, "Hello"); - currentEvent = events[1]; - fatal(MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - fatal("Hello", t); - fatal((Marker) null, "Hello", t); - currentEvent = events[3]; - fatal(MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - fatal(obj); - currentEvent = events[5]; - fatal(MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - fatal(obj, t); - fatal((Marker) null, obj, t); - currentEvent = events[7]; - fatal(MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - fatal(pattern, p1, p2); - currentEvent = events[9]; - fatal(MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - fatal(simple); - fatal((Marker) null, simple); - fatal((Marker) null, simple, null); - currentEvent = events[11]; - fatal(simple, t); - fatal((Marker) null, simple, t); - currentEvent = events[12]; - fatal(MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - fatal(MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - fatal(MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - fatal(CHAR_SEQ); - currentEvent = events[16]; - fatal(CHAR_SEQ, t); - currentEvent = events[17]; - fatal(MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - fatal(MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.FATAL); + + logger.setCurrentEvent(EVENTS[0]); + logger.fatal("Hello"); + logger.fatal((Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.fatal(MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.fatal("Hello", t); + logger.fatal((Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.fatal(MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.fatal(obj); + logger.setCurrentEvent(EVENTS[5]); + logger.fatal(MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.fatal(obj, t); + logger.fatal((Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.fatal(MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.fatal(pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.fatal(MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.fatal(simple); + logger.fatal((Marker) null, simple); + logger.fatal((Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.fatal(simple, t); + logger.fatal((Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.fatal(MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.fatal(MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.fatal(MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.fatal(CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.fatal(CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.fatal(MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.fatal(MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); } @Test public void testInfo() { - currentLevel = Level.INFO; - - currentEvent = events[0]; - info("Hello"); - info((Marker) null, "Hello"); - currentEvent = events[1]; - info(MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - info("Hello", t); - info((Marker) null, "Hello", t); - currentEvent = events[3]; - info(MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - info(obj); - currentEvent = events[5]; - info(MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - info(obj, t); - info((Marker) null, obj, t); - currentEvent = events[7]; - info(MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - info(pattern, p1, p2); - currentEvent = events[9]; - info(MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - info(simple); - info((Marker) null, simple); - info((Marker) null, simple, null); - currentEvent = events[11]; - info(simple, t); - info((Marker) null, simple, t); - currentEvent = events[12]; - info(MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - info(MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - info(MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - info(CHAR_SEQ); - currentEvent = events[16]; - info(CHAR_SEQ, t); - currentEvent = events[17]; - info(MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - info(MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.INFO); + + logger.setCurrentEvent(EVENTS[0]); + logger.info("Hello"); + logger.info((Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.info(MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.info("Hello", t); + logger.info((Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.info(MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.info(obj); + logger.setCurrentEvent(EVENTS[5]); + logger.info(MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.info(obj, t); + logger.info((Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.info(MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.info(pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.info(MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.info(simple); + logger.info((Marker) null, simple); + logger.info((Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.info(simple, t); + logger.info((Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.info(MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.info(MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.info(MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.info(CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.info(CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.info(MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.info(MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); } @Test public void testLogDebug() { - currentLevel = Level.DEBUG; - - currentEvent = events[0]; - log(Level.DEBUG, "Hello"); - log(Level.DEBUG, (Marker) null, "Hello"); - currentEvent = events[1]; - log(Level.DEBUG, MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - log(Level.DEBUG, "Hello", t); - log(Level.DEBUG, (Marker) null, "Hello", t); - currentEvent = events[3]; - log(Level.DEBUG, MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - log(Level.DEBUG, obj); - currentEvent = events[5]; - log(Level.DEBUG, MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - log(Level.DEBUG, obj, t); - log(Level.DEBUG, (Marker) null, obj, t); - currentEvent = events[7]; - log(Level.DEBUG, MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - log(Level.DEBUG, pattern, p1, p2); - currentEvent = events[9]; - log(Level.DEBUG, MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - log(Level.DEBUG, simple); - log(Level.DEBUG, (Marker) null, simple); - log(Level.DEBUG, (Marker) null, simple, null); - currentEvent = events[11]; - log(Level.DEBUG, simple, t); - log(Level.DEBUG, (Marker) null, simple, t); - currentEvent = events[12]; - log(Level.DEBUG, MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - log(Level.DEBUG, MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - log(Level.DEBUG, MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - log(Level.DEBUG, CHAR_SEQ); - currentEvent = events[16]; - log(Level.DEBUG, CHAR_SEQ, t); - currentEvent = events[17]; - log(Level.DEBUG, MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - log(Level.DEBUG, MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.DEBUG); + + logger.setCurrentEvent(EVENTS[0]); + logger.log(Level.DEBUG, "Hello"); + logger.log(Level.DEBUG, (Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.log(Level.DEBUG, MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.log(Level.DEBUG, "Hello", t); + logger.log(Level.DEBUG, (Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.log(Level.DEBUG, MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.log(Level.DEBUG, obj); + logger.setCurrentEvent(EVENTS[5]); + logger.log(Level.DEBUG, MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.log(Level.DEBUG, obj, t); + logger.log(Level.DEBUG, (Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.log(Level.DEBUG, MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.log(Level.DEBUG, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.log(Level.DEBUG, MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.log(Level.DEBUG, simple); + logger.log(Level.DEBUG, (Marker) null, simple); + logger.log(Level.DEBUG, (Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.log(Level.DEBUG, simple, t); + logger.log(Level.DEBUG, (Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.log(Level.DEBUG, MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.log(Level.DEBUG, MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.log(Level.DEBUG, MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.log(Level.DEBUG, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.log(Level.DEBUG, CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.log(Level.DEBUG, MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.log(Level.DEBUG, MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); } @Test public void testLogError() { - currentLevel = Level.ERROR; - - currentEvent = events[0]; - log(Level.ERROR, "Hello"); - log(Level.ERROR, (Marker) null, "Hello"); - currentEvent = events[1]; - log(Level.ERROR, MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - log(Level.ERROR, "Hello", t); - log(Level.ERROR, (Marker) null, "Hello", t); - currentEvent = events[3]; - log(Level.ERROR, MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - log(Level.ERROR, obj); - currentEvent = events[5]; - log(Level.ERROR, MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - log(Level.ERROR, obj, t); - log(Level.ERROR, (Marker) null, obj, t); - currentEvent = events[7]; - log(Level.ERROR, MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - log(Level.ERROR, pattern, p1, p2); - currentEvent = events[9]; - log(Level.ERROR, MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - log(Level.ERROR, simple); - log(Level.ERROR, (Marker) null, simple); - log(Level.ERROR, (Marker) null, simple, null); - currentEvent = events[11]; - log(Level.ERROR, simple, t); - log(Level.ERROR, (Marker) null, simple, t); - currentEvent = events[12]; - log(Level.ERROR, MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - log(Level.ERROR, MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - log(Level.ERROR, MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - log(Level.ERROR, CHAR_SEQ); - currentEvent = events[16]; - log(Level.ERROR, CHAR_SEQ, t); - currentEvent = events[17]; - log(Level.ERROR, MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - log(Level.ERROR, MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.ERROR); + + logger.setCurrentEvent(EVENTS[0]); + logger.log(Level.ERROR, "Hello"); + logger.log(Level.ERROR, (Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.log(Level.ERROR, MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.log(Level.ERROR, "Hello", t); + logger.log(Level.ERROR, (Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.log(Level.ERROR, MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.log(Level.ERROR, obj); + logger.setCurrentEvent(EVENTS[5]); + logger.log(Level.ERROR, MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.log(Level.ERROR, obj, t); + logger.log(Level.ERROR, (Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.log(Level.ERROR, MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.log(Level.ERROR, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.log(Level.ERROR, MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.log(Level.ERROR, simple); + logger.log(Level.ERROR, (Marker) null, simple); + logger.log(Level.ERROR, (Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.log(Level.ERROR, simple, t); + logger.log(Level.ERROR, (Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.log(Level.ERROR, MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.log(Level.ERROR, MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.log(Level.ERROR, MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.log(Level.ERROR, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.log(Level.ERROR, CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.log(Level.ERROR, MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.log(Level.ERROR, MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); } @Test public void testLogFatal() { - currentLevel = Level.FATAL; - - currentEvent = events[0]; - log(Level.FATAL, "Hello"); - log(Level.FATAL, (Marker) null, "Hello"); - currentEvent = events[1]; - log(Level.FATAL, MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - log(Level.FATAL, "Hello", t); - log(Level.FATAL, (Marker) null, "Hello", t); - currentEvent = events[3]; - log(Level.FATAL, MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - log(Level.FATAL, obj); - currentEvent = events[5]; - log(Level.FATAL, MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - log(Level.FATAL, obj, t); - log(Level.FATAL, (Marker) null, obj, t); - currentEvent = events[7]; - log(Level.FATAL, MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - log(Level.FATAL, pattern, p1, p2); - currentEvent = events[9]; - log(Level.FATAL, MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - log(Level.FATAL, simple); - log(Level.FATAL, (Marker) null, simple); - log(Level.FATAL, (Marker) null, simple, null); - currentEvent = events[11]; - log(Level.FATAL, simple, t); - log(Level.FATAL, (Marker) null, simple, t); - currentEvent = events[12]; - log(Level.FATAL, MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - log(Level.FATAL, MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - log(Level.FATAL, MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - log(Level.FATAL, CHAR_SEQ); - currentEvent = events[16]; - log(Level.FATAL, CHAR_SEQ, t); - currentEvent = events[17]; - log(Level.FATAL, MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - log(Level.FATAL, MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.FATAL); + + logger.setCurrentEvent(EVENTS[0]); + logger.log(Level.FATAL, "Hello"); + logger.log(Level.FATAL, (Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.log(Level.FATAL, MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.log(Level.FATAL, "Hello", t); + logger.log(Level.FATAL, (Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.log(Level.FATAL, MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.log(Level.FATAL, obj); + logger.setCurrentEvent(EVENTS[5]); + logger.log(Level.FATAL, MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.log(Level.FATAL, obj, t); + logger.log(Level.FATAL, (Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.log(Level.FATAL, MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.log(Level.FATAL, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.log(Level.FATAL, MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.log(Level.FATAL, simple); + logger.log(Level.FATAL, (Marker) null, simple); + logger.log(Level.FATAL, (Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.log(Level.FATAL, simple, t); + logger.log(Level.FATAL, (Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.log(Level.FATAL, MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.log(Level.FATAL, MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.log(Level.FATAL, MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.log(Level.FATAL, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.log(Level.FATAL, CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.log(Level.FATAL, MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.log(Level.FATAL, MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); } @Test public void testLogInfo() { - currentLevel = Level.INFO; - - currentEvent = events[0]; - log(Level.INFO, "Hello"); - log(Level.INFO, (Marker) null, "Hello"); - currentEvent = events[1]; - log(Level.INFO, MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - log(Level.INFO, "Hello", t); - log(Level.INFO, (Marker) null, "Hello", t); - currentEvent = events[3]; - log(Level.INFO, MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - log(Level.INFO, obj); - currentEvent = events[5]; - log(Level.INFO, MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - log(Level.INFO, obj, t); - log(Level.INFO, (Marker) null, obj, t); - currentEvent = events[7]; - log(Level.INFO, MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - log(Level.INFO, pattern, p1, p2); - currentEvent = events[9]; - log(Level.INFO, MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - log(Level.INFO, simple); - log(Level.INFO, (Marker) null, simple); - log(Level.INFO, (Marker) null, simple, null); - currentEvent = events[11]; - log(Level.INFO, simple, t); - log(Level.INFO, (Marker) null, simple, t); - currentEvent = events[12]; - log(Level.INFO, MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - log(Level.INFO, MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - log(Level.INFO, MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - log(Level.INFO, CHAR_SEQ); - currentEvent = events[16]; - log(Level.INFO, CHAR_SEQ, t); - currentEvent = events[17]; - log(Level.INFO, MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - log(Level.INFO, MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.INFO); + + logger.setCurrentEvent(EVENTS[0]); + logger.log(Level.INFO, "Hello"); + logger.log(Level.INFO, (Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.log(Level.INFO, MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.log(Level.INFO, "Hello", t); + logger.log(Level.INFO, (Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.log(Level.INFO, MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.log(Level.INFO, obj); + logger.setCurrentEvent(EVENTS[5]); + logger.log(Level.INFO, MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.log(Level.INFO, obj, t); + logger.log(Level.INFO, (Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.log(Level.INFO, MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.log(Level.INFO, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.log(Level.INFO, MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.log(Level.INFO, simple); + logger.log(Level.INFO, (Marker) null, simple); + logger.log(Level.INFO, (Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.log(Level.INFO, simple, t); + logger.log(Level.INFO, (Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.log(Level.INFO, MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.log(Level.INFO, MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.log(Level.INFO, MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.log(Level.INFO, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.log(Level.INFO, CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.log(Level.INFO, MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.log(Level.INFO, MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); } @Test public void testLogTrace() { - currentLevel = Level.TRACE; - - currentEvent = events[0]; - log(Level.TRACE, "Hello"); - log(Level.TRACE, (Marker) null, "Hello"); - currentEvent = events[1]; - log(Level.TRACE, MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - log(Level.TRACE, "Hello", t); - log(Level.TRACE, (Marker) null, "Hello", t); - currentEvent = events[3]; - log(Level.TRACE, MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - log(Level.TRACE, obj); - currentEvent = events[5]; - log(Level.TRACE, MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - log(Level.TRACE, obj, t); - log(Level.TRACE, (Marker) null, obj, t); - currentEvent = events[7]; - log(Level.TRACE, MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - log(Level.TRACE, pattern, p1, p2); - currentEvent = events[9]; - log(Level.TRACE, MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - log(Level.TRACE, simple); - log(Level.TRACE, (Marker) null, simple); - log(Level.TRACE, (Marker) null, simple, null); - currentEvent = events[11]; - log(Level.TRACE, simple, t); - log(Level.TRACE, (Marker) null, simple, t); - currentEvent = events[12]; - log(Level.TRACE, MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - log(Level.TRACE, MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - log(Level.TRACE, MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - log(Level.TRACE, CHAR_SEQ); - currentEvent = events[16]; - log(Level.TRACE, CHAR_SEQ, t); - currentEvent = events[17]; - log(Level.TRACE, MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - log(Level.TRACE, MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.TRACE); + + logger.setCurrentEvent(EVENTS[0]); + logger.log(Level.TRACE, "Hello"); + logger.log(Level.TRACE, (Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.log(Level.TRACE, MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.log(Level.TRACE, "Hello", t); + logger.log(Level.TRACE, (Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.log(Level.TRACE, MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.log(Level.TRACE, obj); + logger.setCurrentEvent(EVENTS[5]); + logger.log(Level.TRACE, MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.log(Level.TRACE, obj, t); + logger.log(Level.TRACE, (Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.log(Level.TRACE, MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.log(Level.TRACE, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.log(Level.TRACE, MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.log(Level.TRACE, simple); + logger.log(Level.TRACE, (Marker) null, simple); + logger.log(Level.TRACE, (Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.log(Level.TRACE, simple, t); + logger.log(Level.TRACE, (Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.log(Level.TRACE, MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.log(Level.TRACE, MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.log(Level.TRACE, MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.log(Level.TRACE, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.log(Level.TRACE, CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.log(Level.TRACE, MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.log(Level.TRACE, MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); } @Test public void testLogWarn() { - currentLevel = Level.WARN; - - currentEvent = events[0]; - log(Level.WARN, "Hello"); - log(Level.WARN, (Marker) null, "Hello"); - currentEvent = events[1]; - log(Level.WARN, MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - log(Level.WARN, "Hello", t); - log(Level.WARN, (Marker) null, "Hello", t); - currentEvent = events[3]; - log(Level.WARN, MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - log(Level.WARN, obj); - currentEvent = events[5]; - log(Level.WARN, MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - log(Level.WARN, obj, t); - log(Level.WARN, (Marker) null, obj, t); - currentEvent = events[7]; - log(Level.WARN, MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - log(Level.WARN, pattern, p1, p2); - currentEvent = events[9]; - log(Level.WARN, MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - log(Level.WARN, simple); - log(Level.WARN, (Marker) null, simple); - log(Level.WARN, (Marker) null, simple, null); - currentEvent = events[11]; - log(Level.WARN, simple, t); - log(Level.WARN, (Marker) null, simple, t); - currentEvent = events[12]; - log(Level.WARN, MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - log(Level.WARN, MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - log(Level.WARN, MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - log(Level.WARN, CHAR_SEQ); - currentEvent = events[16]; - log(Level.WARN, CHAR_SEQ, t); - currentEvent = events[17]; - log(Level.WARN, MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - log(Level.WARN, MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.WARN); + + logger.setCurrentEvent(EVENTS[0]); + logger.log(Level.WARN, "Hello"); + logger.log(Level.WARN, (Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.log(Level.WARN, MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.log(Level.WARN, "Hello", t); + logger.log(Level.WARN, (Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.log(Level.WARN, MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.log(Level.WARN, obj); + logger.setCurrentEvent(EVENTS[5]); + logger.log(Level.WARN, MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.log(Level.WARN, obj, t); + logger.log(Level.WARN, (Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.log(Level.WARN, MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.log(Level.WARN, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.log(Level.WARN, MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.log(Level.WARN, simple); + logger.log(Level.WARN, (Marker) null, simple); + logger.log(Level.WARN, (Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.log(Level.WARN, simple, t); + logger.log(Level.WARN, (Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.log(Level.WARN, MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.log(Level.WARN, MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.log(Level.WARN, MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.log(Level.WARN, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.log(Level.WARN, CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.log(Level.WARN, MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.log(Level.WARN, MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); } @Test public void testTrace() { - currentLevel = Level.TRACE; - - currentEvent = events[0]; - trace("Hello"); - trace((Marker) null, "Hello"); - currentEvent = events[1]; - trace(MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - trace("Hello", t); - trace((Marker) null, "Hello", t); - currentEvent = events[3]; - trace(MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - trace(obj); - currentEvent = events[5]; - trace(MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - trace(obj, t); - trace((Marker) null, obj, t); - currentEvent = events[7]; - trace(MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - trace(pattern, p1, p2); - currentEvent = events[9]; - trace(MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - trace(simple); - trace((Marker) null, simple); - trace((Marker) null, simple, null); - currentEvent = events[11]; - trace(simple, t); - trace((Marker) null, simple, t); - currentEvent = events[12]; - trace(MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - trace(MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - trace(MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - trace(CHAR_SEQ); - currentEvent = events[16]; - trace(CHAR_SEQ, t); - currentEvent = events[17]; - trace(MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - trace(MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.TRACE); + + logger.setCurrentEvent(EVENTS[0]); + logger.trace("Hello"); + logger.trace((Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.trace(MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.trace("Hello", t); + logger.trace((Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.trace(MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.trace(obj); + logger.setCurrentEvent(EVENTS[5]); + logger.trace(MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.trace(obj, t); + logger.trace((Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.trace(MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.trace(pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.trace(MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.trace(simple); + logger.trace((Marker) null, simple); + logger.trace((Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.trace(simple, t); + logger.trace((Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.trace(MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.trace(MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.trace(MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.trace(CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.trace(CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.trace(MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.trace(MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); } @Test public void testWarn() { - currentLevel = Level.WARN; - - currentEvent = events[0]; - warn("Hello"); - warn((Marker) null, "Hello"); - currentEvent = events[1]; - warn(MarkerManager.getMarker("TEST"), "Hello"); - currentEvent = events[2]; - warn("Hello", t); - warn((Marker) null, "Hello", t); - currentEvent = events[3]; - warn(MarkerManager.getMarker("TEST"), "Hello", t); - currentEvent = events[4]; - warn(obj); - currentEvent = events[5]; - warn(MarkerManager.getMarker("TEST"), obj); - currentEvent = events[6]; - warn(obj, t); - warn((Marker) null, obj, t); - currentEvent = events[7]; - warn(MarkerManager.getMarker("TEST"), obj, t); - currentEvent = events[8]; - warn(pattern, p1, p2); - currentEvent = events[9]; - warn(MarkerManager.getMarker("TEST"), pattern, p1, p2); - currentEvent = events[10]; - warn(simple); - warn((Marker) null, simple); - warn((Marker) null, simple, null); - currentEvent = events[11]; - warn(simple, t); - warn((Marker) null, simple, t); - currentEvent = events[12]; - warn(MarkerManager.getMarker("TEST"), simple, null); - currentEvent = events[13]; - warn(MarkerManager.getMarker("TEST"), simple, t); - currentEvent = events[14]; - warn(MarkerManager.getMarker("TEST"), simple); - - currentEvent = events[15]; - warn(CHAR_SEQ); - currentEvent = events[16]; - warn(CHAR_SEQ, t); - currentEvent = events[17]; - warn(MarkerManager.getMarker("TEST"), CHAR_SEQ); - currentEvent = events[18]; - warn(MarkerManager.getMarker("TEST"), CHAR_SEQ, t); - - assertEquals("log(CharSeq) invocations", 4, charSeqCount); - assertEquals("log(Object) invocations", 5, objectCount); + CountingLogger logger = new CountingLogger(); + logger.setCurrentLevel(Level.WARN); + + logger.setCurrentEvent(EVENTS[0]); + logger.warn("Hello"); + logger.warn((Marker) null, "Hello"); + logger.setCurrentEvent(EVENTS[1]); + logger.warn(MARKER, "Hello"); + logger.setCurrentEvent(EVENTS[2]); + logger.warn("Hello", t); + logger.warn((Marker) null, "Hello", t); + logger.setCurrentEvent(EVENTS[3]); + logger.warn(MARKER, "Hello", t); + logger.setCurrentEvent(EVENTS[4]); + logger.warn(obj); + logger.setCurrentEvent(EVENTS[5]); + logger.warn(MARKER, obj); + logger.setCurrentEvent(EVENTS[6]); + logger.warn(obj, t); + logger.warn((Marker) null, obj, t); + logger.setCurrentEvent(EVENTS[7]); + logger.warn(MARKER, obj, t); + logger.setCurrentEvent(EVENTS[8]); + logger.warn(pattern, p1, p2); + logger.setCurrentEvent(EVENTS[9]); + logger.warn(MARKER, pattern, p1, p2); + logger.setCurrentEvent(EVENTS[10]); + logger.warn(simple); + logger.warn((Marker) null, simple); + logger.warn((Marker) null, simple, null); + logger.setCurrentEvent(EVENTS[11]); + logger.warn(simple, t); + logger.warn((Marker) null, simple, t); + logger.setCurrentEvent(EVENTS[12]); + logger.warn(MARKER, simple, null); + logger.setCurrentEvent(EVENTS[13]); + logger.warn(MARKER, simple, t); + logger.setCurrentEvent(EVENTS[14]); + logger.warn(MARKER, simple); + + logger.setCurrentEvent(EVENTS[15]); + logger.warn(CHAR_SEQ); + logger.setCurrentEvent(EVENTS[16]); + logger.warn(CHAR_SEQ, t); + logger.setCurrentEvent(EVENTS[17]); + logger.warn(MARKER, CHAR_SEQ); + logger.setCurrentEvent(EVENTS[18]); + logger.warn(MARKER, CHAR_SEQ, t); + + assertEquals("log(CharSeq) invocations", 4, logger.getCharSeqCount()); + assertEquals("log(Object) invocations", 5, logger.getObjectCount()); + } + + private static class CountingLogger extends AbstractLogger { + private static final long serialVersionUID = -3171452617952475480L; + + private Level currentLevel; + private LogEvent currentEvent; + private int charSeqCount; + private int objectCount; + + CountingLogger() { + super("CountingLogger", new MessageFactory2Adapter(ParameterizedMessageFactory.INSTANCE)); + } + + void setCurrentLevel(Level currentLevel) { + this.currentLevel = currentLevel; + } + + void setCurrentEvent(LogEvent currentEvent) { + this.currentEvent = currentEvent; + } + + int getCharSeqCount() { + return charSeqCount; + } + + int getObjectCount() { + return objectCount; + } + + @Override + public Level getLevel() { + return currentLevel; + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final Message data, final Throwable t) { + assertTrue("Incorrect Level. Expected " + currentLevel + ", actual " + level, level.equals(currentLevel)); + if (marker == null) { + if (currentEvent.markerName != null) { + fail("Incorrect marker. Expected " + currentEvent.markerName + ", actual is null"); + } + } else { + if (currentEvent.markerName == null) { + fail("Incorrect marker. Expected null. Actual is " + marker.getName()); + } else { + assertTrue("Incorrect marker. Expected " + currentEvent.markerName + ", actual " + + marker.getName(), currentEvent.markerName.equals(marker.getName())); + } + } + if (data == null) { + if (currentEvent.data != null) { + fail("Incorrect message. Expected " + currentEvent.data + ", actual is null"); + } + } else { + if (currentEvent.data == null) { + fail("Incorrect message. Expected null. Actual is " + data.getFormattedMessage()); + } else { + assertTrue("Incorrect message type. Expected " + currentEvent.data + ", actual " + data, + data.getClass().isAssignableFrom(currentEvent.data.getClass())); + assertTrue("Incorrect message. Expected " + currentEvent.data.getFormattedMessage() + ", actual " + + data.getFormattedMessage(), + currentEvent.data.getFormattedMessage().equals(data.getFormattedMessage())); + } + } + if (t == null) { + if (currentEvent.t != null) { + fail("Incorrect Throwable. Expected " + currentEvent.t + ", actual is null"); + } + } else { + if (currentEvent.t == null) { + fail("Incorrect Throwable. Expected null. Actual is " + t); + } else { + assertTrue("Incorrect Throwable. Expected " + currentEvent.t + ", actual " + t, + currentEvent.t.equals(t)); + } + } + return true; + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final CharSequence data, final Throwable t) { + charSeqCount++; + return isEnabled(level, marker, (Message) new SimpleMessage(data), t); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final Object data, final Throwable t) { + objectCount++; + return isEnabled(level, marker, new ObjectMessage(data), t); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String data) { + return isEnabled(level, marker, (Message) new SimpleMessage(data), null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String data, final Object... p1) { + return isEnabled(level, marker, new ParameterizedMessage(data, p1), null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0) { + return isEnabled(level, marker, new ParameterizedMessage(message, p0), null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, + final Object p1) { + return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1), null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, + final Object p1, final Object p2) { + return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2), null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, + final Object p1, final Object p2, final Object p3) { + return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3), null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, + final Object p1, final Object p2, final Object p3, + final Object p4) { + return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4), null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, + final Object p1, final Object p2, final Object p3, + final Object p4, final Object p5) { + return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4, p5), null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, + final Object p1, final Object p2, final Object p3, + final Object p4, final Object p5, final Object p6) { + return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4, p5, p6), null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, + final Object p1, final Object p2, final Object p3, + final Object p4, final Object p5, final Object p6, + final Object p7) { + return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4, p5, p6, p7), null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, + final Object p1, final Object p2, final Object p3, + final Object p4, final Object p5, final Object p6, + final Object p7, final Object p8) { + return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4, p5, p6, p7, p8), null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String message, final Object p0, + final Object p1, final Object p2, final Object p3, + final Object p4, final Object p5, final Object p6, + final Object p7, final Object p8, final Object p9) { + return isEnabled(level, marker, new ParameterizedMessage(message, p0, p1, p2, p3, p4, p5, p6, p7, p8, p9), + null); + } + + @Override + public boolean isEnabled(final Level level, final Marker marker, final String data, final Throwable t) { + return isEnabled(level, marker, (Message) new SimpleMessage(data), t); + } + + @Override + public void logMessage(final String fqcn, final Level level, final Marker marker, final Message data, final Throwable t) { + assertTrue("Incorrect Level. Expected " + currentLevel + ", actual " + level, level.equals(currentLevel)); + if (marker == null) { + if (currentEvent.markerName != null) { + fail("Incorrect marker. Expected " + currentEvent.markerName + ", actual is null"); + } + } else { + if (currentEvent.markerName == null) { + fail("Incorrect marker. Expected null. Actual is " + marker.getName()); + } else { + assertTrue("Incorrect marker. Expected " + currentEvent.markerName + ", actual " + + marker.getName(), currentEvent.markerName.equals(marker.getName())); + } + } + if (data == null) { + if (currentEvent.data != null) { + fail("Incorrect message. Expected " + currentEvent.data + ", actual is null"); + } + } else { + if (currentEvent.data == null) { + fail("Incorrect message. Expected null. Actual is " + data.getFormattedMessage()); + } else { + assertTrue("Incorrect message type. Expected " + currentEvent.data + ", actual " + data, + data.getClass().isAssignableFrom(currentEvent.data.getClass())); + assertTrue("Incorrect message. Expected " + currentEvent.data.getFormattedMessage() + ", actual " + + data.getFormattedMessage(), + currentEvent.data.getFormattedMessage().equals(data.getFormattedMessage())); + } + } + if (t == null) { + if (currentEvent.t != null) { + fail("Incorrect Throwable. Expected " + currentEvent.t + ", actual is null"); + } + } else { + if (currentEvent.t == null) { + fail("Incorrect Throwable. Expected null. Actual is " + t); + } else { + assertTrue("Incorrect Throwable. Expected " + currentEvent.t + ", actual " + t, + currentEvent.t.equals(t)); + } + } + } } + private static class LogEvent { + String markerName; + Message data; + Throwable t; + + public LogEvent(final String markerName, final Message data, final Throwable t) { + this.markerName = markerName; + this.data = data; + this.t = t; + } + } } -- 2.10.2