From 8941cf8fb5a92c0b0b6545ad7d404bad221b9537 Mon Sep 17 00:00:00 2001 From: Bas Leijdekkers Date: Sun, 8 Sep 2013 12:29:27 +0200 Subject: [PATCH] IDEA-113298 (replace assertTrue with assertFalse removes message) --- .../ipp/junit/FlipAssertLiteralIntention.java | 9 ++--- .../junit/flip_assert_literal/Message.java | 9 +++++ .../flip_assert_literal/Message_after.java | 9 +++++ .../junit/FlipAssertLiteralIntentionTest.java | 36 +++++++++++++++++++ 4 files changed, 59 insertions(+), 4 deletions(-) create mode 100644 plugins/IntentionPowerPak/test/com/siyeh/ipp/junit/flip_assert_literal/Message.java create mode 100644 plugins/IntentionPowerPak/test/com/siyeh/ipp/junit/flip_assert_literal/Message_after.java create mode 100644 plugins/IntentionPowerPak/testSrc/com/siyeh/ipp/junit/FlipAssertLiteralIntentionTest.java diff --git a/plugins/IntentionPowerPak/src/com/siyeh/ipp/junit/FlipAssertLiteralIntention.java b/plugins/IntentionPowerPak/src/com/siyeh/ipp/junit/FlipAssertLiteralIntention.java index 361197648abe..ac90d38e1dcf 100644 --- a/plugins/IntentionPowerPak/src/com/siyeh/ipp/junit/FlipAssertLiteralIntention.java +++ b/plugins/IntentionPowerPak/src/com/siyeh/ipp/junit/FlipAssertLiteralIntention.java @@ -78,12 +78,13 @@ public class FlipAssertLiteralIntention extends MutablyNamedIntention { } newCall.append(toMethodName).append('('); final PsiExpressionList argumentList = call.getArgumentList(); - final PsiExpression[] args = argumentList.getExpressions(); - if (args.length == 1) { - newCall.append(BoolUtils.getNegatedExpressionText(args[0])); + final PsiExpression[] arguments = argumentList.getExpressions(); + if (arguments.length == 1) { + newCall.append(BoolUtils.getNegatedExpressionText(arguments[0])); } else { - newCall.append(BoolUtils.getNegatedExpressionText(args[1])); + newCall.append(arguments[0].getText()).append(','); + newCall.append(BoolUtils.getNegatedExpressionText(arguments[1])); } newCall.append(')'); replaceExpression(newCall.toString(), call); diff --git a/plugins/IntentionPowerPak/test/com/siyeh/ipp/junit/flip_assert_literal/Message.java b/plugins/IntentionPowerPak/test/com/siyeh/ipp/junit/flip_assert_literal/Message.java new file mode 100644 index 000000000000..6cfd0b6d585e --- /dev/null +++ b/plugins/IntentionPowerPak/test/com/siyeh/ipp/junit/flip_assert_literal/Message.java @@ -0,0 +1,9 @@ +package com.siyeh.ipp.junit.flip_assert_literal; + +import org.junit.Assert; + +class Messsage { + void test(boolean b) { + Assert.assertTrue("message", !b); + } +} \ No newline at end of file diff --git a/plugins/IntentionPowerPak/test/com/siyeh/ipp/junit/flip_assert_literal/Message_after.java b/plugins/IntentionPowerPak/test/com/siyeh/ipp/junit/flip_assert_literal/Message_after.java new file mode 100644 index 000000000000..410867880ac3 --- /dev/null +++ b/plugins/IntentionPowerPak/test/com/siyeh/ipp/junit/flip_assert_literal/Message_after.java @@ -0,0 +1,9 @@ +package com.siyeh.ipp.junit.flip_assert_literal; + +import org.junit.Assert; + +class Messsage { + void test(boolean b) { + Assert.assertFalse("message", b); + } +} \ No newline at end of file diff --git a/plugins/IntentionPowerPak/testSrc/com/siyeh/ipp/junit/FlipAssertLiteralIntentionTest.java b/plugins/IntentionPowerPak/testSrc/com/siyeh/ipp/junit/FlipAssertLiteralIntentionTest.java new file mode 100644 index 000000000000..edf39058bc90 --- /dev/null +++ b/plugins/IntentionPowerPak/testSrc/com/siyeh/ipp/junit/FlipAssertLiteralIntentionTest.java @@ -0,0 +1,36 @@ +/** + * (c) 2013 Desert Island BV + * created: 08 09 2013 + */ +package com.siyeh.ipp.junit; + +import com.siyeh.IntentionPowerPackBundle; +import com.siyeh.ipp.IPPTestCase; + +/** + * @see FlipAssertLiteralIntention + * @author Bas Leijdekkers + */ +public class FlipAssertLiteralIntentionTest extends IPPTestCase { + + public void testMessage() { doTest(); } + + @Override + protected void setUp() throws Exception { + super.setUp(); + myFixture.addClass("package org.junit;" + + "class Assert {" + + " public static void assertTrue(java.lang.String message, boolean condition) {}" + + "}"); + } + + @Override + protected String getRelativePath() { + return "junit/flip_assert_literal"; + } + + @Override + protected String getIntentionName() { + return IntentionPowerPackBundle.message("flip.assert.literal.intention.name", "assertTrue", "assertFalse"); + } +}