diff options
author | zeertzjq <zeertzjq@outlook.com> | 2023-12-01 13:56:04 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-01 13:56:04 +0800 |
commit | 130cb4815a5c6625a938b1e93a7d60d7a38ad8dd (patch) | |
tree | 8382bec57ea18aefa6a3731b4535d7ff4e96a206 /test/functional/api/vim_spec.lua | |
parent | 0bbe8e7fc257bd06a857bfc762c2b1e8e84463e1 (diff) | |
download | rneovim-130cb4815a5c6625a938b1e93a7d60d7a38ad8dd.tar.gz rneovim-130cb4815a5c6625a938b1e93a7d60d7a38ad8dd.tar.bz2 rneovim-130cb4815a5c6625a938b1e93a7d60d7a38ad8dd.zip |
fix(api): use a conditional stack for nvim_cmd (#26341)
Diffstat (limited to 'test/functional/api/vim_spec.lua')
-rw-r--r-- | test/functional/api/vim_spec.lua | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/functional/api/vim_spec.lua b/test/functional/api/vim_spec.lua index 8bbadda9b0..7287666190 100644 --- a/test/functional/api/vim_spec.lua +++ b/test/functional/api/vim_spec.lua @@ -4547,5 +4547,24 @@ describe('API', function() ok(luv.now() - start <= 300) end) end) + it(':call with unknown function does not crash #26289', function() + eq('Vim:E117: Unknown function: UnknownFunc', + pcall_err(meths.cmd, {cmd = 'call', args = {'UnknownFunc()'}}, {})) + end) + it(':throw does not crash #24556', function() + eq('42', pcall_err(meths.cmd, {cmd = 'throw', args = {'42'}}, {})) + end) + it('can use :return #24556', function() + exec([[ + func Foo() + let g:pos = 'before' + call nvim_cmd({'cmd': 'return', 'args': ['[1, 2, 3]']}, {}) + let g:pos = 'after' + endfunc + let g:result = Foo() + ]]) + eq('before', meths.get_var('pos')) + eq({1, 2, 3}, meths.get_var('result')) + end) end) end) |