Skip to content

Commit d9cbc73

Browse files
committed
feat(cutoff_frequency): support cutoff_frequency on multi_match queries
1 parent 9e3bdae commit d9cbc73

File tree

2 files changed

+38
-0
lines changed

2 files changed

+38
-0
lines changed

test/view/multi_match.js

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,40 @@ module.exports.tests.no_exceptions_conditions = function(test, common) {
5757

5858
};
5959

60+
module.exports.tests.cutoff_frequency = function (test, common) {
61+
test('optional cutoff_frequency', function (t) {
62+
var vs = new VariableStore();
63+
vs.var('query var', 'query value');
64+
vs.var('multi_match:cutoff_frequency', 0.1);
65+
66+
var fields_with_boosts = [
67+
{ field: 'field 1' },
68+
{ field: 'field 2' },
69+
{ field: 'field 3' }
70+
];
71+
72+
var actual = multi_match(vs, fields_with_boosts, 'analyzer value', 'query var');
73+
74+
var expected = {
75+
multi_match: {
76+
fields: [
77+
'field 1^1',
78+
'field 2^1',
79+
'field 3^1'
80+
],
81+
query: { $: 'query value' },
82+
analyzer: 'analyzer value',
83+
cutoff_frequency: { $: 0.1 },
84+
}
85+
};
86+
87+
t.deepEquals(actual, expected, 'should have returned object');
88+
t.end();
89+
90+
});
91+
92+
};
93+
6094
module.exports.all = function (tape, common) {
6195
function test(name, testFunction) {
6296
return tape('multi_match ' + name, testFunction);

view/multi_match.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,9 @@ module.exports = function( vs, fields_with_boosts, analyzer, query_var ){
3131
view.multi_match.query = vs.var(query_var);
3232
view.multi_match.analyzer = analyzer;
3333

34+
if (vs.isset('multi_match:cutoff_frequency')) {
35+
view.multi_match.cutoff_frequency = vs.var('multi_match:cutoff_frequency');
36+
}
37+
3438
return view;
3539
};

0 commit comments

Comments
 (0)