From 80ab043d211acecf2dcf0f3777d41fb3065ae6f4 Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Mon, 11 Nov 2013 17:15:08 +0400 Subject: [PATCH] Tweak spacing in do-while --- .../formatter/JetFormattingModelBuilder.java | 4 ++++ .../formatter/DoWhileSpacing.after.kt | 20 ++++++++++++++++++ idea/testData/formatter/DoWhileSpacing.kt | 21 +++++++++++++++++++ .../formatter/JetFormatterTestGenerated.java | 5 +++++ 4 files changed, 50 insertions(+) create mode 100644 idea/testData/formatter/DoWhileSpacing.after.kt create mode 100644 idea/testData/formatter/DoWhileSpacing.kt diff --git a/idea/src/org/jetbrains/jet/plugin/formatter/JetFormattingModelBuilder.java b/idea/src/org/jetbrains/jet/plugin/formatter/JetFormattingModelBuilder.java index f36391e0ab1..74cb8699789 100644 --- a/idea/src/org/jetbrains/jet/plugin/formatter/JetFormattingModelBuilder.java +++ b/idea/src/org/jetbrains/jet/plugin/formatter/JetFormattingModelBuilder.java @@ -93,6 +93,10 @@ public class JetFormattingModelBuilder implements FormattingModelBuilder { .betweenInside(FOR_KEYWORD, LPAR, FOR).spacing(1, 1, 0, false, 0) .betweenInside(IF_KEYWORD, LPAR, IF).spacing(1, 1, 0, false, 0) .betweenInside(WHILE_KEYWORD, LPAR, WHILE).spacing(1, 1, 0, false, 0) + .betweenInside(WHILE_KEYWORD, LPAR, DO_WHILE).spacing(1, 1, 0, false, 0) + + .aroundInside(WHILE_KEYWORD, DO_WHILE).spaces(1) + .afterInside(DO_KEYWORD, DO_WHILE).spaces(1) // TODO: Ask for better API // Type of the declaration colon diff --git a/idea/testData/formatter/DoWhileSpacing.after.kt b/idea/testData/formatter/DoWhileSpacing.after.kt new file mode 100644 index 00000000000..ff84a2a3134 --- /dev/null +++ b/idea/testData/formatter/DoWhileSpacing.after.kt @@ -0,0 +1,20 @@ +fun test() { + do { + } while (true) + + do { + } while (true) + + do + { + } + while (true) + + do + { + } + while (true) + + do { + } while (true) +} \ No newline at end of file diff --git a/idea/testData/formatter/DoWhileSpacing.kt b/idea/testData/formatter/DoWhileSpacing.kt new file mode 100644 index 00000000000..dc34974b1f7 --- /dev/null +++ b/idea/testData/formatter/DoWhileSpacing.kt @@ -0,0 +1,21 @@ +fun test() { + do { + } while (true) + + do{ + }while(true) + + do + { + } + while + (true) + + do + { + } + while (true) + + do { + } while (true) +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/jet/formatter/JetFormatterTestGenerated.java b/idea/tests/org/jetbrains/jet/formatter/JetFormatterTestGenerated.java index 377ba7425c7..65678eaeb77 100644 --- a/idea/tests/org/jetbrains/jet/formatter/JetFormatterTestGenerated.java +++ b/idea/tests/org/jetbrains/jet/formatter/JetFormatterTestGenerated.java @@ -58,6 +58,11 @@ public class JetFormatterTestGenerated extends AbstractJetFormatterTest { doTest("idea/testData/formatter/ConsecutiveCalls.kt"); } + @TestMetadata("DoWhileSpacing.kt") + public void testDoWhileSpacing() throws Exception { + doTest("idea/testData/formatter/DoWhileSpacing.kt"); + } + @TestMetadata("EmptyLineAfterPackage.kt") public void testEmptyLineAfterPackage() throws Exception { doTest("idea/testData/formatter/EmptyLineAfterPackage.kt");