aboutsummaryrefslogtreecommitdiff
path: root/test/functional/lua/highlight_spec.lua
diff options
context:
space:
mode:
Diffstat (limited to 'test/functional/lua/highlight_spec.lua')
-rw-r--r--test/functional/lua/highlight_spec.lua26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/functional/lua/highlight_spec.lua b/test/functional/lua/highlight_spec.lua
new file mode 100644
index 0000000000..853b2991e8
--- /dev/null
+++ b/test/functional/lua/highlight_spec.lua
@@ -0,0 +1,26 @@
+local helpers = require('test.functional.helpers')(after_each)
+local funcs = helpers.funcs
+local exec_lua = helpers.exec_lua
+local command = helpers.command
+local clear = helpers.clear
+
+describe('vim.highlight.on_yank', function()
+
+ before_each(function()
+ clear()
+ end)
+
+ it('does not show errors even if buffer is wiped before timeout', function()
+ command('new')
+ local bufnr = funcs.bufnr("%")
+ exec_lua[[
+ vim.highlight.on_yank({timeout = 10, on_macro = true, event = {operator = "y", regtype = "v"}})
+ vim.cmd('bwipeout!')
+ ]]
+ exec_lua[[vim.wait(10)]]
+ local pattern = [[vim/highlight.lua:%d+: Invalid buffer id: ]] .. bufnr
+ local exists = pcall(helpers.assert_log, pattern)
+ assert.is_false(exists, string.format("%q should not be in log", pattern))
+ end)
+
+end)