diff options
author | Steven Sojka <steelsojka@gmail.com> | 2020-12-04 16:15:47 -0600 |
---|---|---|
committer | Steven Sojka <steelsojka@gmail.com> | 2020-12-04 16:15:47 -0600 |
commit | 2985c17867bec5dfdc77f1bae123b50cac533f1b (patch) | |
tree | b35d548e880b26f3a3862c98999871b77378fe17 | |
parent | 0c8d6ab536ec2e8e95c0de441e6ad1fdfccc909f (diff) | |
download | rneovim-2985c17867bec5dfdc77f1bae123b50cac533f1b.tar.gz rneovim-2985c17867bec5dfdc77f1bae123b50cac533f1b.tar.bz2 rneovim-2985c17867bec5dfdc77f1bae123b50cac533f1b.zip |
fix(treesitter): incorrect method name call
-rw-r--r-- | runtime/lua/vim/treesitter/languagetree.lua | 2 | ||||
-rw-r--r-- | test/functional/lua/treesitter_spec.lua | 21 |
2 files changed, 22 insertions, 1 deletions
diff --git a/runtime/lua/vim/treesitter/languagetree.lua b/runtime/lua/vim/treesitter/languagetree.lua index a8b62e21b9..885460c9fd 100644 --- a/runtime/lua/vim/treesitter/languagetree.lua +++ b/runtime/lua/vim/treesitter/languagetree.lua @@ -445,7 +445,7 @@ end function LanguageTree:language_for_range(range) for _, child in pairs(self._children) do if child:contains(range) then - return child:node_for_range(range) + return child:language_for_range(range) end end diff --git a/test/functional/lua/treesitter_spec.lua b/test/functional/lua/treesitter_spec.lua index 65dc1b3e03..0e823426ae 100644 --- a/test/functional/lua/treesitter_spec.lua +++ b/test/functional/lua/treesitter_spec.lua @@ -919,4 +919,25 @@ local hl_query = [[ end) end) + describe("when getting the language for a range", function() + before_each(function() + insert([[ +int x = INT_MAX; +#define VALUE 123456789 + ]]) + end) + + it("should return the correct language tree", function() + local result = exec_lua([[ + parser = vim.treesitter.get_parser(0, "c", { + queries = { c = "(preproc_def (preproc_arg) @c)"}}) + + local sub_tree = parser:language_for_range({1, 18, 1, 19}) + + return sub_tree == parser:children().c + ]]) + + eq(result, true) + end) + end) end) |