summaryrefslogtreecommitdiffstats
path: root/clang/unittests/Format/FormatTestProto.cpp
diff options
context:
space:
mode:
authorKrasimir Georgiev <krasimir@google.com>2017-06-29 13:30:41 +0000
committerKrasimir Georgiev <krasimir@google.com>2017-06-29 13:30:41 +0000
commitfeeba61006e25b5bb2b7ad8a00d1fc087ca0c7d0 (patch)
tree1d6eee54fd0c68f5b14e58f031cb43ffaa47f495 /clang/unittests/Format/FormatTestProto.cpp
parentfe09f506b689b17693d2f3568301dc2e94d93bf3 (diff)
downloadbcm5719-llvm-feeba61006e25b5bb2b7ad8a00d1fc087ca0c7d0.tar.gz
bcm5719-llvm-feeba61006e25b5bb2b7ad8a00d1fc087ca0c7d0.zip
[clang-format] Fix parsing of msg{field}-style proto options
Summary: This patch makes the `{` in `msg_field{field: OK}` in a proto option scope be treated as an assignment operator. Previosly the added test case was formatted as: ``` option (MyProto.options) = { field_a: OK field_b{field_c: OK} field_d: OKOKOK field_e: OK } ``` Reviewers: djasper Reviewed By: djasper Subscribers: klimek, cfe-commits Differential Revision: https://reviews.llvm.org/D34749 llvm-svn: 306672
Diffstat (limited to 'clang/unittests/Format/FormatTestProto.cpp')
-rw-r--r--clang/unittests/Format/FormatTestProto.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/clang/unittests/Format/FormatTestProto.cpp b/clang/unittests/Format/FormatTestProto.cpp
index 0b052bd4c64..2e3b9311d12 100644
--- a/clang/unittests/Format/FormatTestProto.cpp
+++ b/clang/unittests/Format/FormatTestProto.cpp
@@ -201,6 +201,12 @@ TEST_F(FormatTestProto, FormatsOptions) {
" field_c: \"OK\"\n"
" msg_field{field_d: 123}\n"
"};");
+ verifyFormat("option (MyProto.options) = {\n"
+ " field_a: OK\n"
+ " field_b{field_c: OK}\n"
+ " field_d: OKOKOK\n"
+ " field_e: OK\n"
+ "}");
// Support syntax with <> instead of {}.
verifyFormat("option (MyProto.options) = {\n"
@@ -209,6 +215,13 @@ TEST_F(FormatTestProto, FormatsOptions) {
"};");
verifyFormat("option (MyProto.options) = {\n"
+ " field_a: OK\n"
+ " field_b<field_c: OK>\n"
+ " field_d: OKOKOK\n"
+ " field_e: OK\n"
+ "}");
+
+ verifyFormat("option (MyProto.options) = {\n"
" msg_field: <>\n"
" field_c: \"OK\",\n"
" msg_field: <field_d: 123>\n"
OpenPOWER on IntegriCloud