aboutsummaryrefslogtreecommitdiff
path: root/test/functional/plugin/lsp/diagnostic_spec.lua
diff options
context:
space:
mode:
authorMathias Fussenegger <f.mathias@zignar.net>2024-08-02 10:36:17 +0200
committerMathias Fußenegger <mfussenegger@users.noreply.github.com>2024-08-02 11:20:37 +0200
commit5de2ae2bced9732904801b37eb46c4b8e6484b81 (patch)
tree84f76bfe5b387fd5782df0690abedd4edeab1227 /test/functional/plugin/lsp/diagnostic_spec.lua
parent2a3561819e0e80150986779cee87659b7c92d0c1 (diff)
downloadrneovim-5de2ae2bced9732904801b37eb46c4b8e6484b81.tar.gz
rneovim-5de2ae2bced9732904801b37eb46c4b8e6484b81.tar.bz2
rneovim-5de2ae2bced9732904801b37eb46c4b8e6484b81.zip
refactor(lsp): add test case for default diagnostic severity
See https://github.com/microsoft/language-server-protocol/pull/1978 If the severity is not specified by the server, error should be used. This was already the case because it matches the vim.diagnostic default. This only adds a test case for it.
Diffstat (limited to 'test/functional/plugin/lsp/diagnostic_spec.lua')
-rw-r--r--test/functional/plugin/lsp/diagnostic_spec.lua28
1 files changed, 28 insertions, 0 deletions
diff --git a/test/functional/plugin/lsp/diagnostic_spec.lua b/test/functional/plugin/lsp/diagnostic_spec.lua
index 779c4641b9..76b1808883 100644
--- a/test/functional/plugin/lsp/diagnostic_spec.lua
+++ b/test/functional/plugin/lsp/diagnostic_spec.lua
@@ -317,6 +317,34 @@ describe('vim.lsp.diagnostic', function()
eq('Pull Diagnostic', diags[1].message)
end)
+ it('severity defaults to error if missing', function()
+ ---@type vim.Diagnostic[]
+ local diagnostics = exec_lua([[
+ vim.lsp.diagnostic.on_diagnostic(nil,
+ {
+ kind = 'full',
+ items = {
+ {
+ range = make_range(4, 4, 4, 4),
+ message = "bad!",
+ }
+ }
+ },
+ {
+ params = {
+ textDocument = { uri = fake_uri },
+ },
+ uri = fake_uri,
+ client_id = client_id,
+ },
+ {}
+ )
+ return vim.diagnostic.get(diagnostic_bufnr)
+ ]])
+ eq(1, #diagnostics)
+ eq(1, diagnostics[1].severity)
+ end)
+
it('allows configuring the virtual text via vim.lsp.with', function()
local expected_spacing = 10
local extmarks = exec_lua(