aboutsummaryrefslogtreecommitdiff
path: root/test/functional/treesitter/parser_spec.lua
diff options
context:
space:
mode:
authorLewis Russell <lewis6991@gmail.com>2023-03-03 09:44:02 +0000
committerGitHub <noreply@github.com>2023-03-03 09:44:02 +0000
commit6d4f48182131c36d57589eefd4cefe3c70256d04 (patch)
tree70dcc65f33ea46d15c7f0d728cfdec074aa7d43a /test/functional/treesitter/parser_spec.lua
parent89cccea167ab8d3db6601a410dcbd33eb3824947 (diff)
downloadrneovim-6d4f48182131c36d57589eefd4cefe3c70256d04.tar.gz
rneovim-6d4f48182131c36d57589eefd4cefe3c70256d04.tar.bz2
rneovim-6d4f48182131c36d57589eefd4cefe3c70256d04.zip
fix(treesitter): disallow empty filetypes
Fixes #22473
Diffstat (limited to 'test/functional/treesitter/parser_spec.lua')
-rw-r--r--test/functional/treesitter/parser_spec.lua14
1 files changed, 13 insertions, 1 deletions
diff --git a/test/functional/treesitter/parser_spec.lua b/test/functional/treesitter/parser_spec.lua
index fd9822d1c0..27f2e81ab2 100644
--- a/test/functional/treesitter/parser_spec.lua
+++ b/test/functional/treesitter/parser_spec.lua
@@ -4,6 +4,7 @@ local clear = helpers.clear
local eq = helpers.eq
local insert = helpers.insert
local exec_lua = helpers.exec_lua
+local pcall_err = helpers.pcall_err
local feed = helpers.feed
local is_os = helpers.is_os
local skip = helpers.skip
@@ -124,6 +125,16 @@ void ui_refresh(void)
}, res)
end)
+ it('does not get parser for empty filetype', function()
+ insert(test_text);
+
+ eq(".../language.lua:0: '' is not a valid filetype",
+ pcall_err(exec_lua, 'vim.treesitter.get_parser(0)'))
+
+ -- Must provide language for buffers with an empty filetype
+ exec_lua("vim.treesitter.get_parser(0, 'c')")
+ end)
+
it('allows to get a child by field', function()
insert(test_text);
@@ -874,9 +885,10 @@ int x = INT_MAX;
it("can fold via foldexpr", function()
insert(test_text)
- exec_lua([[vim.treesitter.get_parser(0, "c")]])
local levels = exec_lua([[
+ vim.opt.filetype = 'c'
+ vim.treesitter.get_parser(0, "c")
local res = {}
for i = 1, vim.api.nvim_buf_line_count(0) do
res[i] = vim.treesitter.foldexpr(i)