diff options
author | Francois Ferrand <thetypz@gmail.com> | 2017-05-22 14:47:17 +0000 |
---|---|---|
committer | Francois Ferrand <thetypz@gmail.com> | 2017-05-22 14:47:17 +0000 |
commit | a881be87ca7eb5f3806bb7e7daa0a0055eff7418 (patch) | |
tree | 6fe530a1867dc7bd9fdb9e80efd4bb22a7bdfda4 /clang/unittests/Format/FormatTestComments.cpp | |
parent | d65b3e4212588224f49a8be2ea2f0aac180dfc94 (diff) | |
download | bcm5719-llvm-a881be87ca7eb5f3806bb7e7daa0a0055eff7418.tar.gz bcm5719-llvm-a881be87ca7eb5f3806bb7e7daa0a0055eff7418.zip |
clang-format: do not reflow bullet lists
Summary:
This patch prevents reflowing bullet lists in block comments.
It handles all lists supported by doxygen and markdown, e.g. bullet
lists starting with '-', '*', '+', as well as numbered lists starting
with -# or a number followed by a dot.
Reviewers: krasimir
Reviewed By: krasimir
Subscribers: djasper, klimek, cfe-commits
Differential Revision: https://reviews.llvm.org/D33285
llvm-svn: 303556
Diffstat (limited to 'clang/unittests/Format/FormatTestComments.cpp')
-rw-r--r-- | clang/unittests/Format/FormatTestComments.cpp | 67 |
1 files changed, 65 insertions, 2 deletions
diff --git a/clang/unittests/Format/FormatTestComments.cpp b/clang/unittests/Format/FormatTestComments.cpp index 959a61e271d..a44a6845587 100644 --- a/clang/unittests/Format/FormatTestComments.cpp +++ b/clang/unittests/Format/FormatTestComments.cpp @@ -1577,7 +1577,7 @@ TEST_F(FormatTestComments, ReflowsComments) { " *\n" " * long */", getLLVMStyleWithColumns(20))); - + // Don't reflow lines having content that is a single character. EXPECT_EQ("// long long long\n" "// long\n" @@ -1602,7 +1602,7 @@ TEST_F(FormatTestComments, ReflowsComments) { format("// long long long long\n" "// @param arg", getLLVMStyleWithColumns(20))); - + // Don't reflow lines starting with 'TODO'. EXPECT_EQ("// long long long\n" "// long\n" @@ -1671,6 +1671,69 @@ TEST_F(FormatTestComments, ReflowsComments) { "// long", getLLVMStyleWithColumns(20))); + // Don't reflow separate bullets in list + EXPECT_EQ("// - long long long\n" + "// long\n" + "// - long", + format("// - long long long long\n" + "// - long", + getLLVMStyleWithColumns(20))); + EXPECT_EQ("// * long long long\n" + "// long\n" + "// * long", + format("// * long long long long\n" + "// * long", + getLLVMStyleWithColumns(20))); + EXPECT_EQ("// + long long long\n" + "// long\n" + "// + long", + format("// + long long long long\n" + "// + long", + getLLVMStyleWithColumns(20))); + EXPECT_EQ("// 1. long long long\n" + "// long\n" + "// 2. long", + format("// 1. long long long long\n" + "// 2. long", + getLLVMStyleWithColumns(20))); + EXPECT_EQ("// -# long long long\n" + "// long\n" + "// -# long", + format("// -# long long long long\n" + "// -# long", + getLLVMStyleWithColumns(20))); + + EXPECT_EQ("// - long long long\n" + "// long long long\n" + "// - long", + format("// - long long long long\n" + "// long long\n" + "// - long", + getLLVMStyleWithColumns(20))); + EXPECT_EQ("// - long long long\n" + "// long long long\n" + "// long\n" + "// - long", + format("// - long long long long\n" + "// long long long\n" + "// - long", + getLLVMStyleWithColumns(20))); + + // Large number (>2 digits) are not list items + EXPECT_EQ("// long long long\n" + "// long 1024. long.", + format("// long long long long\n" + "// 1024. long.", + getLLVMStyleWithColumns(20))); + + // Do not break before number, to avoid introducing a non-reflowable doxygen + // list item. + EXPECT_EQ("// long long\n" + "// long 10. long.", + format("// long long long 10.\n" + "// long.", + getLLVMStyleWithColumns(20))); + // Don't break or reflow after implicit string literals. verifyFormat("#include <t> // l l l\n" " // l", |