From ac3f7dbf999d58bf4be9763b8e34ff833ed01bbd Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Tue, 21 Mar 2017 10:23:17 +0100 Subject: [PATCH] DATAMONGO-1645 - Polishing. Clean up appender and log level after test run. Suppress log output during tests. Original pull request: #450. --- .../event/LoggingEventListenerTests.java | 34 +++++++++++++++---- 1 file changed, 28 insertions(+), 6 deletions(-) diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapping/event/LoggingEventListenerTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapping/event/LoggingEventListenerTests.java index 5b15adaa0..89fcff877 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapping/event/LoggingEventListenerTests.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapping/event/LoggingEventListenerTests.java @@ -23,33 +23,56 @@ import ch.qos.logback.classic.spi.ILoggingEvent; import ch.qos.logback.core.read.ListAppender; import org.bson.Document; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.slf4j.LoggerFactory; /** + * Tests for {@link LoggingEventListener}. + * * @author Christoph Strobl + * @author Mark Paluch */ public class LoggingEventListenerTests { - LoggingEventListener listener; ListAppender appender; + ch.qos.logback.classic.Logger logger; + LoggingEventListener listener; @Before public void setUp() { + appender = new ListAppender(); + // set log level for LoggingEventListener to "info" and set up an appender capturing events. - ch.qos.logback.classic.Logger logger = (ch.qos.logback.classic.Logger) LoggerFactory - .getLogger(LoggingEventListener.class); - logger.setLevel(Level.toLevel("info")); + logger = (ch.qos.logback.classic.Logger) LoggerFactory.getLogger(LoggingEventListener.class); - appender = new ListAppender(); + logger.setAdditive(false); + logger.setLevel(Level.INFO); logger.addAppender(appender); + appender.start(); listener = new LoggingEventListener(); } + @After + public void tearDown() { + + // cleanup + if (logger != null) { + + logger.detachAppender(appender); + logger.setAdditive(true); + logger.setLevel(null); + } + + if (appender != null) { + appender.stop(); + } + } + @Test // DATAMONGO-1645 public void shouldSerializeAfterConvertEventCorrectly() { @@ -95,5 +118,4 @@ public class LoggingEventListenerTests { static class Foo { } - }