Skip to content

Commit 9fe1e30

Browse files
committed
Disable JFR-related tests on OpenJ9 JVMs
1 parent 297c745 commit 9fe1e30

File tree

9 files changed

+39
-1
lines changed

9 files changed

+39
-1
lines changed

gradle/plugins/common/src/main/kotlin/junitbuild.testing-conventions.gradle.kts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,9 @@ dependencies {
8686
testRuntimeOnly(project(":junit-platform-reporting"))
8787

8888
testRuntimeOnly(bundleFromLibs("log4j"))
89+
testRuntimeOnly(dependencyFromLibs("jfrPolyfill")) {
90+
because("OpenJ9 does not include JFR")
91+
}
8992
testRuntimeOnly(dependencyFromLibs("openTestReporting-events")) {
9093
because("it's required to run tests via IntelliJ which does not consumed the shadowed jar of junit-platform-reporting")
9194
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/*
2+
* Copyright 2015-2024 the original author or authors.
3+
*
4+
* All rights reserved. This program and the accompanying materials are
5+
* made available under the terms of the Eclipse Public License v2.0 which
6+
* accompanies this distribution and is available at
7+
*
8+
* https://www.eclipse.org/legal/epl-v20.html
9+
*/
10+
11+
package org.junit.jupiter.api.extension;
12+
13+
import java.lang.annotation.ElementType;
14+
import java.lang.annotation.Retention;
15+
import java.lang.annotation.RetentionPolicy;
16+
import java.lang.annotation.Target;
17+
18+
import org.junit.jupiter.api.condition.DisabledIfSystemProperty;
19+
20+
@Target({ ElementType.METHOD, ElementType.TYPE })
21+
@Retention(RetentionPolicy.RUNTIME)
22+
@DisabledIfSystemProperty(named = "java.vm.vendor", matches = ".*OpenJ9.*")
23+
public @interface DisabledOnOpenJ9 {
24+
}

junit-platform-jfr/junit-platform-jfr.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ dependencies {
99
api(projects.junitPlatformLauncher)
1010

1111
compileOnlyApi(libs.apiguardian)
12+
compileOnly(libs.jfrPolyfill)
1213

1314
osgiVerification(projects.junitJupiterEngine)
1415
osgiVerification(projects.junitPlatformLauncher)

platform-tests/src/test/java/org/junit/platform/commons/util/ReflectionUtilsTests.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1008,7 +1008,8 @@ void findNestedClassesWithInvalidNestedClassFile(@TrackLogRecords LogRecordListe
10081008
assertEquals(fqcn, classWithInvalidNestedClassFile.getName());
10091009
var noClassDefFoundError = assertThrows(NoClassDefFoundError.class,
10101010
classWithInvalidNestedClassFile::getDeclaredClasses);
1011-
assertEquals("tests/NestedInterfaceGroovyTests$NestedInterface$1", noClassDefFoundError.getMessage());
1011+
assertThat(noClassDefFoundError) //
1012+
.hasMessageMatching("tests[./]NestedInterfaceGroovyTests\\$NestedInterface\\$1");
10121013

10131014
assertThat(findNestedClasses(classWithInvalidNestedClassFile)).isEmpty();
10141015
// @formatter:off

platform-tests/src/test/java/org/junit/platform/jfr/FlightRecordingDiscoveryListenerIntegrationTests.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,15 @@
1616
import static org.moditect.jfrunit.JfrEventsAssert.assertThat;
1717

1818
import org.junit.jupiter.api.Test;
19+
import org.junit.jupiter.api.extension.DisabledOnOpenJ9;
1920
import org.junit.jupiter.engine.JupiterTestEngine;
2021
import org.junit.platform.launcher.core.LauncherFactoryForTestingPurposesOnly;
2122
import org.moditect.jfrunit.EnableEvent;
2223
import org.moditect.jfrunit.JfrEventTest;
2324
import org.moditect.jfrunit.JfrEvents;
2425

2526
@JfrEventTest
27+
@DisabledOnOpenJ9
2628
public class FlightRecordingDiscoveryListenerIntegrationTests {
2729

2830
public JfrEvents jfrEvents = new JfrEvents();

platform-tests/src/test/java/org/junit/platform/jfr/FlightRecordingExecutionListenerIntegrationTests.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,15 @@
1818
import org.junit.jupiter.api.Disabled;
1919
import org.junit.jupiter.api.Test;
2020
import org.junit.jupiter.api.TestReporter;
21+
import org.junit.jupiter.api.extension.DisabledOnOpenJ9;
2122
import org.junit.jupiter.engine.JupiterTestEngine;
2223
import org.junit.platform.launcher.core.LauncherFactoryForTestingPurposesOnly;
2324
import org.moditect.jfrunit.EnableEvent;
2425
import org.moditect.jfrunit.JfrEventTest;
2526
import org.moditect.jfrunit.JfrEvents;
2627

2728
@JfrEventTest
29+
@DisabledOnOpenJ9
2830
public class FlightRecordingExecutionListenerIntegrationTests {
2931

3032
public JfrEvents jfrEvents = new JfrEvents();

platform-tooling-support-tests/platform-tooling-support-tests.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ dependencies {
6868
because("we reference Ant's main class")
6969
}
7070
testImplementation(libs.bundles.xmlunit)
71+
testImplementation(testFixtures(projects.junitJupiterApi))
7172

7273
thirdPartyJars(libs.junit4)
7374
thirdPartyJars(libs.assertj)

platform-tooling-support-tests/src/test/java/platform/tooling/support/tests/ModularUserGuideTests.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727

2828
import org.codehaus.groovy.runtime.ProcessGroovyMethods;
2929
import org.junit.jupiter.api.Test;
30+
import org.junit.jupiter.api.extension.DisabledOnOpenJ9;
3031
import org.junit.jupiter.api.io.TempDir;
3132

3233
import platform.tooling.support.Helper;
@@ -35,6 +36,7 @@
3536
/**
3637
* @since 1.5
3738
*/
39+
@DisabledOnOpenJ9
3840
class ModularUserGuideTests {
3941

4042
private static final String DOCUMENTATION_MODULE_DESCRIPTOR = """

platform-tooling-support-tests/src/test/java/platform/tooling/support/tests/ToolProviderTests.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636

3737
import org.junit.jupiter.api.BeforeAll;
3838
import org.junit.jupiter.api.Test;
39+
import org.junit.jupiter.api.extension.DisabledOnOpenJ9;
3940

4041
import platform.tooling.support.Helper;
4142
import platform.tooling.support.MavenRepo;
@@ -87,6 +88,7 @@ void findAndRunJUnitOnTheClassPath() {
8788
}
8889

8990
@Test
91+
@DisabledOnOpenJ9
9092
void findAndRunJUnitOnTheModulePath() {
9193
var finder = ModuleFinder.of(LIB);
9294
var modules = finder.findAll().stream() //

0 commit comments

Comments
 (0)