aboutsummaryrefslogtreecommitdiffstats
path: root/tests/indent/cpp_spec.lua
diff options
context:
space:
mode:
authorStephan Seitz <stephan.seitz@fau.de>2021-11-20 15:14:56 +0100
committerStephan Seitz <stephan.seitz@fau.de>2021-11-24 17:29:55 +0100
commitc7634f16dee010d092cad867959a51962406fc62 (patch)
tree9e4747a585df28ff7239a85b099c22bddedb010b /tests/indent/cpp_spec.lua
parentUpdate run_tests to be more scalable with more test folders added (diff)
downloadnvim-treesitter-c7634f16dee010d092cad867959a51962406fc62.tar
nvim-treesitter-c7634f16dee010d092cad867959a51962406fc62.tar.gz
nvim-treesitter-c7634f16dee010d092cad867959a51962406fc62.tar.bz2
nvim-treesitter-c7634f16dee010d092cad867959a51962406fc62.tar.lz
nvim-treesitter-c7634f16dee010d092cad867959a51962406fc62.tar.xz
nvim-treesitter-c7634f16dee010d092cad867959a51962406fc62.tar.zst
nvim-treesitter-c7634f16dee010d092cad867959a51962406fc62.zip
Mark failing indent tests to add them to CI
Expected failures should be monitored so that we don't have regressions and also remove failure marks when they are resolved.
Diffstat (limited to 'tests/indent/cpp_spec.lua')
-rw-r--r--tests/indent/cpp_spec.lua28
1 files changed, 23 insertions, 5 deletions
diff --git a/tests/indent/cpp_spec.lua b/tests/indent/cpp_spec.lua
index ad5034156..5c08a63ec 100644
--- a/tests/indent/cpp_spec.lua
+++ b/tests/indent/cpp_spec.lua
@@ -1,4 +1,5 @@
local Runner = require("tests.indent.common").Runner
+local XFAIL = require("tests.indent.common").XFAIL
-- will use both c/ and cpp/
local run = Runner:new(it, "tests/indent", {
@@ -11,11 +12,28 @@ local run = Runner:new(it, "tests/indent", {
describe("indent C++:", function()
describe("whole file:", function()
- run:whole_file { "c/", "cpp/" }
+ run:whole_file({ "c/", "cpp/" }, {
+ expected_failures = {
+ -- C
+ "c/ternary.c",
+ "c/string.c",
+ "c/preproc_func.c",
+ "c/preproc_cond.c",
+ "c/no_braces.c",
+ "c/label.c",
+ "c/func.c",
+ "c/expr.c",
+ "c/comment.c",
+ "c/array.c",
+ -- C++
+ "cpp/access.cpp",
+ "cpp/stream.cpp",
+ },
+ })
end)
describe("new line:", function()
- run:new_line("cpp/access.cpp", { on_line = 3, text = "protected:", indent = 0 })
+ run:new_line("cpp/access.cpp", { on_line = 3, text = "protected:", indent = 0 }, "expected failure", XFAIL)
run:new_line("cpp/class.cpp", { on_line = 2, text = "using T = int;", indent = 4 })
run:new_line("cpp/stream.cpp", { on_line = 5, text = "<< x + 3", indent = 8 })
@@ -25,17 +43,17 @@ describe("indent C++:", function()
run:new_line("c/cond.c", { on_line = 8, text = "x++;", indent = 8 })
run:new_line("c/expr.c", { on_line = 10, text = "2 *", indent = 8 })
run:new_line("c/func.c", { on_line = 17, text = "int z,", indent = 4 })
- run:new_line("c/label.c", { on_line = 3, text = "normal:", indent = 0 })
+ run:new_line("c/label.c", { on_line = 3, text = "normal:", indent = 0 }, "expected failure", XFAIL)
run:new_line("c/loop.c", { on_line = 3, text = "x++;", indent = 8 })
run:new_line("c/preproc_cond.c", { on_line = 5, text = "x++;", indent = 4 })
run:new_line("c/preproc_func.c", { on_line = 3, text = "x++; \\", indent = 8 })
- run:new_line("c/string.c", { on_line = 1, text = "brave new \\", indent = 0 })
+ run:new_line("c/string.c", { on_line = 1, text = "brave new \\", indent = 0 }, "expected failure", XFAIL)
run:new_line("c/string.c", { on_line = 4, text = '"brave new "', indent = 4 })
run:new_line("c/struct.c", { on_line = 4, text = "int y;", indent = 8 })
run:new_line("c/switch.c", { on_line = 3, text = "x++;", indent = 12 })
run:new_line("c/ternary.c", { on_line = 4, text = ": (x == 0) : 0", indent = 8 })
-- the line after inserted one will be left with wrong indent but we only care about the inserted one
- run:new_line("c/no_braces.c", { on_line = 4, text = "x++;", indent = 8 })
+ run:new_line("c/no_braces.c", { on_line = 4, text = "x++;", indent = 8 }, "expected failure", XFAIL)
run:new_line("c/no_braces.c", { on_line = 7, text = "x++;", indent = 8 })
run:new_line("c/no_braces.c", { on_line = 10, text = "x++;", indent = 8 })
end)