AssertThatJava8Optional and AssertThatGuavaOptional inspections do not longer try to fix assertThat(optional).isEqualTo(Optional.fromNullable(expression)) to contains() when expression is not a non-null constant expression.
This commit is contained in:
+3
@@ -70,6 +70,9 @@ class AssertThatGuavaOptionalInspection : AbstractAssertJInspection() {
|
||||
if (IS_EQUAL_TO_OBJECT.test(expression)) {
|
||||
val innerExpectedCall = expression.firstArg as? PsiMethodCallExpression ?: return
|
||||
if (CallMatcher.anyOf(GUAVA_OPTIONAL_OF, GUAVA_OPTIONAL_FROM_NULLABLE).test(innerExpectedCall)) {
|
||||
if (GUAVA_OPTIONAL_FROM_NULLABLE.test(innerExpectedCall)) {
|
||||
innerExpectedCall.firstArg.calculateConstantValue() ?: return
|
||||
}
|
||||
registerRemoveExpectedOutmostMethod(holder, expression, expression, MethodNames.CONTAINS) { desc, method ->
|
||||
QuickFixWithPostfixDelegate(
|
||||
UnwrapExpectedStaticMethodCallQuickFix(desc, method),
|
||||
|
||||
+3
@@ -60,6 +60,9 @@ class AssertThatJava8OptionalInspection : AbstractAssertJInspection() {
|
||||
if (IS_EQUAL_TO_OBJECT.test(expression)) {
|
||||
val innerExpectedCall = expression.firstArg as? PsiMethodCallExpression ?: return
|
||||
if (CallMatcher.anyOf(OPTIONAL_OF, OPTIONAL_OF_NULLABLE).test(innerExpectedCall)) {
|
||||
if (OPTIONAL_OF_NULLABLE.test(innerExpectedCall)) {
|
||||
innerExpectedCall.firstArg.calculateConstantValue() ?: return
|
||||
}
|
||||
registerRemoveExpectedOutmostMethod(holder, expression, expression, MethodNames.CONTAINS, ::UnwrapExpectedStaticMethodCallQuickFix)
|
||||
} else if (OPTIONAL_EMPTY.test(innerExpectedCall)) {
|
||||
registerSimplifyMethod(holder, expression, MethodNames.IS_NOT_PRESENT)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<idea-plugin>
|
||||
<id>de.platon42.cajon</id>
|
||||
<name>Concise AssertJ Optimizing Nitpicker (Cajon)</name>
|
||||
<vendor email="chrisly@platon42.de" url="https://github.com/chrisly42/cajon-plugin">Platon42</vendor>
|
||||
<vendor email="chrisly@platon42.de" url="https://github.com/chrisly42/cajon-plugin">Chris 'platon42' Hodges</vendor>
|
||||
|
||||
<description><![CDATA[
|
||||
Cajon is an IntelliJ IDEA Plugin for shortening and optimizing AssertJ assertions.
|
||||
|
||||
Reference in New Issue
Block a user