mirror of
https://github.com/neovim/neovim.git
synced 2025-09-07 11:58:17 +00:00
refactor(lsp): simplify client tracking
- Remove: - uninitialized_clients - active_clients - all_buffer_active_clients - Add: - all_clients - Use `lsp.get_clients()` to get buffer clients.
This commit is contained in:

committed by
Lewis Russell

parent
7e38630874
commit
00e71d3da3
@@ -282,8 +282,7 @@ describe('LSP', function()
|
||||
local client --- @type vim.lsp.Client
|
||||
test_rpc_server {
|
||||
test_name = 'basic_finish',
|
||||
on_init = function(_client)
|
||||
client = _client
|
||||
on_setup = function()
|
||||
exec_lua [[
|
||||
BUFFER = vim.api.nvim_create_buf(false, true)
|
||||
]]
|
||||
@@ -292,6 +291,9 @@ describe('LSP', function()
|
||||
exec_lua [[
|
||||
vim.api.nvim_command(BUFFER.."bwipeout")
|
||||
]]
|
||||
end,
|
||||
on_init = function(_client)
|
||||
client = _client
|
||||
client.notify('finish')
|
||||
end,
|
||||
on_exit = function(code, signal)
|
||||
@@ -806,14 +808,12 @@ describe('LSP', function()
|
||||
BUFFER = vim.api.nvim_get_current_buf()
|
||||
lsp.buf_attach_client(BUFFER, TEST_RPC_CLIENT_ID)
|
||||
vim.lsp.handlers['textDocument/typeDefinition'] = function() end
|
||||
vim.cmd(BUFFER.."bwipeout")
|
||||
]=])
|
||||
end,
|
||||
on_init = function(client)
|
||||
client.stop()
|
||||
exec_lua('vim.lsp.buf.type_definition()')
|
||||
exec_lua [[
|
||||
vim.api.nvim_command(BUFFER.."bwipeout")
|
||||
]]
|
||||
end,
|
||||
on_exit = function(code, signal)
|
||||
eq(0, code, 'exit code')
|
||||
@@ -1058,21 +1058,21 @@ describe('LSP', function()
|
||||
local client --- @type vim.lsp.Client
|
||||
test_rpc_server {
|
||||
test_name = 'basic_finish',
|
||||
on_init = function(_client)
|
||||
client = _client
|
||||
on_setup = function()
|
||||
exec_lua [[
|
||||
BUFFER = vim.api.nvim_create_buf(false, true)
|
||||
vim.api.nvim_buf_set_lines(BUFFER, 0, -1, false, {
|
||||
"testing";
|
||||
"123";
|
||||
})
|
||||
assert(TEST_RPC_CLIENT_ID == 1)
|
||||
assert(lsp.buf_attach_client(BUFFER, TEST_RPC_CLIENT_ID))
|
||||
assert(lsp.buf_is_attached(BUFFER, TEST_RPC_CLIENT_ID))
|
||||
vim.cmd(BUFFER.."bwipeout")
|
||||
]]
|
||||
eq(1, exec_lua('return TEST_RPC_CLIENT_ID'))
|
||||
eq(true, exec_lua('return lsp.buf_attach_client(BUFFER, TEST_RPC_CLIENT_ID)'))
|
||||
eq(true, exec_lua('return lsp.buf_is_attached(BUFFER, TEST_RPC_CLIENT_ID)'))
|
||||
exec_lua [[
|
||||
vim.api.nvim_command(BUFFER.."bwipeout")
|
||||
]]
|
||||
end,
|
||||
on_init = function(_client)
|
||||
client = _client
|
||||
local full_kind = exec_lua("return require'vim.lsp.protocol'.TextDocumentSyncKind.Full")
|
||||
eq(full_kind, client.server_capabilities().textDocumentSync.change)
|
||||
eq(true, client.server_capabilities().textDocumentSync.openClose)
|
||||
|
Reference in New Issue
Block a user