Skip to content

Commit a2e2c86

Browse files
author
Benjamin Pasero
committed
scorer - add test for strict prefix matching
1 parent ae04039 commit a2e2c86

1 file changed

Lines changed: 25 additions & 0 deletions

File tree

src/vs/base/test/common/fuzzyScorer.test.ts

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -985,6 +985,31 @@ suite('Fuzzy Scorer', () => {
985985
}
986986
});
987987

988+
test('compareFilesByScore - prefer strict case prefix', function () {
989+
const resourceA = URI.file('app/constants/color.js');
990+
const resourceB = URI.file('app/components/model/input/Color.js');
991+
992+
let query = 'Color';
993+
994+
let res = [resourceA, resourceB].sort((r1, r2) => compareItemsByScore(r1, r2, query, true, ResourceAccessor));
995+
assert.equal(res[0], resourceB);
996+
assert.equal(res[1], resourceA);
997+
998+
res = [resourceB, resourceA].sort((r1, r2) => compareItemsByScore(r1, r2, query, true, ResourceAccessor));
999+
assert.equal(res[0], resourceB);
1000+
assert.equal(res[1], resourceA);
1001+
1002+
query = 'color';
1003+
1004+
res = [resourceA, resourceB].sort((r1, r2) => compareItemsByScore(r1, r2, query, true, ResourceAccessor));
1005+
assert.equal(res[0], resourceA);
1006+
assert.equal(res[1], resourceB);
1007+
1008+
res = [resourceB, resourceA].sort((r1, r2) => compareItemsByScore(r1, r2, query, true, ResourceAccessor));
1009+
assert.equal(res[0], resourceA);
1010+
assert.equal(res[1], resourceB);
1011+
});
1012+
9881013
test('prepareQuery', () => {
9891014
assert.equal(scorer.prepareQuery(' f*a ').normalized, 'fa');
9901015
assert.equal(scorer.prepareQuery('model Tester.ts').original, 'model Tester.ts');

0 commit comments

Comments
 (0)