diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-03-16 14:15:45 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-03-16 14:15:45 +0000 |
commit | cd3c7908c2ca750b27d330b4d257edc6818c4a5d (patch) | |
tree | 194d7b0e539d014393564a256bec571e18d6533a /internal/lsp/fuzzy/symbol_test.go | |
parent | 3225eca48f7ce16eb31b2dd5a170806c1214a49e (diff) | |
parent | 09c5a32afc5b66f28f166a68afe1fc71afbf9b73 (diff) | |
download | golang-x-tools-build-tools-release.tar.gz |
Snap for 9757917 from 09c5a32afc5b66f28f166a68afe1fc71afbf9b73 to build-tools-releasebuild-tools-release
Change-Id: If48e809642d94de846f47e34b88e446095e21aa5
Diffstat (limited to 'internal/lsp/fuzzy/symbol_test.go')
-rw-r--r-- | internal/lsp/fuzzy/symbol_test.go | 79 |
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) - } - } -} |