diff --git a/lib/elasticsearch/elastic-query-builder.js b/lib/elasticsearch/elastic-query-builder.js index 84615112..b0765577 100644 --- a/lib/elasticsearch/elastic-query-builder.js +++ b/lib/elasticsearch/elastic-query-builder.js @@ -255,7 +255,7 @@ class ElasticQueryBuilder { * Require strong match on queried callnumber **/ requireCallnumberMatch () { - const q = this.request.querySansQuotes() + const q = this.request.querySansQuotes().trim() this.query.addMust({ bool: { diff --git a/test/elastic-query-builder.test.js b/test/elastic-query-builder.test.js index 7c94654a..1f19cd50 100644 --- a/test/elastic-query-builder.test.js +++ b/test/elastic-query-builder.test.js @@ -218,7 +218,8 @@ describe('ElasticQueryBuilder', () => { describe('search_scope callnumber', () => { it('generates a "callnumber" query', () => { - const request = new ApiRequest({ q: 'toast', search_scope: 'callnumber' }) + // including leading and trailing whitespace to validate that query is trimmed + const request = new ApiRequest({ q: ' toast ', search_scope: 'callnumber' }) const inst = ElasticQueryBuilder.forApiRequest(request) // Expect multiple term/prefix matches on identifier fields: