mirror of
https://github.com/zoriya/lz.n.git
synced 2026-06-03 19:11:10 +00:00
fix(event): broken DeferredUIEnter event
This commit is contained in:
@@ -12,14 +12,24 @@ local loader = require("lz.n.loader")
|
||||
---@field group number
|
||||
---@field parse fun(spec: lz.n.EventSpec): lz.n.Event
|
||||
|
||||
local lz_n_events = {
|
||||
DeferredUIEnter = { id = "DeferredUIEnter", event = "User", pattern = "DeferredUIEnter" },
|
||||
}
|
||||
|
||||
lz_n_events["User DeferredUIEnter"] = lz_n_events.DeferredUIEnter
|
||||
|
||||
---@type lz.n.EventHandler
|
||||
local M = {
|
||||
pending = {},
|
||||
events = {},
|
||||
group = vim.api.nvim_create_augroup("lz_n_handler_event", { clear = true }),
|
||||
type = "event",
|
||||
---@param spec lz.n.EventSpec
|
||||
parse = function(spec)
|
||||
local ret
|
||||
local ret = lz_n_events[spec]
|
||||
if ret then
|
||||
return ret
|
||||
end
|
||||
if type(spec) == "string" then
|
||||
local event, pattern = spec:match("^(%w+)%s+(.*)$")
|
||||
event = event or spec
|
||||
|
||||
@@ -104,4 +104,16 @@ describe("handlers.event", function()
|
||||
assert.True(triggered)
|
||||
loader._load = orig_load
|
||||
end)
|
||||
it("DeferredUIEnter", function()
|
||||
---@type lz.n.Plugin
|
||||
local plugin = {
|
||||
name = "bla",
|
||||
event = { event.parse("DeferredUIEnter") },
|
||||
}
|
||||
local spy_load = spy.on(loader, "_load")
|
||||
state.plugins[plugin.name] = plugin
|
||||
event.add(plugin)
|
||||
vim.api.nvim_exec_autocmds("User", { pattern = "DeferredUIEnter", modeline = false })
|
||||
assert.spy(spy_load).called(1)
|
||||
end)
|
||||
end)
|
||||
|
||||
Reference in New Issue
Block a user