Skip to content

Commit 8014157

Browse files
authored
Convert Guava Predicates.equalTo and .not (#887)
1 parent cef9c1f commit 8014157

File tree

2 files changed

+69
-0
lines changed

2 files changed

+69
-0
lines changed

src/main/resources/META-INF/rewrite/no-guava.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,17 @@ tags:
177177
- guava
178178
- RSPEC-S4738
179179
recipeList:
180+
- org.openrewrite.java.ChangeMethodTargetToStatic:
181+
methodPattern: com.google.common.base.Predicates not(com.google.common.base.Predicate)
182+
fullyQualifiedTargetTypeName: java.util.function.Predicate
183+
184+
- org.openrewrite.java.ChangeMethodName:
185+
methodPattern: com.google.common.base.Predicates equalTo(..)
186+
newMethodName: isEqual
187+
- org.openrewrite.java.ChangeMethodTargetToStatic:
188+
methodPattern: com.google.common.base.Predicates isEqual(..)
189+
fullyQualifiedTargetTypeName: java.util.function.Predicate
190+
180191
- org.openrewrite.java.ChangeMethodName:
181192
methodPattern: com.google.common.base.Predicate apply(..)
182193
newMethodName: test

src/test/java/org/openrewrite/java/migrate/guava/PreferJavaUtilPredicateTest.java

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,4 +68,62 @@ public boolean test(String input) {
6868
)
6969
);
7070
}
71+
72+
@Test
73+
void predicatesNotToPredicate() {
74+
rewriteRun(
75+
//language=java
76+
java(
77+
"""
78+
import com.google.common.base.Predicate;
79+
import com.google.common.base.Predicates;
80+
81+
class A {
82+
public static Predicate<String> notEmptyPredicate() {
83+
Predicate<String> isEmpty = String::isEmpty;
84+
return Predicates.not(isEmpty);
85+
}
86+
}
87+
""",
88+
"""
89+
import java.util.function.Predicate;
90+
91+
class A {
92+
public static Predicate<String> notEmptyPredicate() {
93+
Predicate<String> isEmpty = String::isEmpty;
94+
return Predicate.not(isEmpty);
95+
}
96+
}
97+
"""
98+
)
99+
);
100+
}
101+
102+
@Test
103+
void predicatesEqualToToPredicateIsEqual() {
104+
rewriteRun(
105+
//language=java
106+
java(
107+
"""
108+
import com.google.common.base.Predicate;
109+
import com.google.common.base.Predicates;
110+
111+
class A {
112+
public static Predicate<String> isHelloPredicate() {
113+
return Predicates.equalTo("hello");
114+
}
115+
}
116+
""",
117+
"""
118+
import java.util.function.Predicate;
119+
120+
class A {
121+
public static Predicate<String> isHelloPredicate() {
122+
return Predicate.isEqual("hello");
123+
}
124+
}
125+
"""
126+
)
127+
);
128+
}
71129
}

0 commit comments

Comments
 (0)