From 57f85609657c2dc5f934c0146f99cf811b88298e Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Sat, 6 Apr 2024 10:58:24 -0400 Subject: [PATCH] internal/lsp: fix TestCompatibleCodeActions --- internal/lsp/utils.go | 2 +- internal/lsp/utils_test.go | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/internal/lsp/utils.go b/internal/lsp/utils.go index 933376b..d64e51d 100644 --- a/internal/lsp/utils.go +++ b/internal/lsp/utils.go @@ -35,7 +35,7 @@ func CompatibleCodeActions(cap *protocol.ServerCapabilities, kinds []protocol.Co log.Printf("CompatibleCodeActions: unexpected CodeActionProvider type %T", ap) case bool: if ap { - allowed = kinds + return kinds } return nil case protocol.CodeActionOptions: diff --git a/internal/lsp/utils_test.go b/internal/lsp/utils_test.go index b39d65e..daf1a14 100644 --- a/internal/lsp/utils_test.go +++ b/internal/lsp/utils_test.go @@ -63,6 +63,19 @@ func TestCompatibleCodeActions(t *testing.T) { []protocol.CodeActionKind{protocol.SourceOrganizeImports}, []protocol.CodeActionKind{protocol.SourceOrganizeImports}, }, + { + "OneFoundMap", + protocol.ServerCapabilities{ + CodeActionProvider: map[string]any{ + "codeActionKinds": []any{ + "quickfix", + "source.organizeImports", + }, + }, + }, + []protocol.CodeActionKind{protocol.SourceOrganizeImports}, + []protocol.CodeActionKind{protocol.SourceOrganizeImports}, + }, } { t.Run(tc.name, func(t *testing.T) { got := CompatibleCodeActions(&tc.cap, tc.kinds)