diff options
author | zeertzjq <zeertzjq@outlook.com> | 2024-04-16 11:59:55 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-16 11:59:55 +0800 |
commit | 47ba96a6b3bf22097134b319ed97ec840b05eaa7 (patch) | |
tree | 5648a7d06e9bc73f5f11e2cdd52e19f4fa04915f /test/functional/api/autocmd_spec.lua | |
parent | 60fb8a6a8bd94132a5dbf3a4520ba0db7ae5a9e3 (diff) | |
download | rneovim-47ba96a6b3bf22097134b319ed97ec840b05eaa7.tar.gz rneovim-47ba96a6b3bf22097134b319ed97ec840b05eaa7.tar.bz2 rneovim-47ba96a6b3bf22097134b319ed97ec840b05eaa7.zip |
test: getting autocmd Lua callback in Vimscript (#28367)
Also remove unnecessary variable in API converter.
Diffstat (limited to 'test/functional/api/autocmd_spec.lua')
-rw-r--r-- | test/functional/api/autocmd_spec.lua | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/test/functional/api/autocmd_spec.lua b/test/functional/api/autocmd_spec.lua index 31276c7566..e5412a8e99 100644 --- a/test/functional/api/autocmd_spec.lua +++ b/test/functional/api/autocmd_spec.lua @@ -610,15 +610,17 @@ describe('autocmd api', function() it('can retrieve a callback from an autocmd', function() local content = 'I Am A Callback' api.nvim_set_var('content', content) - - local result = exec_lua([[ + exec_lua([[ local cb = function() return vim.g.content end vim.api.nvim_create_autocmd("User", { pattern = "TestTrigger", desc = "A test autocommand with a callback", callback = cb, }) - local aus = vim.api.nvim_get_autocmds({ event = 'User', pattern = 'TestTrigger'}) + ]]) + + local result = exec_lua([[ + local aus = vim.api.nvim_get_autocmds({ event = 'User', pattern = 'TestTrigger' }) local first = aus[1] return { cb = { @@ -627,9 +629,14 @@ describe('autocmd api', function() } } ]]) + eq({ cb = { type = 'function', can_retrieve = true } }, result) - eq('function', result.cb.type) - eq(true, result.cb.can_retrieve) + -- Also test with Vimscript + source([[ + let s:aus = nvim_get_autocmds({'event': 'User', 'pattern': 'TestTrigger'}) + let g:result = s:aus[0].callback() + ]]) + eq(content, api.nvim_get_var('result')) end) it( |