diff options
author | Krasimir Georgiev <krasimir@google.com> | 2018-03-16 15:23:22 +0000 |
---|---|---|
committer | Krasimir Georgiev <krasimir@google.com> | 2018-03-16 15:23:22 +0000 |
commit | abbd54ce009579da4aa532b83632cc584f0b7b19 (patch) | |
tree | fbad68c068771cc6f8b7d0416b28113e1399c732 /clang/unittests/Format/FormatTestTextProto.cpp | |
parent | a9f05a9d50bb49b54ff0fbccc5e65016edd5a0da (diff) | |
download | bcm5719-llvm-abbd54ce009579da4aa532b83632cc584f0b7b19.tar.gz bcm5719-llvm-abbd54ce009579da4aa532b83632cc584f0b7b19.zip |
[clang-format] Disallow breaks before ']' in text proto extensions
Summary: This disallows patterns like `[ext.name\n]` in text protos.
Subscribers: klimek, cfe-commits
Differential Revision: https://reviews.llvm.org/D44569
llvm-svn: 327716
Diffstat (limited to 'clang/unittests/Format/FormatTestTextProto.cpp')
-rw-r--r-- | clang/unittests/Format/FormatTestTextProto.cpp | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/clang/unittests/Format/FormatTestTextProto.cpp b/clang/unittests/Format/FormatTestTextProto.cpp index 1f2f2b61236..f4e09cf9e27 100644 --- a/clang/unittests/Format/FormatTestTextProto.cpp +++ b/clang/unittests/Format/FormatTestTextProto.cpp @@ -392,10 +392,12 @@ TEST_F(FormatTestTextProto, FormatsExtensions) { " .long/longg.longlong] { key: value }"); verifyFormat("[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/\n" " bbbbbbbbbbbbbb] { key: value }"); - verifyFormat("[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n" - "] { key: value }"); - verifyFormat("[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n" - "] {\n" + // These go over the column limit intentionally, since the alternative + // [aa..a\n] is worse. + verifyFormat("[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa] {\n" + " key: value\n" + "}"); + verifyFormat("[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa] {\n" " [type.type] {\n" " keyyyyyyyyyyyyyy: valuuuuuuuuuuuuuuuuuuuuuuuuue\n" " }\n" @@ -475,5 +477,20 @@ TEST_F(FormatTestTextProto, BreaksConsecutiveStringLiterals) { " \"str2\"\n"); } +TEST_F(FormatTestTextProto, PutsMultipleEntriesInExtensionsOnNewlines) { + FormatStyle Style = getGoogleStyle(FormatStyle::LK_TextProto); + verifyFormat("pppppppppp: {\n" + " ssssss: \"http://example.com/blahblahblah\"\n" + " ppppppp: \"sssss/MMMMMMMMMMMM\"\n" + " [ns.sssss.eeeeeeeee.eeeeeeeeeeeeeee] { begin: 24 end: 252 }\n" + " [ns.sssss.eeeeeeeee.eeeeeeeeeeeeeee] {\n" + " begin: 24\n" + " end: 252\n" + " key: value\n" + " key: value\n" + " }\n" + "}", Style); +} + } // end namespace tooling } // end namespace clang |