1
Files
flake-nixinator/config/neovim/store/lazy-plugins/promise-async/spec/init.lua

55 lines
1.2 KiB
Lua

package.path = os.getenv('PWD') .. '/lua/?.lua;' .. package.path
local compat = require('promise-async.compat')
if compat.is51() then
_G.pcall = compat.pcall
_G.xpcall = compat.xpcall
end
local uv = require('luv')
local co = coroutine.create(function()
require('busted.runner')({standalone = false, output = 'spec.helpers.outputHandler'})
-- no errors for nvim
if vim then
vim.schedule(function()
vim.cmd('cq 0')
end)
end
end)
_G.co = co
local compatibility = require('busted.compatibility')
if vim then
compatibility.exit = function(code)
vim.schedule(function()
vim.cmd(('cq %d'):format(code))
end)
end
_G.arg = vim.fn.argv()
_G.print = function(...)
local argv = {...}
for i = 1, #argv do
argv[i] = tostring(argv[i])
end
table.insert(argv, '\n')
io.write(unpack(argv))
end
coroutine.resume(co)
else
local c = 0
-- https://github.com/luvit/luv/issues/599
compatibility.exit = function(code)
c = code
end
local idle = uv.new_idle()
idle:start(function()
idle:stop()
coroutine.resume(co)
end)
uv.run()
os.exit(c)
end