Test building and initializing programatically without a CustomConfigurationFactory.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/71bc7c24 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/71bc7c24 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/71bc7c24 Branch: refs/heads/master Commit: 71bc7c245810e3549123cf9aedca667f28bf2c34 Parents: 5b38cca Author: ggregory <[email protected]> Authored: Tue Sep 1 15:25:35 2015 -0700 Committer: ggregory <[email protected]> Committed: Tue Sep 1 15:25:35 2015 -0700 ---------------------------------------------------------------------- .../builder/ConfigurationAssemblerTest.java | 14 +++++++++ .../builder/CustomConfigurationFactory.java | 30 +++++++++++--------- 2 files changed, 31 insertions(+), 13 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/71bc7c24/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/ConfigurationAssemblerTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/ConfigurationAssemblerTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/ConfigurationAssemblerTest.java index 5b6993e..f938824 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/ConfigurationAssemblerTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/ConfigurationAssemblerTest.java @@ -31,7 +31,11 @@ import org.apache.logging.log4j.core.LifeCycle; import org.apache.logging.log4j.core.LoggerContext; import org.apache.logging.log4j.core.config.Configuration; import org.apache.logging.log4j.core.config.ConfigurationFactory; +import org.apache.logging.log4j.core.config.Configurator; import org.apache.logging.log4j.core.config.LoggerConfig; +import org.apache.logging.log4j.core.config.builder.api.ConfigurationBuilder; +import org.apache.logging.log4j.core.config.builder.api.ConfigurationBuilderFactory; +import org.apache.logging.log4j.core.config.builder.impl.BuiltConfiguration; import org.apache.logging.log4j.core.filter.ThresholdFilter; import org.junit.Test; @@ -41,6 +45,15 @@ import org.junit.Test; public class ConfigurationAssemblerTest { @Test + public void testBuildConfiguration() throws Exception { + final ConfigurationBuilder<BuiltConfiguration> builder = ConfigurationBuilderFactory.newConfigurationBuilder(); + CustomConfigurationFactory.addTestFixtures("config name", builder); + Configuration configuration = builder.build(); + Configurator.initialize(configuration); + validate(configuration); + } + + @Test public void testCustomConfigurationFactory() throws Exception { try { System.setProperty(ConfigurationFactory.CONFIGURATION_FACTORY_PROPERTY, @@ -53,6 +66,7 @@ public class ConfigurationAssemblerTest { } private void validate(Configuration config) { + assertNotNull(config); assertNotNull(config.getName()); assertFalse(config.getName().isEmpty()); assertNotNull("No configuration created", config); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/71bc7c24/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/CustomConfigurationFactory.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/CustomConfigurationFactory.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/CustomConfigurationFactory.java index 4cd288b..5656e5c 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/CustomConfigurationFactory.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/builder/CustomConfigurationFactory.java @@ -36,19 +36,7 @@ import java.net.URI; //@Order(50) public class CustomConfigurationFactory extends ConfigurationFactory { - @Override - protected String[] getSupportedTypes() { - return new String[] {"*"}; - } - - @Override - public Configuration getConfiguration(ConfigurationSource source) { - return getConfiguration(source.toString(), null); - } - - @Override - public Configuration getConfiguration(final String name, final URI configLocation) { - ConfigurationBuilder<BuiltConfiguration> builder = newConfigurationBuilder(); + static Configuration addTestFixtures(final String name, ConfigurationBuilder<BuiltConfiguration> builder) { builder.setConfigurationName(name); builder.setStatusLevel(Level.ERROR); builder.add(builder.newFilter("ThresholdFilter", Filter.Result.ACCEPT, Filter.Result.NEUTRAL) @@ -65,4 +53,20 @@ public class CustomConfigurationFactory extends ConfigurationFactory { builder.add(builder.newRootLogger(Level.ERROR).add(builder.newAppenderRef("Stdout"))); return builder.build(); } + + @Override + public Configuration getConfiguration(ConfigurationSource source) { + return getConfiguration(source.toString(), null); + } + + @Override + public Configuration getConfiguration(final String name, final URI configLocation) { + ConfigurationBuilder<BuiltConfiguration> builder = newConfigurationBuilder(); + return addTestFixtures(name, builder); + } + + @Override + protected String[] getSupportedTypes() { + return new String[] {"*"}; + } }
