Skip to content

Commit

Permalink
HHH-19196 Upgrade to JUnit 5.12.0
Browse files Browse the repository at this point in the history
  • Loading branch information
marko-bekhta committed Feb 25, 2025
1 parent 0bc1dff commit e2c7ce6
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 11 deletions.
2 changes: 1 addition & 1 deletion documentation/documentation.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ configurations {

javadocClasspath {
description = 'Class files for the javadoc to be built'
resolutionStrategy.capabilitiesResolution.withCapability('org.junit.jupiter:junit-jupiter-params:5.7.1') { details ->
resolutionStrategy.capabilitiesResolution.withCapability('org.junit.jupiter:junit-jupiter-params:'+testLibs.versions.junit5.get()) { details ->
details.select( details.candidates.first() ).because( 'first' )
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,9 @@
import org.junit.jupiter.api.MethodOrderer;
import org.junit.jupiter.api.TestInstance;
import org.junit.jupiter.api.extension.ExecutionCondition;
import org.junit.jupiter.api.extension.Extension;
import org.junit.jupiter.api.extension.ExtensionContext;
import org.junit.jupiter.api.extension.TestInstantiationAwareExtension;
import org.junit.jupiter.api.io.CleanupMode;
import org.junit.jupiter.api.io.TempDirFactory;
import org.junit.jupiter.api.parallel.ExecutionMode;
Expand All @@ -46,6 +48,7 @@
import org.junit.platform.engine.ExecutionRequest;
import org.junit.platform.engine.TestDescriptor;
import org.junit.platform.engine.UniqueId;
import org.junit.platform.engine.reporting.OutputDirectoryProvider;
import org.junit.platform.engine.support.hierarchical.EngineExecutionContext;
import org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine;
import org.junit.platform.engine.support.hierarchical.ThrowableCollector;
Expand All @@ -60,7 +63,7 @@ public String getId() {
@Override
public TestDescriptor discover(EngineDiscoveryRequest discoveryRequest, UniqueId uniqueId) {
JupiterConfiguration configuration = new CachingJupiterConfiguration(
new DefaultJupiterConfiguration( discoveryRequest.getConfigurationParameters() ) );
new DefaultJupiterConfiguration( discoveryRequest.getConfigurationParameters(), discoveryRequest.getOutputDirectoryProvider() ) );
JupiterEngineDescriptor engineDescriptor = new BytecodeEnhancedEngineDescriptor( uniqueId, configuration );
new DiscoverySelectorResolver().resolveSelectors( discoveryRequest, engineDescriptor );

Expand Down Expand Up @@ -126,6 +129,7 @@ private void addEnhancementCheck(boolean enhance, String[] testEnhancedClasses,
descriptor.getTestClass().getName()
),
descriptor.getTestClass(),
descriptor::getEnclosingTestClasses,
jc,
enhance,
testEnhancedClasses
Expand Down Expand Up @@ -161,6 +165,7 @@ private void replaceWithEnhanced(Class<?> enhanced, ClassBasedTestDescriptor des
convertUniqueId( child.getUniqueId(), enhancementContextId ),
updated.getTestClass(),
findMethodReplacement( updated, testMethod ),
updated::getEnclosingTestClasses,
configuration
)
);
Expand All @@ -172,6 +177,7 @@ private void replaceWithEnhanced(Class<?> enhanced, ClassBasedTestDescriptor des
convertUniqueId( child.getUniqueId(), enhancementContextId ),
updated.getTestClass(),
findMethodReplacement( updated, testMethod ),
updated::getEnclosingTestClasses,
configuration
) );
}
Expand Down Expand Up @@ -249,6 +255,11 @@ private DelegatingJupiterConfiguration(JupiterConfiguration configuration, Objec
);
}

@Override
public Predicate<Class<? extends Extension>> getFilterForAutoDetectedExtensions() {
return configuration.getFilterForAutoDetectedExtensions();
}

@Override
public Optional<String> getRawConfigurationParameter(String s) {
return configuration.getRawConfigurationParameter( s );
Expand All @@ -269,6 +280,11 @@ public boolean isExtensionAutoDetectionEnabled() {
return configuration.isExtensionAutoDetectionEnabled();
}

@Override
public boolean isThreadDumpOnTimeoutEnabled() {
return configuration.isThreadDumpOnTimeoutEnabled();
}

@Override
public ExecutionMode getDefaultExecutionMode() {
return configuration.getDefaultExecutionMode();
Expand Down Expand Up @@ -313,6 +329,16 @@ public CleanupMode getDefaultTempDirCleanupMode() {
public Supplier<TempDirFactory> getDefaultTempDirFactorySupplier() {
return configuration.getDefaultTempDirFactorySupplier();
}

@Override
public TestInstantiationAwareExtension.ExtensionContextScope getDefaultTestInstantiationExtensionContextScope() {
return configuration.getDefaultTestInstantiationExtensionContextScope();
}

@Override
public OutputDirectoryProvider getOutputDirectoryProvider() {
return configuration.getOutputDirectoryProvider();
}
}

private static class DelegatingDisplayNameGenerator implements DisplayNameGenerator {
Expand All @@ -335,13 +361,13 @@ private String prefix() {
}

@Override
public String generateDisplayNameForNestedClass(Class<?> aClass) {
return prefix() + delegate.generateDisplayNameForNestedClass( aClass );
public String generateDisplayNameForNestedClass(List<Class<?>> enclosingInstanceTypes, Class<?> nestedClass) {
return prefix() + delegate.generateDisplayNameForNestedClass( enclosingInstanceTypes, nestedClass );
}

@Override
public String generateDisplayNameForMethod(Class<?> aClass, Method method) {
return prefix() + delegate.generateDisplayNameForMethod( aClass, method );
public String generateDisplayNameForMethod(List<Class<?>> enclosingInstanceTypes, Class<?> testClass, Method testMethod) {
return prefix() + delegate.generateDisplayNameForMethod( enclosingInstanceTypes, testClass, testMethod );
}
}

Expand All @@ -350,12 +376,11 @@ private static class EnhancementWorkedCheckMethodTestDescriptor extends TestMeth
private final boolean enhanced;
private final String[] classes;

public EnhancementWorkedCheckMethodTestDescriptor(UniqueId uniqueId, Class<?> testClass,
JupiterConfiguration configuration,
boolean enhanced, String[] classes) {
public EnhancementWorkedCheckMethodTestDescriptor(UniqueId uniqueId, Class<?> testClass, Supplier<List<Class<?>>> enclosingInstanceTypes, JupiterConfiguration configuration, boolean enhanced, String[] classes) {
super(
prepareId( uniqueId, testMethod( enhanced ) ),
testClass, testMethod( enhanced ),
enclosingInstanceTypes,
configuration
);
this.enhanced = enhanced;
Expand Down
4 changes: 2 additions & 2 deletions settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -163,9 +163,9 @@ dependencyResolutionManagement {
library( "xjc", "org.glassfish.jaxb", "jaxb-xjc" ).versionRef( xjcVersion )
}
testLibs {
def junit5Version = version "junit5", "5.11.3"
def junit5Version = version "junit5", "5.12.0"
def junit4Version = version "junit4", "4.13.2"
def junit5LauncherVersion = version "junit5Launcher", "1.11.3"
def junit5LauncherVersion = version "junit5Launcher", "1.12.0"

def assertjVersion = version "assertj", "3.26.3"
def hamcrestVersion = version "hamcrest", "3.0"
Expand Down

0 comments on commit e2c7ce6

Please sign in to comment.