Skip to content

Commit 39dc2eb

Browse files
author
Vincent Potucek
committed
1 parent b822a12 commit 39dc2eb

File tree

80 files changed

+442
-343
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+442
-343
lines changed

.github/workflows/rewrite.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Rewrite ✅
2+
on:
3+
push:
4+
branches:
5+
- main
6+
- 'releases/**'
7+
paths:
8+
- '.github/**'
9+
pull_request:
10+
paths:
11+
- '.github/**'
12+
permissions: {}
13+
jobs:
14+
rewrite:
15+
name: Sanity Check 🕊
16+
runs-on: ubuntu-latest
17+
permissions:
18+
security-events: write
19+
steps:
20+
- name: Checkout Repository 📥
21+
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
22+
with:
23+
persist-credentials: false
24+
- name: Dry Run 🧮
25+
uses: ./.github/actions/run-gradle
26+
with:
27+
encryptionKey: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
28+
arguments: rewriteDryRun -Dorg.gradle.jvmargs=-Xmx2G

gradle/config/rewrite.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
type: specs.openrewrite.org/v1beta/recipe
3+
name: org.junit.openrewrite.SanityCheck
4+
displayName: Apply all Java & Gradle best practices
5+
description: Comprehensive code quality recipe combining modernization, security, and best practices.
6+
tags:
7+
- java
8+
- gradle
9+
- static-analysis
10+
- cleanup
11+
recipeList:
12+
- org.openrewrite.java.testing.junit.JupiterBestPractices
13+
# - org.openrewrite.staticanalysis.CommonStaticAnalysis
14+
---

