aboutsummaryrefslogtreecommitdiffstats
path: root/tests/indent/hcl_spec.lua
diff options
context:
space:
mode:
authorMichael Hoffmann <mhoffm@posteo.de>2022-04-23 11:17:10 +0200
committerStephan Seitz <stephan.seitz@fau.de>2022-04-24 18:57:30 +0200
commitb1e8b61a94955d747ba8ad02cd3c0dddb1bf883f (patch)
treeddebbbb900d55a78f0242325b9b0c812275dee9e /tests/indent/hcl_spec.lua
parentUpdate lockfile.json (diff)
downloadnvim-treesitter-b1e8b61a94955d747ba8ad02cd3c0dddb1bf883f.tar
nvim-treesitter-b1e8b61a94955d747ba8ad02cd3c0dddb1bf883f.tar.gz
nvim-treesitter-b1e8b61a94955d747ba8ad02cd3c0dddb1bf883f.tar.bz2
nvim-treesitter-b1e8b61a94955d747ba8ad02cd3c0dddb1bf883f.tar.lz
nvim-treesitter-b1e8b61a94955d747ba8ad02cd3c0dddb1bf883f.tar.xz
nvim-treesitter-b1e8b61a94955d747ba8ad02cd3c0dddb1bf883f.tar.zst
nvim-treesitter-b1e8b61a94955d747ba8ad02cd3c0dddb1bf883f.zip
indents(hcl): fix indentation queries
This commit adds tests for hcl indentation and fixes various bugs
Diffstat (limited to 'tests/indent/hcl_spec.lua')
-rw-r--r--tests/indent/hcl_spec.lua33
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/indent/hcl_spec.lua b/tests/indent/hcl_spec.lua
new file mode 100644
index 000000000..b97af2786
--- /dev/null
+++ b/tests/indent/hcl_spec.lua
@@ -0,0 +1,33 @@
+local Runner = require("tests.indent.common").Runner
+--local XFAIL = require("tests.indent.common").XFAIL
+
+local run = Runner:new(it, "tests/indent/hcl", {
+ tabstop = 2,
+ shiftwidth = 2,
+ expandtab = true,
+})
+
+describe("indent HCL:", function()
+ describe("whole file:", function()
+ run:whole_file(".", {
+ expected_failures = {},
+ })
+ end)
+
+ describe("new line:", function()
+ run:new_line("no-indent-after-brace.tf", { on_line = 4, text = "# Wow, no indent here please", indent = 0 })
+ run:new_line("indent-in-multiline-tuples.tf", { on_line = 4, text = "3,", indent = 4 })
+ run:new_line("indent-in-multiline-tuples.tf", { on_line = 3, text = "# as elements", indent = 4 })
+ run:new_line("indent-in-multiline-tuples.tf", { on_line = 5, text = "# as outer block", indent = 2 })
+ run:new_line("indent-in-multiline-tuples.tf", { on_line = 1, text = "# as outer block", indent = 2 })
+ run:new_line("indent-in-multiline-objects.tf", { on_line = 4, text = '3: "baz",', indent = 4 })
+ run:new_line("indent-in-multiline-objects.tf", { on_line = 3, text = "# as elements", indent = 4 })
+ run:new_line("indent-in-multiline-objects.tf", { on_line = 5, text = "# as outer block", indent = 2 })
+ run:new_line("indent-in-multiline-objects.tf", { on_line = 1, text = "# as outer block", indent = 2 })
+ run:new_line("multiple-attributes.tf", { on_line = 2, text = "a = 1", indent = 2 })
+ run:new_line("multiple-attributes.tf", { on_line = 3, text = "a = 1", indent = 2 })
+ run:new_line("multiple-attributes.tf", { on_line = 4, text = "a = 1", indent = 0 })
+ run:new_line("nested_blocks.tf", { on_line = 3, text = "a = 1", indent = 4 })
+ run:new_line("nested_blocks.tf", { on_line = 4, text = "a = 1", indent = 2 })
+ end)
+end)