diff options
| author | Daniel Jasper <djasper@google.com> | 2013-07-17 15:38:19 +0000 |
|---|---|---|
| committer | Daniel Jasper <djasper@google.com> | 2013-07-17 15:38:19 +0000 |
| commit | c834c70986b01f5086d72bc5c5e564d7d0ebbc74 (patch) | |
| tree | be37cc901d894de56cdbaade23f87fee5e26c352 /clang/unittests/Format/FormatTest.cpp | |
| parent | 21b3da0f939c699e671dd8df460fce7079361123 (diff) | |
| download | bcm5719-llvm-c834c70986b01f5086d72bc5c5e564d7d0ebbc74.tar.gz bcm5719-llvm-c834c70986b01f5086d72bc5c5e564d7d0ebbc74.zip | |
Improve line breaking before multi-line strings.
The AlwaysBreakBeforeMultilineStrings rule does not really make sense
if it does not a column gain.
Before (in Google style):
f(
"aaaa"
"bbbb");
After:
f("aaaa"
"bbbb");
llvm-svn: 186515
Diffstat (limited to 'clang/unittests/Format/FormatTest.cpp')
| -rw-r--r-- | clang/unittests/Format/FormatTest.cpp | 49 |
1 files changed, 28 insertions, 21 deletions
diff --git a/clang/unittests/Format/FormatTest.cpp b/clang/unittests/Format/FormatTest.cpp index 3b8f91130ff..353fcc7d0bd 100644 --- a/clang/unittests/Format/FormatTest.cpp +++ b/clang/unittests/Format/FormatTest.cpp @@ -2981,27 +2981,34 @@ TEST_F(FormatTest, AlwaysBreakBeforeMultilineStrings) { NoBreak.AlwaysBreakBeforeMultilineStrings = false; FormatStyle Break = getLLVMStyle(); Break.AlwaysBreakBeforeMultilineStrings = true; - EXPECT_EQ("aaaa = \"bbbb\"\n" - " \"cccc\";", - format("aaaa=\"bbbb\" \"cccc\";", NoBreak)); - EXPECT_EQ("aaaa =\n" - " \"bbbb\"\n" - " \"cccc\";", - format("aaaa=\"bbbb\" \"cccc\";", Break)); - EXPECT_EQ("aaaa(\"bbbb\"\n" - " \"cccc\");", - format("aaaa(\"bbbb\" \"cccc\");", NoBreak)); - EXPECT_EQ("aaaa(\n" - " \"bbbb\"\n" - " \"cccc\");", - format("aaaa(\"bbbb\" \"cccc\");", Break)); - EXPECT_EQ("aaaa(qqq, \"bbbb\"\n" - " \"cccc\");", - format("aaaa(qqq, \"bbbb\" \"cccc\");", NoBreak)); - EXPECT_EQ("aaaa(qqq,\n" - " \"bbbb\"\n" - " \"cccc\");", - format("aaaa(qqq, \"bbbb\" \"cccc\");", Break)); + verifyFormat("aaaa = \"bbbb\"\n" + " \"cccc\";", + NoBreak); + verifyFormat("aaaa =\n" + " \"bbbb\"\n" + " \"cccc\";", + Break); + verifyFormat("aaaa(\"bbbb\"\n" + " \"cccc\");", + NoBreak); + verifyFormat("aaaa(\n" + " \"bbbb\"\n" + " \"cccc\");", + Break); + verifyFormat("aaaa(qqq, \"bbbb\"\n" + " \"cccc\");", + NoBreak); + verifyFormat("aaaa(qqq,\n" + " \"bbbb\"\n" + " \"cccc\");", + Break); + + // Don't break if there is no column gain. + verifyFormat("f(\"aaaa\"\n" + " \"bbbb\");", + Break); + + // Treat literals with escaped newlines like multi-line string literals. EXPECT_EQ("x = \"a\\\n" "b\\\n" "c\";", |

