aboutsummaryrefslogtreecommitdiff
path: root/test/functional/treesitter/utils_spec.lua
diff options
context:
space:
mode:
authorJosh Rahm <joshuarahm@gmail.com>2024-11-19 22:57:13 +0000
committerJosh Rahm <joshuarahm@gmail.com>2024-11-19 22:57:13 +0000
commit9be89f131f87608f224f0ee06d199fcd09d32176 (patch)
tree11022dcfa9e08cb4ac5581b16734196128688d48 /test/functional/treesitter/utils_spec.lua
parentff7ed8f586589d620a806c3758fac4a47a8e7e15 (diff)
parent88085c2e80a7e3ac29aabb6b5420377eed99b8b6 (diff)
downloadrneovim-9be89f131f87608f224f0ee06d199fcd09d32176.tar.gz
rneovim-9be89f131f87608f224f0ee06d199fcd09d32176.tar.bz2
rneovim-9be89f131f87608f224f0ee06d199fcd09d32176.zip
Merge remote-tracking branch 'upstream/master' into mix_20240309
Diffstat (limited to 'test/functional/treesitter/utils_spec.lua')
-rw-r--r--test/functional/treesitter/utils_spec.lua30
1 files changed, 17 insertions, 13 deletions
diff --git a/test/functional/treesitter/utils_spec.lua b/test/functional/treesitter/utils_spec.lua
index bca0aca0cb..34bea349f6 100644
--- a/test/functional/treesitter/utils_spec.lua
+++ b/test/functional/treesitter/utils_spec.lua
@@ -17,26 +17,30 @@ describe('treesitter utils', function()
int x = 3;
}]])
- exec_lua([[
- parser = vim.treesitter.get_parser(0, "c")
- tree = parser:parse()[1]
- root = tree:root()
- ancestor = root:child(0)
- child = ancestor:child(0)
- ]])
-
- eq(true, exec_lua('return vim.treesitter.is_ancestor(ancestor, child)'))
- eq(false, exec_lua('return vim.treesitter.is_ancestor(child, ancestor)'))
+ exec_lua(function()
+ local parser = vim.treesitter.get_parser(0, 'c')
+ local tree = parser:parse()[1]
+ local root = tree:root()
+ _G.ancestor = assert(root:child(0))
+ _G.child = assert(_G.ancestor:named_child(1))
+ _G.child_sibling = assert(_G.ancestor:named_child(2))
+ _G.grandchild = assert(_G.child:named_child(0))
+ end)
+
+ eq(true, exec_lua('return vim.treesitter.is_ancestor(_G.ancestor, _G.child)'))
+ eq(true, exec_lua('return vim.treesitter.is_ancestor(_G.ancestor, _G.grandchild)'))
+ eq(false, exec_lua('return vim.treesitter.is_ancestor(_G.child, _G.ancestor)'))
+ eq(false, exec_lua('return vim.treesitter.is_ancestor(_G.child, _G.child_sibling)'))
end)
it('can detect if a position is contained in a node', function()
- exec_lua([[
- node = {
+ exec_lua(function()
+ _G.node = {
range = function()
return 0, 4, 0, 8
end,
}
- ]])
+ end)
eq(false, exec_lua('return vim.treesitter.is_in_node_range(node, 0, 3)'))
for i = 4, 7 do