diff options
author | Christian Clason <c.clason@uni-graz.at> | 2024-09-15 14:19:08 +0200 |
---|---|---|
committer | Christian Clason <c.clason@uni-graz.at> | 2024-09-29 15:27:16 +0200 |
commit | 99e0facf3a001608287ec6db69b01c77443c7b9d (patch) | |
tree | 2416eb7ab7dbac974fa095536add9fe18dd0a25c /test/functional/treesitter/language_spec.lua | |
parent | 041d98fe8d892a81ed659c32be5360d4f80e7d18 (diff) | |
download | rneovim-99e0facf3a001608287ec6db69b01c77443c7b9d.tar.gz rneovim-99e0facf3a001608287ec6db69b01c77443c7b9d.tar.bz2 rneovim-99e0facf3a001608287ec6db69b01c77443c7b9d.zip |
feat(treesitter)!: use return values in `language.add()`
Problem: No clear way to check whether parsers are available for a given
language.
Solution: Make `language.add()` return `true` if a parser was
successfully added and `nil` otherwise. Use explicit `assert` instead of
relying on thrown errors.
Diffstat (limited to 'test/functional/treesitter/language_spec.lua')
-rw-r--r-- | test/functional/treesitter/language_spec.lua | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/test/functional/treesitter/language_spec.lua b/test/functional/treesitter/language_spec.lua index 3947ab23b2..e1e34fcecc 100644 --- a/test/functional/treesitter/language_spec.lua +++ b/test/functional/treesitter/language_spec.lua @@ -31,29 +31,21 @@ describe('treesitter language API', function() ) ) - eq(false, exec_lua("return pcall(vim.treesitter.language.add, 'borklang')")) + eq(NIL, exec_lua("return vim.treesitter.language.add('borklang')")) eq( false, exec_lua("return pcall(vim.treesitter.language.add, 'borklang', { path = 'borkbork.so' })") ) - eq( - ".../language.lua:0: no parser for 'borklang' language, see :help treesitter-parsers", - pcall_err(exec_lua, "parser = vim.treesitter.language.inspect('borklang')") - ) - matches( 'Failed to load parser: uv_dlsym: .+', pcall_err(exec_lua, 'vim.treesitter.language.add("c", { symbol_name = "borklang" })') ) end) - it('shows error for invalid language name', function() - eq( - ".../language.lua:0: '/foo/' is not a valid language name", - pcall_err(exec_lua, 'vim.treesitter.language.add("/foo/")') - ) + it('does not load parser for invalid language name', function() + eq(NIL, exec_lua('vim.treesitter.language.add("/foo/")')) end) it('inspects language', function() |