diff options
author | Björn Linse <bjorn.linse@gmail.com> | 2020-09-09 10:37:42 +0200 |
---|---|---|
committer | Björn Linse <bjorn.linse@gmail.com> | 2020-09-13 09:11:38 +0200 |
commit | ead2fcf4ee32a1d10fa35fab1a2231991190e07a (patch) | |
tree | 2971a5f21aca244c8f9283925e3b743d99d8421d /test/functional/lua/vim_spec.lua | |
parent | 542022aae4ed8d1c0352042858f06da1ee077bf8 (diff) | |
download | rneovim-ead2fcf4ee32a1d10fa35fab1a2231991190e07a.tar.gz rneovim-ead2fcf4ee32a1d10fa35fab1a2231991190e07a.tar.bz2 rneovim-ead2fcf4ee32a1d10fa35fab1a2231991190e07a.zip |
api: add nvim_buf_call to call function with curbuf changed to buffer
Diffstat (limited to 'test/functional/lua/vim_spec.lua')
-rw-r--r-- | test/functional/lua/vim_spec.lua | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/functional/lua/vim_spec.lua b/test/functional/lua/vim_spec.lua index a9e8ca9686..61447f1152 100644 --- a/test/functional/lua/vim_spec.lua +++ b/test/functional/lua/vim_spec.lua @@ -1330,4 +1330,29 @@ describe('lua stdlib', function() eq(false, pcall_result) end) end) + + describe('vim.api.nvim_buf_call', function() + it('can access buf options', function() + local buf1 = meths.get_current_buf() + local buf2 = exec_lua [[ + buf2 = vim.api.nvim_create_buf(false, true) + return buf2 + ]] + + eq(false, meths.buf_get_option(buf1, 'autoindent')) + eq(false, meths.buf_get_option(buf2, 'autoindent')) + + local val = exec_lua [[ + return vim.api.nvim_buf_call(buf2, function() + vim.cmd "set autoindent" + return vim.api.nvim_get_current_buf() + end) + ]] + + eq(false, meths.buf_get_option(buf1, 'autoindent')) + eq(true, meths.buf_get_option(buf2, 'autoindent')) + eq(buf1, meths.get_current_buf()) + eq(buf2, val) + end) + end) end) |