From 93ebb3da650220f86996e7de9d28d6a390b58183 Mon Sep 17 00:00:00 2001 From: Kirill Rakhman Date: Mon, 30 May 2016 19:35:33 +0200 Subject: [PATCH] Formatter: handle spaces around 'is' keyword (#874) Fixes #KT-12548 --- .../jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt | 1 + idea/testData/formatter/Is.after.kt | 5 +++++ idea/testData/formatter/Is.kt | 5 +++++ .../jetbrains/kotlin/formatter/FormatterTestGenerated.java | 6 ++++++ 4 files changed, 17 insertions(+) create mode 100644 idea/testData/formatter/Is.after.kt create mode 100644 idea/testData/formatter/Is.kt diff --git a/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt b/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt index 018549ddbb0..7b1ddcd70d9 100644 --- a/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt +++ b/idea/formatter/src/org/jetbrains/kotlin/idea/formatter/kotlinSpacingRules.kt @@ -166,6 +166,7 @@ fun createSpacingBuilder(settings: CodeStyleSettings, builderUtil: KotlinSpacing afterInside(IDENTIFIER, FUN).spacing(0, 0, 0, false, 0) around(AS_KEYWORD).spaces(1) + around(IS_KEYWORD).spaces(1) aroundInside(IDENTIFIER, BINARY_EXPRESSION).spaces(1) // before LPAR in constructor(): this() {} diff --git a/idea/testData/formatter/Is.after.kt b/idea/testData/formatter/Is.after.kt new file mode 100644 index 00000000000..6dd253f5890 --- /dev/null +++ b/idea/testData/formatter/Is.after.kt @@ -0,0 +1,5 @@ +fun f() { + if (1 is Int) { + + } +} \ No newline at end of file diff --git a/idea/testData/formatter/Is.kt b/idea/testData/formatter/Is.kt new file mode 100644 index 00000000000..5effe2baebf --- /dev/null +++ b/idea/testData/formatter/Is.kt @@ -0,0 +1,5 @@ +fun f() { + if (1 is Int) { + + } +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java b/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java index 5aa9b7bd260..0d9432ecd2f 100644 --- a/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/formatter/FormatterTestGenerated.java @@ -349,6 +349,12 @@ public class FormatterTestGenerated extends AbstractFormatterTest { doTest(fileName); } + @TestMetadata("Is.after.kt") + public void testIs() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/formatter/Is.after.kt"); + doTest(fileName); + } + @TestMetadata("KDoc.after.kt") public void testKDoc() throws Exception { String fileName = KotlinTestUtils.navigationMetadata("idea/testData/formatter/KDoc.after.kt");