You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by pk...@apache.org on 2022/06/20 21:58:28 UTC
[logging-log4j2] 01/06: Migrate JUnit 4 tests to JUnit 5
This is an automated email from the ASF dual-hosted git repository.
pkarwasz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git
commit c7adf074867aeae2175491a7a871419d9343fd88
Author: Piotr P. Karwasz <pi...@karwasz.org>
AuthorDate: Mon Jun 20 21:25:26 2022 +0200
Migrate JUnit 4 tests to JUnit 5
---
.../log4j/test/AbstractSerializationTest.java | 33 +++++++++++-----------
.../MessageFormatMessageSerializationTest.java | 19 ++++---------
.../status/StatusLoggerSerializationTest.java | 18 ++++--------
.../logging/log4j/util/StackLocatorUtilTest.java | 26 ++++++++---------
.../log4j/core/LoggerSerializationTest.java | 19 ++++---------
5 files changed, 45 insertions(+), 70 deletions(-)
diff --git a/log4j-api-test/src/main/java/org/apache/logging/log4j/test/AbstractSerializationTest.java b/log4j-api-test/src/main/java/org/apache/logging/log4j/test/AbstractSerializationTest.java
index efe499edb5..06b38775cb 100644
--- a/log4j-api-test/src/main/java/org/apache/logging/log4j/test/AbstractSerializationTest.java
+++ b/log4j-api-test/src/main/java/org/apache/logging/log4j/test/AbstractSerializationTest.java
@@ -16,35 +16,34 @@
*/
package org.apache.logging.log4j.test;
-import java.io.Serializable;
-
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
-
import static org.apache.logging.log4j.test.SerializableMatchers.serializesRoundTrip;
import static org.hamcrest.MatcherAssert.assertThat;
+import java.io.Serializable;
+import java.util.stream.Stream;
+
+import org.junit.jupiter.api.TestInstance;
+import org.junit.jupiter.api.TestInstance.Lifecycle;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.MethodSource;
+
/**
* Subclasses tests {@link Serializable} objects.
*/
-@RunWith(Parameterized.class)
+@TestInstance(Lifecycle.PER_CLASS)
public abstract class AbstractSerializationTest {
- private final Serializable serializable;
-
- public AbstractSerializationTest(final Serializable serializable) {
- super();
- this.serializable = serializable;
- }
+ protected abstract Stream<Object> data();
- @Test
- public void testSerializationRoundtripEquals() {
+ @ParameterizedTest
+ @MethodSource("data")
+ public void testSerializationRoundtripEquals(Serializable serializable) {
assertThat(serializable, serializesRoundTrip(serializable));
}
- @Test
- public void testSerializationRoundtripNoException() {
+ @ParameterizedTest
+ @MethodSource("data")
+ public void testSerializationRoundtripNoException(Serializable serializable) {
assertThat(serializable, serializesRoundTrip());
}
}
diff --git a/log4j-api-test/src/test/java/org/apache/logging/log4j/message/MessageFormatMessageSerializationTest.java b/log4j-api-test/src/test/java/org/apache/logging/log4j/message/MessageFormatMessageSerializationTest.java
index 5c5a465da6..2906293228 100644
--- a/log4j-api-test/src/test/java/org/apache/logging/log4j/message/MessageFormatMessageSerializationTest.java
+++ b/log4j-api-test/src/test/java/org/apache/logging/log4j/message/MessageFormatMessageSerializationTest.java
@@ -17,28 +17,21 @@
package org.apache.logging.log4j.message;
-import java.util.Arrays;
-import java.util.Collection;
+import java.util.stream.Stream;
import org.apache.logging.log4j.test.AbstractSerializationTest;
import org.junit.jupiter.api.parallel.ResourceAccessMode;
import org.junit.jupiter.api.parallel.ResourceLock;
import org.junit.jupiter.api.parallel.Resources;
-import org.junit.runners.Parameterized;
@ResourceLock(value = Resources.LOCALE, mode = ResourceAccessMode.READ)
public class MessageFormatMessageSerializationTest extends AbstractSerializationTest {
- @Parameterized.Parameters
- public static Collection<Object[]> data() {
- return Arrays.asList(new Object[][]{
- {new MessageFormatMessage("Test")},
- {new MessageFormatMessage("Test {0} {1}", "message", "test")},
- {new MessageFormatMessage("{0}{1}{2}", 3, '.', 14L)}
- });
+ protected Stream<Object> data() {
+ return Stream.of(
+ new MessageFormatMessage("Test"),
+ new MessageFormatMessage("Test {0} {1}", "message", "test"),
+ new MessageFormatMessage("{0}{1}{2}", 3, '.', 14L));
}
- public MessageFormatMessageSerializationTest(final MessageFormatMessage message) {
- super(message);
- }
}
diff --git a/log4j-api-test/src/test/java/org/apache/logging/log4j/status/StatusLoggerSerializationTest.java b/log4j-api-test/src/test/java/org/apache/logging/log4j/status/StatusLoggerSerializationTest.java
index 68a282afc4..fedc5bd956 100644
--- a/log4j-api-test/src/test/java/org/apache/logging/log4j/status/StatusLoggerSerializationTest.java
+++ b/log4j-api-test/src/test/java/org/apache/logging/log4j/status/StatusLoggerSerializationTest.java
@@ -16,24 +16,16 @@
*/
package org.apache.logging.log4j.status;
-import java.io.Serializable;
-import java.util.Arrays;
-import java.util.Collection;
+import java.util.stream.Stream;
import org.apache.logging.log4j.test.AbstractSerializationTest;
-import org.junit.Ignore;
-import org.junit.runners.Parameterized.Parameters;
+import org.junit.jupiter.api.Disabled;
-@Ignore
+@Disabled
public class StatusLoggerSerializationTest extends AbstractSerializationTest {
- @Parameters
- public static Collection<Object[]> data() {
- return Arrays.asList(new Object[][] { { StatusLogger.getLogger() } });
- }
-
- public StatusLoggerSerializationTest(final Serializable serializable) {
- super(serializable);
+ protected Stream<Object> data() {
+ return Stream.of(StatusLogger.getLogger());
}
}
diff --git a/log4j-api-test/src/test/java/org/apache/logging/log4j/util/StackLocatorUtilTest.java b/log4j-api-test/src/test/java/org/apache/logging/log4j/util/StackLocatorUtilTest.java
index 82829e1894..2b9eeffe7b 100644
--- a/log4j-api-test/src/test/java/org/apache/logging/log4j/util/StackLocatorUtilTest.java
+++ b/log4j-api-test/src/test/java/org/apache/logging/log4j/util/StackLocatorUtilTest.java
@@ -16,19 +16,17 @@
*/
package org.apache.logging.log4j.util;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertSame;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertSame;
import java.util.ArrayDeque;
import java.util.Deque;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.BlockJUnit4ClassRunner;
-import org.junit.runners.ParentRunner;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.engine.execution.ExecutableInvoker;
+import org.junit.jupiter.engine.execution.InvocationInterceptorChain;
-@RunWith(BlockJUnit4ClassRunner.class)
public class StackLocatorUtilTest {
@Test
@@ -92,8 +90,8 @@ public class StackLocatorUtilTest {
@Test
public void testGetCallerClassViaName() throws Exception {
- final Class<?> expected = BlockJUnit4ClassRunner.class;
- final Class<?> actual = StackLocatorUtil.getCallerClass("org.junit.runners.ParentRunner");
+ final Class<?> expected = ExecutableInvoker.class;
+ final Class<?> actual = StackLocatorUtil.getCallerClass("org.junit.jupiter.engine.execution.InvocationInterceptorChain");
// if this test fails in the future, it's probably because of a JUnit upgrade; check the new stack trace and
// update this test accordingly
assertSame(expected, actual);
@@ -101,8 +99,8 @@ public class StackLocatorUtilTest {
@Test
public void testGetCallerClassViaAnchorClass() throws Exception {
- final Class<?> expected = BlockJUnit4ClassRunner.class;
- final Class<?> actual = StackLocatorUtil.getCallerClass(ParentRunner.class);
+ final Class<?> expected = ExecutableInvoker.class;
+ final Class<?> actual = StackLocatorUtil.getCallerClass(InvocationInterceptorChain.class);
// if this test fails in the future, it's probably because of a JUnit upgrade; check the new stack trace and
// update this test accordingly
assertSame(expected, actual);
@@ -112,8 +110,8 @@ public class StackLocatorUtilTest {
public void testLocateClass() {
final ClassLocator locator = new ClassLocator();
final Class<?> clazz = locator.locateClass();
- assertNotNull("Could not locate class", clazz);
- assertEquals("Incorrect class", this.getClass(), clazz);
+ assertNotNull(clazz, "Could not locate class");
+ assertEquals(this.getClass(), clazz, "Incorrect class");
}
}
diff --git a/log4j-core-test/src/test/java/org/apache/logging/log4j/core/LoggerSerializationTest.java b/log4j-core-test/src/test/java/org/apache/logging/log4j/core/LoggerSerializationTest.java
index 4da35fb2d5..b1944ed9c9 100644
--- a/log4j-core-test/src/test/java/org/apache/logging/log4j/core/LoggerSerializationTest.java
+++ b/log4j-core-test/src/test/java/org/apache/logging/log4j/core/LoggerSerializationTest.java
@@ -16,9 +16,7 @@
*/
package org.apache.logging.log4j.core;
-import java.io.Serializable;
-import java.util.Arrays;
-import java.util.Collection;
+import java.util.stream.Stream;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.test.AbstractSerializationTest;
@@ -27,16 +25,11 @@ import org.junit.runners.Parameterized.Parameters;
public class LoggerSerializationTest extends AbstractSerializationTest {
@Parameters
- public static Collection<Object[]> data() {
- return Arrays.asList(new Object[][] {
- { new LoggerContext("").getLogger("", null) },
- { LogManager.getRootLogger() },
- { LogManager.getLogger() },
- { LogManager.getLogger("test") } });
- }
-
- public LoggerSerializationTest(final Serializable serializable) {
- super(serializable);
+ protected Stream<Object> data() {
+ return Stream.of(new LoggerContext("").getLogger("", null),
+ LogManager.getRootLogger(),
+ LogManager.getLogger(),
+ LogManager.getLogger("test"));
}
}