diff options
author | nickreid <nickreid@google.com> | 2024-04-23 07:51:09 -0700 |
---|---|---|
committer | Facebook GitHub Bot <facebook-github-bot@users.noreply.github.com> | 2024-04-23 07:51:09 -0700 |
commit | 4211ac2928ce036639649a5154bb218bd93497e6 (patch) | |
tree | acb2e98efe15d4949fc8f3ebd9fc9e5eb4772570 | |
parent | 76487c00f466797c84c49cc36d88eb95ffa37705 (diff) | |
download | ktfmt-4211ac2928ce036639649a5154bb218bd93497e6.tar.gz |
Stop emitting multiple trailing commas in enum entry lists with multiline items (#458)
Summary: Pull Request resolved: https://github.com/facebook/ktfmt/pull/458
Reviewed By: cortinico
Differential Revision: D56467830
Pulled By: hick209
fbshipit-source-id: 0d97ccb01cfa8436443db27ec244a2759a57251d
-rw-r--r-- | core/src/main/java/com/facebook/ktfmt/format/TrailingCommas.kt | 1 | ||||
-rw-r--r-- | core/src/test/java/com/facebook/ktfmt/format/GoogleStyleFormatterKtTest.kt | 19 |
2 files changed, 20 insertions, 0 deletions
diff --git a/core/src/main/java/com/facebook/ktfmt/format/TrailingCommas.kt b/core/src/main/java/com/facebook/ktfmt/format/TrailingCommas.kt index 4ee6375..e19337c 100644 --- a/core/src/main/java/com/facebook/ktfmt/format/TrailingCommas.kt +++ b/core/src/main/java/com/facebook/ktfmt/format/TrailingCommas.kt @@ -82,6 +82,7 @@ object TrailingCommas { } when (element) { + is KtEnumEntry, // Only suggest on the KtClassBody container is KtWhenEntry -> return is KtParameterList -> { if (element.parent is KtFunctionLiteral && element.parent.parent is KtLambdaExpression) { diff --git a/core/src/test/java/com/facebook/ktfmt/format/GoogleStyleFormatterKtTest.kt b/core/src/test/java/com/facebook/ktfmt/format/GoogleStyleFormatterKtTest.kt index 48ca5d1..f5440bd 100644 --- a/core/src/test/java/com/facebook/ktfmt/format/GoogleStyleFormatterKtTest.kt +++ b/core/src/test/java/com/facebook/ktfmt/format/GoogleStyleFormatterKtTest.kt @@ -1715,6 +1715,25 @@ class GoogleStyleFormatterKtTest { deduceMaxWidth = true) @Test + fun `trailing commas on multline enum entries`() = + assertFormatted( + """ + |enum class MultilineEntries { + | A( + | arg = 0, // + | arg = 0, + | ), + | /* Comment */ + | B, + | C { + | fun foo() {} + | }, + |} + |""" + .trimMargin(), + formattingOptions = Formatter.GOOGLE_FORMAT) + + @Test fun `trailing commas in enums`() { val code = """ |