refactor(treesitter)!: get_parser return nil on error #37276

This commit is contained in:
nikolightsaber
2026-03-13 20:57:36 +01:00
committed by GitHub
parent 8499af1119
commit fd1e019e90
13 changed files with 35 additions and 49 deletions

View File

@@ -7,7 +7,6 @@ local dedent = t.dedent
local eq = t.eq
local insert = n.insert
local exec_lua = n.exec_lua
local pcall_err = t.pcall_err
local feed = n.feed
local run_query = ts_t.run_query
local assert_alive = n.assert_alive
@@ -382,10 +381,11 @@ describe('treesitter parser API', function()
it('does not get parser for empty filetype', function()
insert(test_text)
eq(
'.../treesitter.lua:0: Parser not found for buffer 1: language could not be determined',
pcall_err(exec_lua, 'vim.treesitter.get_parser(0)')
)
local parser, error = exec_lua(function()
return vim.treesitter.get_parser(0)
end)
eq(vim.NIL, parser)
eq('Parser not found for buffer 1: language could not be determined', error)
-- Must provide language for buffers with an empty filetype
exec_lua("vim.treesitter.get_parser(0, 'c')")