aboutsummaryrefslogtreecommitdiff
path: root/internal/lsp/fuzzy/symbol_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/lsp/fuzzy/symbol_test.go')
-rw-r--r--internal/lsp/fuzzy/symbol_test.go79
1 files changed, 0 insertions, 79 deletions
diff --git a/internal/lsp/fuzzy/symbol_test.go b/internal/lsp/fuzzy/symbol_test.go
deleted file mode 100644
index cb28160de..000000000
--- a/internal/lsp/fuzzy/symbol_test.go
+++ /dev/null
@@ -1,79 +0,0 @@
-// Copyright 2021 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package fuzzy_test
-
-import (
- "testing"
-
- . "golang.org/x/tools/internal/lsp/fuzzy"
-)
-
-func TestSymbolMatchIndex(t *testing.T) {
- tests := []struct {
- pattern, input string
- want int
- }{
- {"test", "foo.TestFoo", 4},
- {"test", "test", 0},
- {"test", "Test", 0},
- {"test", "est", -1},
- {"t", "shortest", 7},
- {"", "foo", -1},
- {"", string([]rune{0}), -1}, // verify that we don't default to an empty pattern.
- {"anything", "", -1},
- }
-
- for _, test := range tests {
- matcher := NewSymbolMatcher(test.pattern)
- if got, _ := matcher.Match([]string{test.input}); got != test.want {
- t.Errorf("NewSymbolMatcher(%q).Match(%q) = %v, _, want %v, _", test.pattern, test.input, got, test.want)
- }
- }
-}
-
-func TestSymbolRanking(t *testing.T) {
- matcher := NewSymbolMatcher("test")
-
- // symbols to match, in ascending order of ranking.
- symbols := []string{
- "this.is.better.than.most",
- "test.foo.bar",
- "atest",
- "thebest",
- "test.foo",
- "test.foo",
- "tTest",
- "testage",
- "foo.test",
- "test",
- }
- prev := 0.0
- for _, sym := range symbols {
- _, score := matcher.Match([]string{sym})
- t.Logf("Match(%q) = %v", sym, score)
- if score < prev {
- t.Errorf("Match(%q) = _, %v, want > %v", sym, score, prev)
- }
- prev = score
- }
-}
-
-func TestChunkedMatch(t *testing.T) {
- matcher := NewSymbolMatcher("test")
-
- chunked := [][]string{
- {"test"},
- {"", "test"},
- {"test", ""},
- {"te", "st"},
- }
-
- for _, chunks := range chunked {
- offset, score := matcher.Match(chunks)
- if offset != 0 || score != 1.0 {
- t.Errorf("Match(%v) = %v, %v, want 0, 1.0", chunks, offset, score)
- }
- }
-}