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/05/23 20:37:44 UTC

[logging-log4j2] branch master updated: [LOG4J2-3093] Fix up some test errors in newer JDK

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 226924f  [LOG4J2-3093] Fix up some test errors in newer JDK
226924f is described below

commit 226924f3b6bf88e3c00710a256734d98a9c986bc
Author: Matt Sicker <bo...@gmail.com>
AuthorDate: Sun May 23 15:36:06 2021 -0500

    [LOG4J2-3093] Fix up some test errors in newer JDK
    
    This diables the various JavaScript tests due to JEP 372: Remove the
    Nashorn JavaScript Engine. This also updates some other tests in order
    to run on newer JDKs.
---
 .../org/apache/logging/log4j/message/MessageFormatMessageTest.java  | 3 ++-
 .../java/org/apache/logging/log4j/core/PatternSelectorTest.java     | 6 +++++-
 .../java/org/apache/logging/log4j/core/TimestampMessageTest.java    | 3 +++
 .../logging/log4j/core/appender/ScriptAppenderSelectorTest.java     | 4 ++++
 .../log4j/core/appender/rolling/action/ScriptConditionTest.java     | 5 +++++
 .../logging/log4j/core/config/arbiters/ScriptArbiterTest.java       | 3 +++
 .../apache/logging/log4j/core/filter/AbstractScriptFilterTest.java  | 4 ++++
 .../java/org/apache/logging/log4j/core/filter/TimeFilterTest.java   | 3 +++
 .../java/org/apache/logging/log4j/core/impl/Log4jLogEventTest.java  | 3 +++
 9 files changed, 32 insertions(+), 2 deletions(-)

diff --git a/log4j-api/src/test/java/org/apache/logging/log4j/message/MessageFormatMessageTest.java b/log4j-api/src/test/java/org/apache/logging/log4j/message/MessageFormatMessageTest.java
index aa7e9b3..1dfadbf 100644
--- a/log4j-api/src/test/java/org/apache/logging/log4j/message/MessageFormatMessageTest.java
+++ b/log4j-api/src/test/java/org/apache/logging/log4j/message/MessageFormatMessageTest.java
@@ -32,6 +32,7 @@ import static org.junit.jupiter.api.Assertions.*;
 public class MessageFormatMessageTest {
 
     private static final String SPACE = Constants.JAVA_MAJOR_VERSION < 9 ? " " : "\u00a0";
+    private static final String N_SPACE = Constants.JAVA_MAJOR_VERSION < 15 ? "\u00a0" : "\u202f";
 
     private static final int LOOP_CNT = 500;
     String[] array = new String[LOOP_CNT];
@@ -73,7 +74,7 @@ public class MessageFormatMessageTest {
         final String testMsg = "Test message {0,number,currency}";
         final MessageFormatMessage msg = new MessageFormatMessage(Locale.FRANCE, testMsg, 1234567890);
         final String result = msg.getFormattedMessage();
-        final String expected = "Test message 1 234 567 890,00" + SPACE + "€";
+        final String expected = "Test message 1" + N_SPACE + "234" + N_SPACE + "567" + N_SPACE + "890,00" + SPACE + "€";
         assertEquals(expected, result);
     }
 
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java
index 6721ce0..61dbdd3 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java
@@ -24,6 +24,8 @@ import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
 import org.apache.logging.log4j.core.test.appender.ListAppender;
 import org.apache.logging.log4j.util.Strings;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledForJreRange;
+import org.junit.jupiter.api.condition.JRE;
 
 import static org.junit.jupiter.api.Assertions.*;
 
@@ -41,13 +43,14 @@ public class PatternSelectorTest {
         assertEquals(3, messages.size(),
                 "Incorrect number of messages. Expected 3, Actual " + messages.size() + ": " + messages);
         final String expect = String.format("[TRACE] TestMarkerPatternSelector ====== "
-                + "o.a.l.l.c.PatternSelectorTest.testMarkerPatternSelector:36 Enter ======%n");
+                + "o.a.l.l.c.PatternSelectorTest.testMarkerPatternSelector:38 Enter ======%n");
         assertEquals(expect, messages.get(0));
         assertEquals("[INFO ] TestMarkerPatternSelector Hello World" + Strings.LINE_SEPARATOR, messages.get(1));
         app.clear();
     }
 
     @Test
