diff --git a/spec/engine.ts b/spec/engine.ts index 0617ca2..ff46428 100644 --- a/spec/engine.ts +++ b/spec/engine.ts @@ -30,6 +30,14 @@ describe ('Search engine', () => { expect(results1).to.deep.equal(results2) }) + it('the "default" version works just like "master"', () => { + const results1 = search(lunrIndex, files, 'backup', undefined, 'master') + const results2 = search(lunrIndex, files, 'backup', undefined, 'default') + expect(results1.length).to.equal(50) + expect(results2.length).to.equal(50) + expect(results1).to.deep.equal(results2) + }) + it('can be filtered by version', () => { const results = search(lunrIndex, files, 'backup', undefined, '0.1') expect(results.length).to.equal(7) diff --git a/src/engine.ts b/src/engine.ts index 78b2109..f6c5975 100644 --- a/src/engine.ts +++ b/src/engine.ts @@ -6,7 +6,7 @@ export type FileRepository = { [ref: string]: SearchResult } /** * Performs the actual search against the Lunr index. - * This function takes a "version" parameter; if this parameter is "master" or "main", then all search + * This function takes a "version" parameter; if this parameter is "master", "main", or "default", then all search * results are included in the response. If a different value is provided, only those values are returned. * @param lunrIndex The Lunr.js index * @param files The repository of files @@ -25,7 +25,7 @@ export function search(lunrIndex: lunr.Index, files: FileRepository, query: stri .filter((result: SearchResult) => { // This "or" statement short-circuits the evaluation: if "master" or "main" are mentioned, // the result is included; otherwise, if the version coincides, it is included. - if (version === 'master' || version === 'main' || result.version === version) { + if (version === 'master' || version === 'main' || version === 'default' || result.version === version) { return result } })