Repository: logging-log4j2 Updated Branches: refs/heads/release-2.x 37cb6f0f9 -> b34d8cc58
Add an ignored failing test for LOG4J2-2301 Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/fb453229 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/fb453229 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/fb453229 Branch: refs/heads/release-2.x Commit: fb453229457fb70467576002d8cb96f21143ea77 Parents: 37cb6f0 Author: Carter Kozak <cko...@apache.org> Authored: Mon Apr 9 17:09:52 2018 -0700 Committer: Carter Kozak <cko...@apache.org> Committed: Mon Apr 30 21:41:30 2018 -0400 ---------------------------------------------------------------------- .../core/async/AsyncLoggerConfigTest4.java | 71 ++++++++++++++++++++ 1 file changed, 71 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/fb453229/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest4.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest4.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest4.java new file mode 100644 index 0000000..2b0df0b --- /dev/null +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggerConfigTest4.java @@ -0,0 +1,71 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache license, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the license for the specific language governing permissions and + * limitations under the license. + */ +package org.apache.logging.log4j.core.async; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.apache.logging.log4j.categories.AsyncLoggers; +import org.apache.logging.log4j.core.CoreLoggerContexts; +import org.apache.logging.log4j.core.config.ConfigurationFactory; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Ignore; +import org.junit.Test; +import org.junit.experimental.categories.Category; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileReader; + +import static org.hamcrest.Matchers.containsString; +import static org.junit.Assert.assertThat; +import static org.junit.Assert.assertTrue; + +@Category(AsyncLoggers.class) +public class AsyncLoggerConfigTest4 { + + @BeforeClass + public static void beforeClass() { + System.setProperty("log4j2.is.webapp", "false"); + System.setProperty(ConfigurationFactory.CONFIGURATION_FILE_PROPERTY, "AsyncLoggerConfigTest4.xml"); + } + + @AfterClass + public static void afterClass() { + System.clearProperty("log4j2.is.webapp"); + } + + @Test + @Ignore("Ignored until LOG4J2-2301 is resolved") + public void testParameters() throws Exception { + final File file = new File("target", "AsyncLoggerConfigTest4.log"); + assertTrue("Deleted old file before test", !file.exists() || file.delete()); + + final Logger log = LogManager.getLogger("com.foo.Bar"); + log.info("Additive logging: {} for the price of {}!", 2, 1); + CoreLoggerContexts.stopLoggerContext(file); // stop async thread + + final BufferedReader reader = new BufferedReader(new FileReader(file)); + final String line1 = reader.readLine(); + final String line2 = reader.readLine(); + reader.close(); + file.delete(); + + assertThat(line1, containsString("Additive logging: {} for the price of {}! [2,1] Additive logging: 2 for the price of 1!")); + assertThat(line2, containsString("Additive logging: {} for the price of {}! [2,1] Additive logging: 2 for the price of 1!")); + } +}