diff options
| author | Pham Huy Hoang <hoangtun0810@gmail.com> | 2023-01-10 14:04:27 +0900 |
|---|---|---|
| committer | Stephan Seitz <stephan.seitz@fau.de> | 2023-01-14 04:52:21 -0800 |
| commit | 2f5deed45628e4960fabfe28735d73a82eb59d98 (patch) | |
| tree | ec34faafb04329337a6aed57d1eb651bbeb3f4ed /tests | |
| parent | highlights(kotlin): package keyword and declaration (diff) | |
| download | nvim-treesitter-2f5deed45628e4960fabfe28735d73a82eb59d98.tar nvim-treesitter-2f5deed45628e4960fabfe28735d73a82eb59d98.tar.gz nvim-treesitter-2f5deed45628e4960fabfe28735d73a82eb59d98.tar.bz2 nvim-treesitter-2f5deed45628e4960fabfe28735d73a82eb59d98.tar.lz nvim-treesitter-2f5deed45628e4960fabfe28735d73a82eb59d98.tar.xz nvim-treesitter-2f5deed45628e4960fabfe28735d73a82eb59d98.tar.zst nvim-treesitter-2f5deed45628e4960fabfe28735d73a82eb59d98.zip | |
indents(c): Refactor indent queries
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/indent/c/if_else.c | 60 | ||||
| -rw-r--r-- | tests/indent/c/issue-4079.c | 7 | ||||
| -rw-r--r-- | tests/indent/c/issue-4117.c | 6 | ||||
| -rw-r--r-- | tests/indent/c/no_braces.c | 1 | ||||
| -rw-r--r-- | tests/indent/c_spec.lua | 32 |
5 files changed, 103 insertions, 3 deletions
diff --git a/tests/indent/c/if_else.c b/tests/indent/c/if_else.c new file mode 100644 index 000000000..0a81b3594 --- /dev/null +++ b/tests/indent/c/if_else.c @@ -0,0 +1,60 @@ +int foo(int x){ + if (x > 10) + return 10; + + if (x > 10) + return 10; + else + return 10; + + if (x > 20) + return 20; + else if (x > 15) + return 15; + else + return 10; +} + +int bar(int x){ + if (x > 20) + return 10; + else { + return 10; + } + + if (x > 20) + return 10; + else if (x > 10) { + return 10; + } +} + +int baz(int x){ + if (x > 20) + return x; + else if(x > 10) { + if(x > 10) { + if(x > 10) + return 10; + if(x > 5) { + return 5; + } + } + } + + if (x > 20) + if (x > 19) + if(x > 18) + return x; + + if (x > 20) + return x; + else if (x > 19) { + if (x > 18) + return x; + else + x++; + } + else + return x; +} diff --git a/tests/indent/c/issue-4079.c b/tests/indent/c/issue-4079.c new file mode 100644 index 000000000..fd1490c8f --- /dev/null +++ b/tests/indent/c/issue-4079.c @@ -0,0 +1,7 @@ +int main(){ + for(;;) +} + +int foo(){ + while(1) +} diff --git a/tests/indent/c/issue-4117.c b/tests/indent/c/issue-4117.c new file mode 100644 index 000000000..12e05c63d --- /dev/null +++ b/tests/indent/c/issue-4117.c @@ -0,0 +1,6 @@ +int main(){ + if(1){ + } + else { + } +} diff --git a/tests/indent/c/no_braces.c b/tests/indent/c/no_braces.c index 544ac01d0..9cc63989d 100644 --- a/tests/indent/c/no_braces.c +++ b/tests/indent/c/no_braces.c @@ -10,3 +10,4 @@ int foo(int x) { for (int i = 0; i < 3; ++i) x--; } + diff --git a/tests/indent/c_spec.lua b/tests/indent/c_spec.lua index 040ca9a23..6d5db4aab 100644 --- a/tests/indent/c_spec.lua +++ b/tests/indent/c_spec.lua @@ -38,9 +38,35 @@ describe("indent C:", function() runner:new_line("ternary.c", { on_line = 4, text = ": (x == 0) : 0", indent = 8 }) runner:new_line("issue-1568.c", { on_line = 4, text = "x++;", indent = 8 }) runner:new_line("issue-2086.c", { on_line = 3, text = "}", indent = 0 }) + runner:new_line("issue-4079.c", { on_line = 2, text = "return;", indent = 8 }) + runner:new_line("issue-4079.c", { on_line = 2, text = "{", indent = 4 }) + runner:new_line("issue-4079.c", { on_line = 6, text = "{", indent = 4 }) -- the line after inserted one will be left with wrong indent but we only care about the inserted one - runner:new_line("no_braces.c", { on_line = 4, text = "x++;", indent = 8 }) - runner:new_line("no_braces.c", { on_line = 7, text = "x++;", indent = 8 }) - runner:new_line("no_braces.c", { on_line = 10, text = "x++;", indent = 8 }) + for _, line in ipairs { 2, 4, 7, 10 } do + runner:new_line("no_braces.c", { on_line = line, text = "x++;", indent = 8 }) + end + for _, line in ipairs { 2, 5, 7, 10, 12, 14, 20, 22, 25, 27, 28, 33 } do + runner:new_line("if_else.c", { on_line = line, text = "x++;", indent = 8 }) + end + for _, line in ipairs { 3, 6, 8, 13, 15, 20, 23 } do + runner:new_line("if_else.c", { on_line = line, text = "else", indent = 4 }) + end + for _, info in ipairs { + { 36, 12 }, + { 37, 16 }, + { 38, 12 }, + { 39, 16 }, + { 41, 12 }, + { 42, 8 }, + { 45, 8 }, + { 46, 12 }, + { 47, 16 }, + { 48, 4 }, + { 52, 8 }, + { 53, 12 }, + { 54, 12 }, + } do + runner:new_line("if_else.c", { on_line = info[1], text = "x++;", indent = info[2] }) + end end) end) |
