You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by ma...@apache.org on 2021/12/29 04:45:56 UTC

[logging-log4j2] branch master updated: Fix ThreadContext race condition in tests

This is an automated email from the ASF dual-hosted git repository.

mattsicker pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git


The following commit(s) were added to refs/heads/master by this push:
     new ae41d85  Fix ThreadContext race condition in tests
ae41d85 is described below

commit ae41d8557c07a1fe96914bf756ec9bf2f2afedb2
Author: Matt Sicker <ma...@apache.org>
AuthorDate: Tue Dec 28 22:44:26 2021 -0600

    Fix ThreadContext race condition in tests
    
    Signed-off-by: Matt Sicker <ma...@apache.org>
---
 .../java/org/apache/logging/log4j/CloseableThreadContextTest.java   | 2 ++
 .../src/test/java/org/apache/logging/log4j/EventLoggerTest.java     | 2 ++
 .../src/test/java/org/apache/logging/log4j/LoggerTest.java          | 6 ++++--
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/log4j-api-test/src/test/java/org/apache/logging/log4j/CloseableThreadContextTest.java b/log4j-api-test/src/test/java/org/apache/logging/log4j/CloseableThreadContextTest.java
index 9acafad..43c45e2 100644
--- a/log4j-api-test/src/test/java/org/apache/logging/log4j/CloseableThreadContextTest.java
+++ b/log4j-api-test/src/test/java/org/apache/logging/log4j/CloseableThreadContextTest.java
@@ -16,6 +16,7 @@
  */
 package org.apache.logging.log4j;
 
+import org.apache.logging.log4j.test.junit.UsingAnyThreadContext;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
@@ -35,6 +36,7 @@ import static org.junit.jupiter.api.Assertions.*;
  * @since 2.6
  */
 @ResourceLock(value = Resources.SYSTEM_PROPERTIES, mode = ResourceAccessMode.READ)
+@UsingAnyThreadContext
 public class CloseableThreadContextTest {
 
     private final String key = "key";
diff --git a/log4j-api-test/src/test/java/org/apache/logging/log4j/EventLoggerTest.java b/log4j-api-test/src/test/java/org/apache/logging/log4j/EventLoggerTest.java
index 91ea0a4..8f17a78 100644
--- a/log4j-api-test/src/test/java/org/apache/logging/log4j/EventLoggerTest.java
+++ b/log4j-api-test/src/test/java/org/apache/logging/log4j/EventLoggerTest.java
@@ -18,6 +18,7 @@ package org.apache.logging.log4j;
 
 import org.apache.logging.log4j.message.StructuredDataMessage;
 import org.apache.logging.log4j.test.TestLogger;
+import org.apache.logging.log4j.test.junit.UsingThreadContextMap;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.parallel.ResourceLock;
@@ -28,6 +29,7 @@ import java.util.Locale;
 import static org.assertj.core.api.Assertions.assertThat;
 
 @ResourceLock("log4j2.TestLogger")
+@UsingThreadContextMap
 public class EventLoggerTest {
 
     TestLogger logger = (TestLogger) LogManager.getLogger("EventLogger");
diff --git a/log4j-api-test/src/test/java/org/apache/logging/log4j/LoggerTest.java b/log4j-api-test/src/test/java/org/apache/logging/log4j/LoggerTest.java
index 27a936e..d98f0ea 100644
--- a/log4j-api-test/src/test/java/org/apache/logging/log4j/LoggerTest.java
+++ b/log4j-api-test/src/test/java/org/apache/logging/log4j/LoggerTest.java
@@ -27,6 +27,7 @@ import org.apache.logging.log4j.message.SimpleMessageFactory;
 import org.apache.logging.log4j.message.StringFormatterMessageFactory;
 import org.apache.logging.log4j.message.StructuredDataMessage;
 import org.apache.logging.log4j.test.TestLogger;
+import org.apache.logging.log4j.test.junit.UsingThreadContextMap;
 import org.apache.logging.log4j.util.Strings;
 import org.apache.logging.log4j.util.Supplier;
 import org.junit.jupiter.api.BeforeEach;
@@ -44,6 +45,7 @@ import static org.junit.jupiter.api.Assertions.*;
 
 @ResourceLock("log4j2.MarkerManager")
 @ResourceLock("log4j2.TestLogger")
+@UsingThreadContextMap
 public class LoggerTest {
 
     private static class TestParameterizedMessageFactory {
@@ -65,12 +67,12 @@ public class LoggerTest {
         logger.atWarn().withThrowable(new Throwable("This is a test")).log((Message) new SimpleMessage("Log4j rocks!"));
         assertEquals(3, results.size());
         assertThat("Incorrect message 1", results.get(0),
-                equalTo(" DEBUG org.apache.logging.log4j.LoggerTest.builder(LoggerTest.java:63) Hello"));
+                equalTo(" DEBUG org.apache.logging.log4j.LoggerTest.builder(LoggerTest.java:65) Hello"));
         assertThat("Incorrect message 2", results.get(1), equalTo("test ERROR Hello John"));
         assertThat("Incorrect message 3", results.get(2),
                 startsWith(" WARN Log4j rocks! java.lang.Throwable: This is a test"));
         assertThat("Throwable incorrect in message 3", results.get(2),
-                containsString("org.apache.logging.log4j.LoggerTest.builder(LoggerTest.java:65)"));
+                containsString("org.apache.logging.log4j.LoggerTest.builder(LoggerTest.java:67)"));
     }
 
     @Test