Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMateusz Matela2015-08-02 21:09:49 +0000
committerMateusz Matela2015-08-02 21:09:49 +0000
commitab4f8c1da496ce5ee531a94da491fe90746cf487 (patch)
tree4bc85c3e71c0c3a58f0e2f0b748d9db79cf4df3d
parent1e4bfb24b5853911ccf578ab5c655637f685bd6c (diff)
downloadeclipse.jdt.core-ab4f8c1da496ce5ee531a94da491fe90746cf487.tar.gz
eclipse.jdt.core-ab4f8c1da496ce5ee531a94da491fe90746cf487.tar.xz
eclipse.jdt.core-ab4f8c1da496ce5ee531a94da491fe90746cf487.zip
fixed bug 470977: [formatter] Whitespace removed between assert and unary operator or primary expression
-rw-r--r--org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterBugsTests.java23
-rw-r--r--org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/SpacePreparator.java1
2 files changed, 24 insertions, 0 deletions
diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterBugsTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterBugsTests.java
index 70e3c4ab64..45d659f336 100644
--- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterBugsTests.java
+++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterBugsTests.java
@@ -11066,4 +11066,27 @@ public void testBug471883() throws Exception {
"}";
formatSource(source);
}
+/**
+ * @bug 470977: [formatter] Whitespace removed between assert and unary operator or primary expression
+ * @test test that spaces after assert are correct
+ * @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=470977"
+ */
+public void testBug470977() throws Exception {
+ String source =
+ "public class TestFormat {\r\n" +
+ " public static void main(String[] args) {\r\n" +
+ " assert \"\".length() == 0;\r\n" +
+ " assert (!false);\r\n" +
+ "\r\n" +
+ " assert !false;\r\n" +
+ " assert +0 == 0;\r\n" +
+ " assert -0 == 0;\r\n" +
+ "\r\n" +
+ " int i = 0;\r\n" +
+ " assert ++i == 1;\r\n" +
+ " assert --i == 0;\r\n" +
+ " }\r\n" +
+ "}";
+ formatSource(source);
+}
}
diff --git a/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/SpacePreparator.java b/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/SpacePreparator.java
index b011d8d8ac..4acb9e6818 100644
--- a/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/SpacePreparator.java
+++ b/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/SpacePreparator.java
@@ -374,6 +374,7 @@ public class SpacePreparator extends ASTVisitor {
@Override
public boolean visit(AssertStatement node) {
+ this.tm.firstTokenIn(node, TokenNameassert).spaceAfter();
if (node.getMessage() != null) {
handleTokenBefore(node.getMessage(), TokenNameCOLON, this.options.insert_space_before_colon_in_assert,
this.options.insert_space_after_colon_in_assert);

Back to the top