gradle/libs.versions.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ commonCustomUserData = { id = "com.gradle.common-custom-user-data-gradle-plugin"
101101
develocity = { id = "com.gradle.develocity", version = "4.2.2" }
102102
download = { id = "de.undercouch.download", version = "5.6.0" }
103103
errorProne = { id = "net.ltgt.errorprone", version = "4.3.0" }
104+
rewrite = { id = "org.openrewrite.rewrite", version = "7.21.0" }
104105
foojayResolver = { id = "org.gradle.toolchains.foojay-resolver", version = "1.0.0" }
105106
gitPublish = { id = "org.ajoberstar.git-publish", version = "5.1.3" }
106107
jmh = { id = "me.champeau.jmh", version = "0.7.3" }

gradle/plugins/common/build.gradle.kts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,17 @@ plugins {
77

88
dependencies {
99
implementation("junitbuild.base:dsl-extensions")
10-
implementation(projects.buildParameters)
1110
implementation(projects.backwardCompatibility)
12-
implementation(libs.plugins.kotlin.markerCoordinates)
11+
implementation(projects.buildParameters)
1312
implementation(libs.plugins.bnd.markerCoordinates)
1413
implementation(libs.plugins.commonCustomUserData.markerCoordinates)
1514
implementation(libs.plugins.develocity.markerCoordinates)
1615
implementation(libs.plugins.errorProne.markerCoordinates)
1716
implementation(libs.plugins.foojayResolver.markerCoordinates)
1817
implementation(libs.plugins.jmh.markerCoordinates)
18+
implementation(libs.plugins.kotlin.markerCoordinates)
1919
implementation(libs.plugins.nullaway.markerCoordinates)
20+
implementation(libs.plugins.rewrite.markerCoordinates)
2021
implementation(libs.plugins.shadow.markerCoordinates)
2122
implementation(libs.plugins.spotless.markerCoordinates)
2223
}

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ tasks.withType<JavaCompile>().configureEach {
4545
error(
4646
"CanonicalAnnotationSyntax",
4747
"IsInstanceLambdaUsage",
48+
"TryWithResourcesVariable",
4849
"PackageLocation",
4950
"RedundantStringConversion",
5051
"RedundantStringEscape",

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ plugins {
99
id("junitbuild.eclipse-conventions")
1010
id("junitbuild.jacoco-java-conventions")
1111
id("junitbuild.java-errorprone-conventions")
12+
id("junitbuild.rewrite-conventions")
1213
}
1314

1415
val mavenizedProjects: List<Project> by rootProject.extra
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
plugins {
2+
id("org.openrewrite.rewrite")
3+
}
4+
5+
dependencies {
6+
rewrite("org.openrewrite.recipe:rewrite-static-analysis:2.22.0")
7+
rewrite("org.openrewrite.recipe:rewrite-testing-frameworks:3.22.0")
8+
}
9+
10+
rewrite {
11+
activeRecipe("org.junit.openrewrite.SanityCheck")
12+
configFile = project.getRootProject().file("gradle/config/rewrite.yml")
13+
exclusion(
14+
// CommonStaticAnalysis: scope issue; CONSTRUCTOR_NOW_PROTECTED
15+
"**/params/aggregator/**",
16+
"**/params/converter/**",
17+
"**/params/provider/**",
18+
"**AggregatorIntegrationTests.java",
19+
"**AnnotationConsumerInitializerTests.java",
20+
"**HierarchicalTestEngine.java",
21+
"**TypeBasedParameterResolver.java",
22+
// JupiterBestPractices: class scope issue;
23+
"**Assert**AssertionsTests.java", // trivial import fix.
24+
"**BeforeAndAfterSuiteTests.java",
25+
"**BridgeMethods.java",
26+
"**CsvArgumentsProvider.java",
27+
"**DefaultArgumentsAccessor.java",
28+
"**DiscoverySelectorResolverTests.java",
29+
"**DiscoveryTests.java",
30+
"**DisplayNameGenerationTests.java",
31+
"**DynamicNodeGenerationTests.java",
32+
"**DynamicTestTests.java",
33+
"**ExceptionHandlingTests.java",
34+
"**ExecutionCancellationTests.java",
35+
"**ExtensionRegistrationViaParametersAndFieldsTests.java",
36+
"**InvocationInterceptorTests.java",
37+
"**IsTestMethodTests.java",
38+
"**IsTestTemplateMethodTests.java",
39+
"**JupiterTestDescriptorTests.java",
40+
"**LifecycleMethodUtilsTests.java",
41+
"**MultipleTestableAnnotationsTests.java",
42+
"**NestedContainerEventConditionTests.java",
43+
"**ParallelExecutionIntegrationTests.java",
44+
"**ParameterResolverTests.java",
45+
"**ParameterizedTestIntegrationTests.java",
46+
"**RepeatedTestTests.java",
47+
"**StaticPackagePrivateBeforeMethod.java",
48+
"**SubclassedAssertionsTests.java",
49+
"**TempDirectoryCleanupTests.java",
50+
"**TestCase.java",
51+
"**TestCases.java",
52+
"**TestExecutionExceptionHandlerTests.java",
53+
"**TestInstanceFactoryTests.java",
54+
"**TestTemplateInvocationTestDescriptorTests.java",
55+
"**TestTemplateInvocationTests.java",
56+
"**TestTemplateTestDescriptorTests.java",
57+
"**TestWatcherTests.java",
58+
"**TimeoutExtensionTests.java",
59+
"**UniqueIdTrackingListenerIntegrationTests.java",
60+
"**WorkerThreadPoolHierarchicalTestExecutorServiceTests.java",
61+
"**org/junit/jupiter/engine/bridge**",
62+
// legacy
63+
"**documentation/src/test/java/example**",
64+
"**testFixtures/java/org/junit/vintage/engine/samples**",
65+
)
66+
setExportDatatables(true)
67+
setFailOnDryRunResults(true)
68+
}

jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledIfConditionClassLoaderTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
*
3030
* @since 5.10
3131
*/
32-
public class DisabledIfConditionClassLoaderTests {
32+
class DisabledIfConditionClassLoaderTests {
3333

3434
@Test
3535
// No need to introduce a "disabled" version of this test, since it would simply be the

jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledIfConditionTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
*
2222
* @since 5.7
2323
*/
24-
public class DisabledIfConditionTests extends AbstractExecutionConditionTests {
24+
class DisabledIfConditionTests extends AbstractExecutionConditionTests {
2525

2626
@Override
2727
protected ExecutionCondition getExecutionCondition() {

jupiter-tests/src/test/java/org/junit/jupiter/api/condition/DisabledIfIntegrationTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
*
2222
* @since 5.7
2323
*/
24-
public class DisabledIfIntegrationTests {
24+
class DisabledIfIntegrationTests {
2525

2626
@Test
2727
@Disabled("Only used in a unit test via reflection")

0 commit comments

Comments
 (0)