+    @DisabledForJreRange(min = JRE.JAVA_15, disabledReason = "JEP 372: Remove the Nashorn JavaScript Engine")
     public void testScriptPatternSelector(@Named("List2") final ListAppender app) {
         final org.apache.logging.log4j.Logger logger = LogManager.getLogger("TestScriptPatternSelector");
         final org.apache.logging.log4j.Logger logger2 = LogManager.getLogger("NoLocation");
@@ -70,6 +73,7 @@ public class PatternSelectorTest {
     }
 
     @Test
+    @DisabledForJreRange(min = JRE.JAVA_15, disabledReason = "JEP 372: Remove the Nashorn JavaScript Engine")
     public void testJavaScriptPatternSelector(@Named("List3") final ListAppender app) {
         final org.apache.logging.log4j.Logger logger = LogManager.getLogger("TestJavaScriptPatternSelector");
         final org.apache.logging.log4j.Logger logger2 = LogManager.getLogger("JavascriptNoLocation");
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/TimestampMessageTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/TimestampMessageTest.java
index ccfee32..cd7a1a1 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/TimestampMessageTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/TimestampMessageTest.java
@@ -31,6 +31,8 @@ import org.apache.logging.log4j.util.Strings;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledForJreRange;
+import org.junit.jupiter.api.condition.JRE;
 
 import java.util.List;
 
@@ -44,6 +46,7 @@ import static org.junit.jupiter.api.Assertions.assertNotNull;
  * </p>
  */
 @LoggerContextSource("log4j2-744.xml")
+@DisabledForJreRange(min = JRE.JAVA_12, disabledReason = "In java 12+ final cannot be removed.")
 public class TimestampMessageTest {
     private ListAppender app;
 
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ScriptAppenderSelectorTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ScriptAppenderSelectorTest.java
index c6474f9..0a175b2 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ScriptAppenderSelectorTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ScriptAppenderSelectorTest.java
@@ -22,6 +22,8 @@ import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
 import org.apache.logging.log4j.spi.ExtendedLogger;
 import org.apache.logging.log4j.core.test.appender.ListAppender;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledForJreRange;
+import org.junit.jupiter.api.condition.JRE;
 
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.Matchers.hasSize;
@@ -32,12 +34,14 @@ public class ScriptAppenderSelectorTest {
 
     @Test
     @LoggerContextSource("log4j-appender-selector-javascript.xml")
+    @DisabledForJreRange(min = JRE.JAVA_15, disabledReason = "JEP 372: Remove the Nashorn JavaScript Engine")
     void testJavaScriptSelector(final Configuration config) {
         verify(config);
     }
 
     @Test
     @LoggerContextSource("log4j-appender-selector-groovy.xml")
+    @DisabledForJreRange(min = JRE.JAVA_12, disabledReason = "Groovy ScriptEngine incompatibilities")
     void testGroovySelector(final Configuration config) {
         verify(config);
     }
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/ScriptConditionTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/ScriptConditionTest.java
index 346e898..a2f14b9 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/ScriptConditionTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/ScriptConditionTest.java
@@ -22,6 +22,8 @@ import org.apache.logging.log4j.core.config.DefaultConfiguration;
 import org.apache.logging.log4j.core.script.Script;
 import org.junit.jupiter.api.Tag;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledForJreRange;
+import org.junit.jupiter.api.condition.JRE;
 
 import java.nio.file.Path;
 import java.nio.file.Paths;
@@ -58,6 +60,7 @@ public class ScriptConditionTest {
     }
 
     @Test
+    @DisabledForJreRange(min = JRE.JAVA_15, disabledReason = "JEP 372: Remove the Nashorn JavaScript Engine")
     public void testSelectFilesToDelete() {
         final Configuration config = new DefaultConfiguration();
         config.initialize(); // creates the ScriptManager
@@ -71,6 +74,7 @@ public class ScriptConditionTest {
     }
 
     @Test
+    @DisabledForJreRange(min = JRE.JAVA_15, disabledReason = "JEP 372: Remove the Nashorn JavaScript Engine")
     public void testSelectFilesToDelete2() {
         final Configuration config = new DefaultConfiguration();
         config.initialize(); // creates the ScriptManager
@@ -94,6 +98,7 @@ public class ScriptConditionTest {
 
     @Test
     @Tag("groovy")
+    @DisabledForJreRange(min = JRE.JAVA_12, disabledReason = "Groovy ScriptEngine incompatibilities")
     public void testSelectFilesToDelete3() {
         final Configuration config = new DefaultConfiguration();
         config.initialize(); // creates the ScriptManager
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/ScriptArbiterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/ScriptArbiterTest.java
index e4a145f..c64cfe8 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/ScriptArbiterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/ScriptArbiterTest.java
@@ -23,6 +23,8 @@ import org.apache.logging.log4j.core.config.Configurator;
 import org.apache.logging.log4j.core.test.appender.ListAppender;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledForJreRange;
+import org.junit.jupiter.api.condition.JRE;
 
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -30,6 +32,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
 /**
  * Tests basic condition processing.
  */
+@DisabledForJreRange(min = JRE.JAVA_15, disabledReason = "JEP 372: Remove the Nashorn JavaScript Engine")
 public class ScriptArbiterTest {
 
     static final String CONFIG = "log4j2-scriptArbiters.xml";
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/AbstractScriptFilterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/AbstractScriptFilterTest.java
index 8b98d83..155a314 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/AbstractScriptFilterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/AbstractScriptFilterTest.java
@@ -26,6 +26,8 @@ import org.apache.logging.log4j.test.junit.UsingThreadContextMap;
 import org.apache.logging.log4j.core.test.appender.ListAppender;
 import org.junit.jupiter.api.Tag;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledForJreRange;
+import org.junit.jupiter.api.condition.JRE;
 
 import static org.junit.jupiter.api.Assertions.*;
 
@@ -34,6 +36,7 @@ import static org.junit.jupiter.api.Assertions.*;
 public abstract class AbstractScriptFilterTest {
 
     @Test
+    @DisabledForJreRange(min = JRE.JAVA_12, disabledReason = "Groovy ScriptEngine incompatibilities")
     public void testGroovyFilter(final LoggerContext context, @Named("List") final ListAppender app) throws Exception {
         final Logger logger = context.getLogger("TestGroovyFilter");
         logger.traceEntry();
@@ -51,6 +54,7 @@ public abstract class AbstractScriptFilterTest {
     }
 
     @Test
+    @DisabledForJreRange(min = JRE.JAVA_15, disabledReason = "JEP 372: Remove the Nashorn JavaScript Engine")
     public void testJavascriptFilter(final LoggerContext context, @Named("List") final ListAppender app) throws Exception {
         final Logger logger = context.getLogger("TestJavaScriptFilter");
         logger.traceEntry();
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/TimeFilterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/TimeFilterTest.java
index 1f22222..86ff377 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/TimeFilterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/TimeFilterTest.java
@@ -33,9 +33,12 @@ import org.apache.logging.log4j.core.time.ClockFactoryTest;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledForJreRange;
+import org.junit.jupiter.api.condition.JRE;
 
 import static org.junit.jupiter.api.Assertions.*;
 
+@DisabledForJreRange(min = JRE.JAVA_12, disabledReason = "In java 12+ final cannot be removed.")
 public class TimeFilterTest {
     private static long CLOCKTIME = System.currentTimeMillis();
 
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/Log4jLogEventTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/Log4jLogEventTest.java
index 401d457..68c29a3 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/Log4jLogEventTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/Log4jLogEventTest.java
@@ -47,9 +47,12 @@ import org.apache.logging.log4j.util.Strings;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledForJreRange;
+import org.junit.jupiter.api.condition.JRE;
 
 import static org.junit.jupiter.api.Assertions.*;
 
+@DisabledForJreRange(min = JRE.JAVA_12, disabledReason = "In java 12+ final cannot be removed.")
 public class Log4jLogEventTest {
 
     private static final Base64.Decoder decoder = Base64.getDecoder();