diff options
author | bfredl <bjorn.linse@gmail.com> | 2022-04-08 16:55:47 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-08 16:55:47 +0200 |
commit | c26d70d5817e2a53d974da0cbdde87a86576acfc (patch) | |
tree | 34ed8d5ceae42de0b03ea014e21f0dc300da25cc /test/functional/api/autocmd_spec.lua | |
parent | 56ee7c29ab30c893b2a708277d83943f1455e52a (diff) | |
parent | 30bc02c6364f384e437a6f53b057522d585492fc (diff) | |
download | rneovim-c26d70d5817e2a53d974da0cbdde87a86576acfc.tar.gz rneovim-c26d70d5817e2a53d974da0cbdde87a86576acfc.tar.bz2 rneovim-c26d70d5817e2a53d974da0cbdde87a86576acfc.zip |
Merge pull request #17786 from gpanders/autocmd-args
feat(api)!: pass args table to autocommand callbacks
Diffstat (limited to 'test/functional/api/autocmd_spec.lua')
-rw-r--r-- | test/functional/api/autocmd_spec.lua | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/test/functional/api/autocmd_spec.lua b/test/functional/api/autocmd_spec.lua index b4a9a4f01f..377b4fecf0 100644 --- a/test/functional/api/autocmd_spec.lua +++ b/test/functional/api/autocmd_spec.lua @@ -182,6 +182,54 @@ describe('autocmd api', function() meths.exec_autocmds("User", {pattern = "Test"}) eq({}, meths.get_autocmds({event = "User", pattern = "Test"})) end) + + it('receives an args table', function() + local res = exec_lua [[ + local group_id = vim.api.nvim_create_augroup("TestGroup", {}) + local autocmd_id = vim.api.nvim_create_autocmd("User", { + group = "TestGroup", + pattern = "Te*", + callback = function(args) + vim.g.autocmd_args = args + end, + }) + + return {group_id, autocmd_id} + ]] + + meths.exec_autocmds("User", {pattern = "Test pattern"}) + eq({ + id = res[2], + group = res[1], + event = "User", + match = "Test pattern", + file = "Test pattern", + buf = 1, + }, meths.get_var("autocmd_args")) + + -- Test without a group + res = exec_lua [[ + local autocmd_id = vim.api.nvim_create_autocmd("User", { + pattern = "*", + callback = function(args) + vim.g.autocmd_args = args + end, + }) + + return {autocmd_id} + ]] + + meths.exec_autocmds("User", {pattern = "some_pat"}) + eq({ + id = res[1], + group = nil, + event = "User", + match = "some_pat", + file = "some_pat", + buf = 1, + }, meths.get_var("autocmd_args")) + + end) end) describe('nvim_get_autocmds', function() |