repositories / dotfiles
dotfiles
bugabingas dorkfiles
owned by admin
neovim/tests/std/puk_spec.lua
Rawdescribe('std.puk', function()
local original_v
local original_packadd
before_each(function()
original_v = vim.v
original_packadd = vim.cmd.packadd
package.loaded['std.puk'] = nil
package.loaded['test-puk-plugin'] = nil
package.preload['test-puk-plugin'] = function() return {} end
end)
after_each(function()
vim.v = original_v
vim.cmd.packadd = original_packadd
package.loaded['std.puk'] = nil
package.loaded['test-puk-plugin'] = nil
package.preload['test-puk-plugin'] = nil
end)
local function packadd_options(did_init)
local options
vim.v = { vim_did_init = did_init }
vim.cmd.packadd = function(value) options = value end
require('std.puk')('test-puk-plugin')
return options
end
it('defers plugin scripts while init is running', function()
assert.is_true(packadd_options(0).bang)
end)
it('loads plugin scripts after init has finished', function()
assert.is_false(packadd_options(1).bang)
end)
end)