mirror of
https://github.com/neovim/neovim.git
synced 2025-09-06 11:28:22 +00:00
Merge #15879 backports
This commit is contained in:
@@ -33,6 +33,17 @@ do
|
||||
|
||||
vim.fn.mkdir(vim.fn.stdpath('cache'), "p")
|
||||
local logfile = assert(io.open(logfilename, "a+"))
|
||||
|
||||
local log_info = vim.loop.fs_stat(logfilename)
|
||||
if log_info and log_info.size > 1e9 then
|
||||
local warn_msg = string.format(
|
||||
"LSP client log is large (%d MB): %s",
|
||||
log_info.size / (1000 * 1000),
|
||||
logfilename
|
||||
)
|
||||
vim.notify(warn_msg)
|
||||
end
|
||||
|
||||
-- Start message for logging
|
||||
logfile:write(string.format("[START][%s] LSP logging initiated\n", os.date(log_date_format)))
|
||||
for level, levelnr in pairs(log.levels) do
|
||||
|
@@ -132,38 +132,35 @@ end
|
||||
describe('LSP', function()
|
||||
before_each(function()
|
||||
clear_notrace()
|
||||
-- Run an instance of nvim on the file which contains our "scripts".
|
||||
-- Pass TEST_NAME to pick the script.
|
||||
local test_name = "basic_init"
|
||||
exec_lua([=[
|
||||
lsp = require('vim.lsp')
|
||||
local test_name, fixture_filename, logfile = ...
|
||||
function test__start_client()
|
||||
return lsp.start_client {
|
||||
cmd_env = {
|
||||
NVIM_LOG_FILE = logfile;
|
||||
};
|
||||
cmd = {
|
||||
vim.v.progpath, '-Es', '-u', 'NONE', '--headless',
|
||||
"-c", string.format("lua TEST_NAME = %q", test_name),
|
||||
"-c", "luafile "..fixture_filename;
|
||||
};
|
||||
root_dir = vim.loop.cwd();
|
||||
}
|
||||
end
|
||||
TEST_CLIENT1 = test__start_client()
|
||||
]=], test_name, fake_lsp_code, fake_lsp_logfile)
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
exec_lua("lsp._vim_exit_handler()")
|
||||
-- exec_lua("lsp.stop_all_clients(true)")
|
||||
end)
|
||||
|
||||
describe('server_name specified', function()
|
||||
before_each(function()
|
||||
-- Run an instance of nvim on the file which contains our "scripts".
|
||||
-- Pass TEST_NAME to pick the script.
|
||||
local test_name = "basic_init"
|
||||
exec_lua([=[
|
||||
lsp = require('vim.lsp')
|
||||
local test_name, fixture_filename, logfile = ...
|
||||
function test__start_client()
|
||||
return lsp.start_client {
|
||||
cmd_env = {
|
||||
NVIM_LOG_FILE = logfile;
|
||||
};
|
||||
cmd = {
|
||||
vim.v.progpath, '-Es', '-u', 'NONE', '--headless',
|
||||
"-c", string.format("lua TEST_NAME = %q", test_name),
|
||||
"-c", "luafile "..fixture_filename;
|
||||
};
|
||||
root_dir = vim.loop.cwd();
|
||||
}
|
||||
end
|
||||
TEST_CLIENT1 = test__start_client()
|
||||
]=], test_name, fake_lsp_code, fake_lsp_logfile)
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
exec_lua("lsp._vim_exit_handler()")
|
||||
-- exec_lua("lsp.stop_all_clients(true)")
|
||||
end)
|
||||
|
||||
it('start_client(), stop_client()', function()
|
||||
retry(nil, 4000, function()
|
||||
eq(1, exec_lua('return #lsp.get_active_clients()'))
|
||||
|
Reference in New Issue
Block a user