@Nonnull @Override public Logger debugLogger() { return isDebugEnabled() ? this.debugLogger : NullLogger.getInstance(); }
@Test void shouldSetLevelForLogWithMatchingContext() { // Given StringWriter writer = new StringWriter(); FormattedLogProvider logProvider = newFormattedLogProvider( writer, "java.io.StringWriter", Level.DEBUG ); // When FormattedLog stringWriterLog = logProvider.getLog( StringWriter.class ); FormattedLog otherClassLog = logProvider.getLog( PrintWriter.class ); FormattedLog matchingNamedLog = logProvider.getLog( "java.io.StringWriter" ); FormattedLog nonMatchingNamedLog = logProvider.getLog( "java.io.Foo" ); // Then assertThat( stringWriterLog.isDebugEnabled(), is( true ) ); assertThat( otherClassLog.isDebugEnabled(), is( false ) ); assertThat( matchingNamedLog.isDebugEnabled(), is( true ) ); assertThat( nonMatchingNamedLog.isDebugEnabled(), is( false ) ); }
@Test void shouldSetLevelForLogWithPartiallyMatchingContext() { // Given StringWriter writer = new StringWriter(); FormattedLogProvider logProvider = newFormattedLogProvider( writer, "java.io", Level.DEBUG ); // When FormattedLog stringWriterLog = logProvider.getLog( StringWriter.class ); FormattedLog printWriterLog = logProvider.getLog( PrintWriter.class ); FormattedLog otherClassLog = logProvider.getLog( Date.class ); FormattedLog matchingNamedLog = logProvider.getLog( "java.io.Foo" ); FormattedLog nonMatchingNamedLog = logProvider.getLog( "java.util.Foo" ); // Then assertThat( stringWriterLog.isDebugEnabled(), is( true ) ); assertThat( printWriterLog.isDebugEnabled(), is( true ) ); assertThat( otherClassLog.isDebugEnabled(), is( false ) ); assertThat( matchingNamedLog.isDebugEnabled(), is( true ) ); assertThat( nonMatchingNamedLog.isDebugEnabled(), is( false ) ); }
@Nonnull @Override public Logger debugLogger() { return isDebugEnabled() ? this.debugLogger : NullLogger.getInstance(); }