invert if: don't reformat when if was removed completely

This commit is contained in:
Anna.Kozlova
2019-01-03 19:02:03 +01:00
parent 10208a6f2f
commit 8a6f1cb404
3 changed files with 21 additions and 5 deletions

View File

@@ -92,13 +92,13 @@ public class InvertIfConditionAction extends PsiElementBaseIntentionAction {
LOG.assertTrue(block != null);
ControlFlow controlFlow = buildControlFlow(block);
ifStatement = setupBranches(ifStatement, controlFlow);
if (!ifStatement.isValid()) return;
PsiExpression condition = Objects.requireNonNull(ifStatement.getCondition());
if (condition != null) {
final CommentTracker tracker = new CommentTracker();
final String negatedCondition = BoolUtils.getNegatedExpressionText(condition, tracker);
tracker.replaceAndRestoreComments(condition, negatedCondition);
}
final CommentTracker tracker = new CommentTracker();
final String negatedCondition = BoolUtils.getNegatedExpressionText(condition, tracker);
tracker.replaceAndRestoreComments(condition, negatedCondition);
formatIf(ifStatement);
}

View File

@@ -0,0 +1,5 @@
// "Invert 'if' condition" "true"
class A {
int test(int x) {
}
}

View File

@@ -0,0 +1,11 @@
// "Invert 'if' condition" "true"
class A {
int test(int x) {
return switch (x) {
case 1:
if (Math.ran<caret>dom() > 0.5) {
br
}
};
}
}