Skip to content

Commit 60cff4b

Browse files
authored
Add Picnic AssertJ rules to AssertJ best practices (#527)
* Add Picnic AssertJ rules to AssertJ best practices * Include Picnic's JUnitToAssertJRulesRecipes in migration * Exclude `jakarta.xml.bind-api` from TimeFold * Move the exclude to rewrite-third-party
1 parent cde1c39 commit 60cff4b

File tree

4 files changed

+27
-2
lines changed

4 files changed

+27
-2
lines changed

build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ dependencies {
3434
implementation("org.openrewrite:rewrite-maven")
3535
implementation("org.openrewrite.recipe:rewrite-java-dependencies:$rewriteVersion")
3636
implementation("org.openrewrite.recipe:rewrite-static-analysis:$rewriteVersion")
37+
implementation("org.openrewrite.recipe:rewrite-third-party:$rewriteVersion")
3738
runtimeOnly("org.openrewrite:rewrite-java-17")
3839

3940
compileOnly("org.projectlombok:lombok:latest.release")

src/main/java/org/openrewrite/java/testing/assertj/IsEqualToEmptyString.java

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

2828
import java.util.Collections;
2929

30+
/**
31+
* AssertJ has a more idiomatic way of asserting that a String is empty.
32+
* This recipe will find instances of `assertThat(String).isEqualTo("")` and replace them with `isEmpty()`.
33+
*
34+
* @deprecated Use {@link tech.picnic.errorprone.refasterrules.AssertJStringRulesRecipes.AbstractStringAssertStringIsEmptyRecipe} instead.
35+
*/
36+
@Deprecated
3037
public class IsEqualToEmptyString extends Recipe {
3138

3239
private static final MethodMatcher IS_EQUAL_TO = new MethodMatcher("org.assertj.core.api.AbstractStringAssert isEqualTo(java.lang.String)");

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

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,22 @@ recipeList:
2828
- org.openrewrite.java.testing.assertj.SimplifyChainedAssertJAssertions
2929
- org.openrewrite.java.testing.assertj.IsEqualToEmptyString
3030

31+
- tech.picnic.errorprone.refasterrules.AssertJBigDecimalRulesRecipes
32+
- tech.picnic.errorprone.refasterrules.AssertJBigIntegerRulesRecipes
33+
- tech.picnic.errorprone.refasterrules.AssertJBooleanRulesRecipes
34+
- tech.picnic.errorprone.refasterrules.AssertJByteRulesRecipes
35+
- tech.picnic.errorprone.refasterrules.AssertJCharSequenceRulesRecipes
36+
- tech.picnic.errorprone.refasterrules.AssertJDoubleRulesRecipes
37+
- tech.picnic.errorprone.refasterrules.AssertJFloatRulesRecipes
38+
- tech.picnic.errorprone.refasterrules.AssertJIntegerRulesRecipes
39+
- tech.picnic.errorprone.refasterrules.AssertJLongRulesRecipes
40+
- tech.picnic.errorprone.refasterrules.AssertJNumberRulesRecipes
41+
- tech.picnic.errorprone.refasterrules.AssertJPrimitiveRulesRecipes
42+
- tech.picnic.errorprone.refasterrules.AssertJRulesRecipes
43+
- tech.picnic.errorprone.refasterrules.AssertJShortRulesRecipes
44+
- tech.picnic.errorprone.refasterrules.AssertJStringRulesRecipes
45+
- tech.picnic.errorprone.refasterrules.AssertJThrowingCallableRulesRecipes
46+
3147
---
3248
type: specs.openrewrite.org/v1beta/recipe
3349
name: org.openrewrite.java.testing.assertj.StaticImports
@@ -365,3 +381,4 @@ recipeList:
365381
version: 3.x
366382
onlyIfUsing: org.assertj.core.api.Assertions
367383
acceptTransitive: true
384+
- tech.picnic.errorprone.refasterrules.JUnitToAssertJRulesRecipes

src/test/java/org/openrewrite/java/testing/assertj/IsEqualToEmptyStringTest.java renamed to src/test/java/org/openrewrite/java/testing/assertj/AssertJBestPracticesTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@
2424

2525
import static org.openrewrite.java.Assertions.java;
2626

27-
class IsEqualToEmptyStringTest implements RewriteTest {
27+
class AssertJBestPracticesTest implements RewriteTest {
2828

2929
@Override
3030
public void defaults(RecipeSpec spec) {
3131
spec
3232
.parser(JavaParser.fromJavaVersion().classpathFromResources(new InMemoryExecutionContext(), "assertj-core-3.24"))
33-
.recipe(new IsEqualToEmptyString());
33+
.recipeFromResources("org.openrewrite.java.testing.assertj.Assertj");
3434
}
3535

3636
@DocumentExample

0 commit comments

Comments
 (0)