This is an automated email from the ASF dual-hosted git repository. mattsicker pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git
commit 2ded5656f0b5b862dbe842bdc82dd99268bc8054 Author: Matt Sicker <[email protected]> AuthorDate: Mon Jan 1 18:18:15 2024 -0600 Make StatusLoggerExtension use standard abstract class JUnit has since created a `TypeBasedParameterResolver<T>` abstract class which we can use. Signed-off-by: Matt Sicker <[email protected]> --- .../apache/logging/log4j/test/junit/StatusLoggerExtension.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/log4j-api-test/src/main/java/org/apache/logging/log4j/test/junit/StatusLoggerExtension.java b/log4j-api-test/src/main/java/org/apache/logging/log4j/test/junit/StatusLoggerExtension.java index a3780f4dfe..8795d5bb17 100644 --- a/log4j-api-test/src/main/java/org/apache/logging/log4j/test/junit/StatusLoggerExtension.java +++ b/log4j-api-test/src/main/java/org/apache/logging/log4j/test/junit/StatusLoggerExtension.java @@ -38,6 +38,7 @@ import org.junit.jupiter.api.extension.ExtensionContextException; import org.junit.jupiter.api.extension.ParameterContext; import org.junit.jupiter.api.extension.ParameterResolutionException; import org.junit.jupiter.api.extension.TestExecutionExceptionHandler; +import org.junit.jupiter.api.extension.support.TypeBasedParameterResolver; import org.junit.platform.commons.support.HierarchyTraversalMode; import org.junit.platform.commons.support.ModifierSupport; import org.junit.platform.commons.support.ReflectionSupport; @@ -47,10 +48,6 @@ class StatusLoggerExtension extends TypeBasedParameterResolver<ListStatusListene private static final Object KEY = ListStatusListener.class; - public StatusLoggerExtension() { - super(ListStatusListener.class); - } - @Override public void beforeAll(ExtensionContext context) throws Exception { // Stores the per-class status listener to catch the messages caused by other @@ -110,6 +107,9 @@ class StatusLoggerExtension extends TypeBasedParameterResolver<ListStatusListene throws ParameterResolutionException { final ListStatusListenerHolder holder = ExtensionContextAnchor.getAttribute(KEY, ListStatusListenerHolder.class, extensionContext); + if (holder == null) { + throw new ParameterResolutionException("Unable to resolve ListStatusListener"); + } return holder.getStatusListener(); }
