Skip to content

Commit e8bbdf0

Browse files
Remove all remaining PowerMock dependencies in ReplacePowerMockito recipe (#921)
* Remove all remaining PowerMock dependencies in ReplacePowerMockito recipe The ReplacePowerMockito recipe previously only removed powermock-api-mockito, powermock-api-mockito2, and powermock-core. This left behind 14 other org.powermock artifacts that should also be removed when migrating to Mockito. Added RemoveDependency entries for: powermock-api-support, powermock-api-mockito-common, powermock-api-easymock, powermock-reflect, powermock-module-junit4, powermock-module-junit4-common, powermock-module-junit4-legacy, powermock-module-junit4-rule, powermock-module-junit4-rule-agent, powermock-module-junit3, powermock-module-junit5, powermock-module-testng, powermock-classloading-xstream, and powermock-classloading-objenesis. Fixes moderneinc/customer-requests#1933 * Also remove managed dependencies for PowerMock artifacts Add RemoveManagedDependency entries alongside each RemoveDependency to ensure PowerMock artifacts are also cleaned up from Maven dependencyManagement sections. * Extract PowerMock dependency removal into separate recipe Move all RemoveDependency and RemoveManagedDependency entries into a new RemovePowerMockDependencies declarative recipe for clarity. The main ReplacePowerMockito recipe now references it as a single entry. * Also remove powermock parent POM and powermock-modules aggregator * Add powermock and powermock-modules to integration test * Use wildcard to remove all PowerMock dependencies Replace individual RemoveDependency and RemoveManagedDependency entries with a single powermock* glob for each, and inline back into the main ReplacePowerMockito recipe. * Add Maven POM test for managed PowerMock dependency removal Verifies that RemoveManagedDependency with powermock* wildcard correctly removes managed PowerMock dependencies, and that ChangeDependency properly converts managed powermock-api-mockito into managed mockito-core. Fixes moderneinc/customer-requests#1933 * Add Maven POM test to removesAllPowerMockDependencies, remove @issue annotations Add a pomXml assertion to the existing Gradle test to verify PowerMock dependencies are removed from Maven builds without dependencyManagement. Remove @issue annotations referencing the customer-requests repo.
1 parent 0e3d076 commit e8bbdf0

3 files changed

Lines changed: 164 additions & 14 deletions

File tree

src/main/resources/META-INF/rewrite/powermockito.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,4 +62,7 @@ recipeList:
6262
newVersion: 3.x
6363
- org.openrewrite.java.dependencies.RemoveDependency:
6464
groupId: org.powermock
65-
artifactId: powermock-core
65+
artifactId: powermock*
66+
- org.openrewrite.maven.RemoveManagedDependency:
67+
groupId: org.powermock
68+
artifactId: powermock*

0 commit comments

Comments
 (0)