From ac330832babec2edc3d492b6d389f4b2219a8b3e Mon Sep 17 00:00:00 2001 From: Bas Leijdekkers Date: Mon, 29 Jan 2024 11:47:08 +0100 Subject: [PATCH] Java: warn on string template single line trailing whitespace (IDEA-331315) GitOrigin-RevId: c3c1d5ef02d3086a2c8dbf29a9fea5b1d31d18d4 --- .../TrailingWhitespacesInTextBlockInspection.java | 1 - .../StringTemplateOneLine.after.java | 7 +++++++ .../StringTemplateOneLine.java | 7 +++++++ .../TrailingWhitespacesInTextBlockInspectionTest.java | 1 + 4 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 java/java-tests/testData/inspection/trailingWhitespacesInTextBlock/StringTemplateOneLine.after.java create mode 100644 java/java-tests/testData/inspection/trailingWhitespacesInTextBlock/StringTemplateOneLine.java diff --git a/java/java-impl-inspections/src/com/intellij/codeInspection/TrailingWhitespacesInTextBlockInspection.java b/java/java-impl-inspections/src/com/intellij/codeInspection/TrailingWhitespacesInTextBlockInspection.java index 1aa5448a39de..2f0e6256884b 100644 --- a/java/java-impl-inspections/src/com/intellij/codeInspection/TrailingWhitespacesInTextBlockInspection.java +++ b/java/java-impl-inspections/src/com/intellij/codeInspection/TrailingWhitespacesInTextBlockInspection.java @@ -47,7 +47,6 @@ public final class TrailingWhitespacesInTextBlockInspection extends AbstractBase private boolean checkTextBlock(@NotNull PsiElement textBlock, @NotNull String suffix) { String text = textBlock.getText(); String[] lines = text.split("\n", -1); - if (lines.length < 2) return false; int indent = getIndent(textBlock); if (indent == -1) return false; int offset = 0; diff --git a/java/java-tests/testData/inspection/trailingWhitespacesInTextBlock/StringTemplateOneLine.after.java b/java/java-tests/testData/inspection/trailingWhitespacesInTextBlock/StringTemplateOneLine.after.java new file mode 100644 index 000000000000..34c4876464a0 --- /dev/null +++ b/java/java-tests/testData/inspection/trailingWhitespacesInTextBlock/StringTemplateOneLine.after.java @@ -0,0 +1,7 @@ +class StringTemplateOneLine { + + public void foo(String type) { + String s = STR.""" + Hello \{type}"""; + } +} \ No newline at end of file diff --git a/java/java-tests/testData/inspection/trailingWhitespacesInTextBlock/StringTemplateOneLine.java b/java/java-tests/testData/inspection/trailingWhitespacesInTextBlock/StringTemplateOneLine.java new file mode 100644 index 000000000000..14f28acfaf11 --- /dev/null +++ b/java/java-tests/testData/inspection/trailingWhitespacesInTextBlock/StringTemplateOneLine.java @@ -0,0 +1,7 @@ +class StringTemplateOneLine { + + public void foo(String type) { + String s = STR.""" + Hello \{type} """; + } +} \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/java/codeInspection/TrailingWhitespacesInTextBlockInspectionTest.java b/java/java-tests/testSrc/com/intellij/java/codeInspection/TrailingWhitespacesInTextBlockInspectionTest.java index aab26b0bbc7c..960149a7bf43 100644 --- a/java/java-tests/testSrc/com/intellij/java/codeInspection/TrailingWhitespacesInTextBlockInspectionTest.java +++ b/java/java-tests/testSrc/com/intellij/java/codeInspection/TrailingWhitespacesInTextBlockInspectionTest.java @@ -22,6 +22,7 @@ public class TrailingWhitespacesInTextBlockInspectionTest extends LightJavaInspe public void testStringTemplate4Java21Preview() { doTestEscape(); } public void testStringTemplate5() { doTest(); } public void testStringTemplate6() { doTestAll(); } + public void testStringTemplateOneLine() { doTestAll(); } public void testTrailingSpaces() { doTestAll(); } public void testTrailingTabs() { doTestEscape(); } public void testWithBlankLines() { doTestAll(); }