diff --git a/search/searchers/search_fuzzy.go b/search/searchers/search_fuzzy.go index 2cfa8329..afaefedd 100644 --- a/search/searchers/search_fuzzy.go +++ b/search/searchers/search_fuzzy.go @@ -59,7 +59,7 @@ func NewFuzzySearcher(indexReader index.IndexReader, term string, prefix, fuzzin qsearchers := make([]search.Searcher, 0, 25) for _, cterm := range candidateTerms { - qsearcher, err := NewTermSearcher(indexReader, cterm, field, 1.0, explain) + qsearcher, err := NewTermSearcher(indexReader, cterm, field, boost, explain) if err != nil { return nil, err } diff --git a/search/searchers/search_numeric_range.go b/search/searchers/search_numeric_range.go index 5dfd8472..92134aff 100644 --- a/search/searchers/search_numeric_range.go +++ b/search/searchers/search_numeric_range.go @@ -61,7 +61,7 @@ func NewNumericRangeSearcher(indexReader index.IndexReader, min *float64, max *f qsearchers := make([]search.Searcher, len(terms)) for i, term := range terms { var err error - qsearchers[i], err = NewTermSearcher(indexReader, string(term), field, 1.0, explain) + qsearchers[i], err = NewTermSearcher(indexReader, string(term), field, boost, explain) if err != nil { return nil, err } diff --git a/search/searchers/search_regexp.go b/search/searchers/search_regexp.go index e4cc5c24..158432f9 100644 --- a/search/searchers/search_regexp.go +++ b/search/searchers/search_regexp.go @@ -57,7 +57,7 @@ func NewRegexpSearcher(indexReader index.IndexReader, pattern *regexp.Regexp, fi qsearchers := make([]search.Searcher, 0, 25) for _, cterm := range candidateTerms { - qsearcher, err := NewTermSearcher(indexReader, cterm, field, 1.0, explain) + qsearcher, err := NewTermSearcher(indexReader, cterm, field, boost, explain) if err != nil { return nil, err } diff --git a/test/tests/basic/searches.json b/test/tests/basic/searches.json index d5618c9d..dd44a86a 100644 --- a/test/tests/basic/searches.json +++ b/test/tests/basic/searches.json @@ -616,5 +616,135 @@ "total_hits": 0, "hits": [] } + }, + { + "comment": "test boost - term query", + "search": { + "from": 0, + "size": 10, + "query": { + "disjuncts": [ + { + "field": "name", + "term": "marti", + "boost": 1.0 + }, + { + "field": "name", + "term": "steve", + "boost": 5.0 + } + ] + } + }, + "result": { + "total_hits": 2, + "hits": [ + { + "id": "b" + }, + { + "id": "a" + } + ] + } + }, + { + "comment": "test boost - term query", + "search": { + "from": 0, + "size": 10, + "query": { + "disjuncts": [ + { + "field": "name", + "term": "marti", + "boost": 1.0 + }, + { + "fuzziness": 1, + "field": "name", + "term": "steve", + "boost": 5.0 + } + ] + } + }, + "result": { + "total_hits": 2, + "hits": [ + { + "id": "b" + }, + { + "id": "a" + } + ] + } + }, + { + "comment": "test boost - numeric range query", + "search": { + "from": 0, + "size": 10, + "query": { + "disjuncts": [ + { + "field": "name", + "term": "marti", + "boost": 1.0 + }, + { + "field": "age", + "min": 25, + "max": 29, + "boost": 50.0 + } + ] + } + }, + "result": { + "total_hits": 2, + "hits": [ + { + "id": "b" + }, + { + "id": "a" + } + ] + } + }, + { + "comment": "test boost - regexp query", + "search": { + "from": 0, + "size": 10, + "query": { + "disjuncts": [ + { + "field": "name", + "term": "marti", + "boost": 1.0 + }, + { + "field": "name", + "regexp": "stev.*", + "boost": 5.0 + } + ] + } + }, + "result": { + "total_hits": 2, + "hits": [ + { + "id": "b" + }, + { + "id": "a" + } + ] + } } ]