eson-dsl 0.7.0 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. data/MethodReference.md +53 -0
  2. data/README.md +59 -113
  3. data/Rakefile +2 -2
  4. data/eson-dsl.gemspec +2 -1
  5. data/examples/queries/custom_boost_factor.rb +9 -0
  6. data/examples/queries/custom_filters_score.rb +15 -0
  7. data/examples/queries/custom_filters_score_with_script.rb +15 -0
  8. data/examples/queries/filtered.rb +8 -0
  9. data/examples/queries/indices.rb +12 -0
  10. data/examples/queries/match.rb +7 -0
  11. data/examples/queries/multi_match.rb +5 -0
  12. data/examples/queries/text.rb +2 -0
  13. data/lib/compat.rb +15 -0
  14. data/lib/eson-dsl.rb +35 -0
  15. data/lib/eson/modules/query_plugin.rb +4 -2
  16. data/lib/eson/search/and.rb +1 -5
  17. data/lib/eson/search/base_query.rb +5 -8
  18. data/lib/eson/search/bool.rb +2 -5
  19. data/lib/eson/search/boosting.rb +1 -4
  20. data/lib/eson/search/custom_boost_factor.rb +19 -0
  21. data/lib/eson/search/custom_filters_score.rb +42 -0
  22. data/lib/eson/search/date_histogram.rb +0 -2
  23. data/lib/eson/search/facet.rb +10 -5
  24. data/lib/eson/search/facets.rb +2 -1
  25. data/lib/eson/search/field_based.rb +1 -1
  26. data/lib/eson/search/filter.rb +1 -0
  27. data/lib/eson/search/filtered.rb +15 -0
  28. data/lib/eson/search/geo_distance.rb +2 -5
  29. data/lib/eson/search/has_child.rb +3 -5
  30. data/lib/eson/search/ids.rb +2 -4
  31. data/lib/eson/search/indices.rb +48 -0
  32. data/lib/eson/search/match.rb +10 -0
  33. data/lib/eson/search/multi_match.rb +21 -0
  34. data/lib/eson/search/prefix.rb +2 -4
  35. data/lib/eson/search/query.rb +1 -0
  36. data/lib/eson/search/term.rb +2 -4
  37. data/lib/eson/search/terms.rb +3 -5
  38. data/lib/eson/search/top_children.rb +2 -4
  39. data/test/search/facets/scoped.json +1 -1
  40. data/test/search/filters/and.rb +7 -11
  41. data/test/search/filters/bool.json +1 -1
  42. data/test/search/filters/bool.rb +17 -22
  43. data/test/search/filters/geo_bounding_box_hash.json +1 -1
  44. data/test/search/filters/geo_distance_hash.json +1 -1
  45. data/test/search/filters/geo_distance_range_hash.json +1 -1
  46. data/test/search/filters/geo_polygon_hash.json +1 -1
  47. data/test/search/filters/has_child.rb +7 -11
  48. data/test/search/filters/ids.rb +7 -11
  49. data/test/search/filters/not.rb +5 -9
  50. data/test/search/filters/or.rb +7 -11
  51. data/test/search/filters/range.rb +6 -11
  52. data/test/search/filters/type.json +1 -1
  53. data/test/search/filters/type.rb +1 -1
  54. data/test/search/filters_test.rb +2 -2
  55. data/test/search/queries/custom_boost_factor.json +10 -0
  56. data/test/search/queries/custom_filters_score.json +21 -0
  57. data/test/search/queries/filtered.rb +1 -0
  58. data/test/search/queries/filters_and_facets.json +1 -1
  59. data/test/search/queries/indices.json +13 -0
  60. data/test/search/queries/match.json +1 -0
  61. data/test/search/queries/multi_match.json +8 -0
  62. data/test/search/query_test.rb +70 -15
  63. metadata +29 -9
  64. data/TODO.md +0 -1
@@ -1,15 +1,11 @@
1
1
  {
2
2
  :query => {
3
- :filtered => {
4
- :query => {
5
- :term => {:tag => "something"}
6
- },
7
- :filter => {
8
- :and => [
9
- { :range => { :post_date => {:from => "2010-03-01", :to => "2010-04-01"} } },
10
- { :prefix => { "name.second" => "ba"} }
11
- ]
12
- }
13
- }
3
+ :term => {:tag => "something"}
4
+ },
5
+ :filter => {
6
+ :and => [
7
+ { :range => { :post_date => {:from => "2010-03-01", :to => "2010-04-01"} } },
8
+ { :prefix => { "name.second" => "ba"} }
9
+ ]
14
10
  }
15
11
  }
@@ -1 +1 @@
1
- {"query":{"filtered":{"query":{"match_all":{}},"filter":{"bool":{"must":{"term":{"user":"kimchy"}},"must_not":{"range":{"age":{"from":10,"to":20}}},"should":[{"term":{"tag":"wow"}},{"term":{"tag":"elasticsearch"}}]}}}}}
1
+ {"query":{"match_all":{}},"filter":{"bool":{"must":{"term":{"user":"kimchy"}},"must_not":{"range":{"age":{"from":10,"to":20}}},"should":[{"term":{"tag":"wow"}},{"term":{"tag":"elasticsearch"}}]}}}
@@ -1,27 +1,22 @@
1
1
  {
2
- :query =>
3
- {
4
- :filtered => {
5
- :query => {:match_all => {}},
6
- :filter => {
7
- :bool => {
8
- :must => {
9
- :term => { "user" => "kimchy"}
10
- },
11
- :must_not => {
12
- :range => {
13
- :age => {
14
- :from => 10,
15
- :to => 20
16
- }
17
- }
18
- },
19
- :should => [
20
- { :term => { "tag" => "wow" } },
21
- { :term => { "tag" => "elasticsearch" } }
22
- ]
2
+ :query => {:match_all => {}},
3
+ :filter => {
4
+ :bool => {
5
+ :must => {
6
+ :term => { "user" => "kimchy"}
7
+ },
8
+ :must_not => {
9
+ :range => {
10
+ :age => {
11
+ :from => 10,
12
+ :to => 20
13
+ }
23
14
  }
24
- }
15
+ },
16
+ :should => [
17
+ { :term => { "tag" => "wow" } },
18
+ { :term => { "tag" => "elasticsearch" } }
19
+ ]
25
20
  }
26
21
  }
27
22
  }
@@ -1 +1 @@
1
- {"query":{"filtered":{"query":{"match_all":{}},"filter":{"geo_bounding_box":{"location":{"top_left":{"lat":40.73,"lon":-74.1},"bottom_right":{"lat":40.717,"lon":-73.99}}}}}}}
1
+ {"query":{"match_all":{}},"filter":{"geo_bounding_box":{"location":{"top_left":{"lat":40.73,"lon":-74.1},"bottom_right":{"lat":40.717,"lon":-73.99}}}}}
@@ -1 +1 @@
1
- {"query":{"filtered":{"query":{"match_all":{}},"filter":{"geo_distance":{"distance":"200km","location":{"lat":40,"lon":-70}}}}}}
1
+ {"query":{"match_all":{}},"filter":{"geo_distance":{"distance":"200km","location":{"lat":40,"lon":-70}}}}
@@ -1 +1 @@
1
- {"query":{"filtered":{"query":{"match_all":{}},"filter":{"geo_distance_range":{"from":"200km","to":"400km","location":{"lat":40,"lon":-70}}}}}}
1
+ {"query":{"match_all":{}},"filter":{"geo_distance_range":{"from":"200km","to":"400km","location":{"lat":40,"lon":-70}}}}
@@ -1 +1 @@
1
- {"query":{"filtered":{"query":{"match_all":{}},"filter":{"geo_polygon":{"location":{"points":[{"lat":40,"lon":-70},{"lat":30,"lon":-80},{"lat":20,"lon":-90}]}}}}}}
1
+ {"query":{"match_all":{}},"filter":{"geo_polygon":{"location":{"points":[{"lat":40,"lon":-70},{"lat":30,"lon":-80},{"lat":20,"lon":-90}]}}}}
@@ -1,14 +1,10 @@
1
- {
2
- :query => {
3
- :filtered => {
4
- :query => {:match_all => { }},
5
- :filter => {
6
- :has_child => {
7
- :type => :blog_tag,
8
- :query => {
9
- :term => { :tag => "something" }
10
- }
11
- }
1
+ {
2
+ :query => {:match_all => { }},
3
+ :filter => {
4
+ :has_child => {
5
+ :type => :blog_tag,
6
+ :query => {
7
+ :term => { :tag => "something" }
12
8
  }
13
9
  }
14
10
  }
@@ -1,14 +1,10 @@
1
- {:query =>
2
- {
3
- :filtered => {
4
- :query => {
5
- :match_all => { }
6
- },
7
- :filter => {
8
- :ids => {
9
- :type => "user", :values => [1,2,3,4,5,6,7]
10
- }
11
- }
1
+ {
2
+ :query => {
3
+ :match_all => { }
4
+ },
5
+ :filter => {
6
+ :ids => {
7
+ :type => "user", :values => [1,2,3,4,5,6,7]
12
8
  }
13
9
  }
14
10
  }
@@ -1,15 +1,11 @@
1
1
  {
2
2
  :query => {
3
- :filtered => {
4
- :query => {
5
- :term => {:tag => "something"}
6
- },
3
+ :term => {:tag => "something"}
4
+ },
5
+ :filter => {
6
+ :not => {
7
7
  :filter => {
8
- "not" => {
9
- :filter => {
10
- :term => { "name.first" => "Florian"}
11
- }
12
- }
8
+ :term => { "name.first" => "Florian"}
13
9
  }
14
10
  }
15
11
  }
@@ -1,15 +1,11 @@
1
1
  {
2
2
  :query => {
3
- :filtered => {
4
- :query => {
5
- :term => {:tag => "something"}
6
- },
7
- :filter => {
8
- :or => [
9
- { :term => { "name.first" => "Felix" } },
10
- { :term => { "name.first" => "Florian"} }
11
- ]
12
- }
13
- }
3
+ :term => {:tag => "something"}
4
+ },
5
+ :filter => {
6
+ :or => [
7
+ { :term => { "name.first" => "Felix" } },
8
+ { :term => { "name.first" => "Florian"} }
9
+ ]
14
10
  }
15
11
  }
@@ -1,15 +1,10 @@
1
1
  {
2
- :query =>
3
- {
4
- :filtered => {
5
- :query => {:match_all => {}},
6
- :filter => {
7
- :range => {
8
- :age => {
9
- :from => 10,
10
- :to => 20
11
- }
12
- }
2
+ :query => {:match_all => {}},
3
+ :filter => {
4
+ :range => {
5
+ :age => {
6
+ :from => 10,
7
+ :to => 20
13
8
  }
14
9
  }
15
10
  }
@@ -1 +1 @@
1
- {"query":{"filtered":{"query":{"match_all":{}},"filter":{"type":{"value":"my_type"}}}}}
1
+ {"query":{"match_all":{}},"filter":{"type":{"value":"my_type"}}}
@@ -1 +1 @@
1
- {:query => {:filtered => {:query => {:match_all => {}}, :filter => {:type => {:value => :my_type}}}}}
1
+ {:query => {:match_all => {}}, :filter => {:type => {:value => :my_type}}}
@@ -75,7 +75,7 @@ context "Filter" do
75
75
  end
76
76
 
77
77
  context "#and filter" do
78
- query_name "test/search/queries/and_filter"
78
+ query_name "test/search/filters/and"
79
79
 
80
80
  setup do
81
81
  example("filters/and")
@@ -83,7 +83,7 @@ context "Filter" do
83
83
  end
84
84
 
85
85
  context "#and filter using default" do
86
- query_name "test/search/queries/and_filter"
86
+ query_name "test/search/filters/and"
87
87
 
88
88
  setup do
89
89
  example("filters/and_without_keyword")
@@ -0,0 +1,10 @@
1
+ {
2
+ "query": {
3
+ "custom_boost_factor" : {
4
+ "boost_factor" : 5,
5
+ "query" : {
6
+ "term": {"tag": "wow"}
7
+ }
8
+ }
9
+ }
10
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "query":
3
+ {
4
+ "custom_filters_score" : {
5
+ "query" : {
6
+ "match_all" : {}
7
+ },
8
+ "filters" : [
9
+ {
10
+ "filter" : { "range" : { "age" : {"from" : 0, "to" : 10} } },
11
+ "boost" : 3
12
+ },
13
+ {
14
+ "filter" : { "range" : { "age" : {"from" : 10, "to" : 20} } },
15
+ "boost" : 2
16
+ }
17
+ ],
18
+ "score_mode" : "first"
19
+ }
20
+ }
21
+ }
@@ -0,0 +1 @@
1
+ {:query => {:filtered => {:query => {:match_all => {}}, :filter => {:prefix => {"name.second" => "ba"}}}}}
@@ -1 +1 @@
1
- {"query":{"filtered":{"query":{"match_all":{}},"filter":{"range":{"age":{"from":10,"to":20}}}}},"facets":{"hist1":{"histogram":{"field":"age","interval":2}}}}
1
+ {"query": {"match_all":{}},"filter":{"range":{"age":{"from":10,"to":20}}},"facets":{"hist1":{"histogram":{"field":"age","interval":2}}}}
@@ -0,0 +1,13 @@
1
+ {
2
+ "query": {
3
+ "indices" : {
4
+ "indices" : ["index1", "index2"],
5
+ "query" : {
6
+ "term" : { "tag" : "wow" }
7
+ },
8
+ "no_match_query" : {
9
+ "term" : { "tag" : "kow" }
10
+ }
11
+ }
12
+ }
13
+ }
@@ -0,0 +1 @@
1
+ {"query":{"match":{"message":{"type":"phrase_prefix","query":"this is a text"}}}}
@@ -0,0 +1,8 @@
1
+ {
2
+ "query": {
3
+ "multi_match" : {
4
+ "query" : "this is a test",
5
+ "fields" : [ "subject", "message" ]
6
+ }
7
+ }
8
+ }
@@ -37,19 +37,21 @@ context "Queries" do
37
37
  end
38
38
  end
39
39
 
40
- context "#prefix" do
41
- query_name "test/search/queries/prefix"
40
+ unless ElasticSearch::Node.version > "0.19.4"
41
+ context "#prefix" do
42
+ query_name "test/search/queries/prefix"
42
43
 
43
- setup do
44
- example("queries/prefix")
44
+ setup do
45
+ example("queries/prefix")
46
+ end
45
47
  end
46
- end
47
48
 
48
- context "#prefix short style" do
49
- query_name "test/search/queries/prefix_short"
49
+ context "#prefix short style" do
50
+ query_name "test/search/queries/prefix_short"
50
51
 
51
- setup do
52
- example("queries/prefix_short")
52
+ setup do
53
+ example("queries/prefix_short")
54
+ end
53
55
  end
54
56
  end
55
57
 
@@ -101,11 +103,23 @@ context "Queries" do
101
103
  end
102
104
  end
103
105
 
104
- context "#text query" do
105
- query_name "test/search/queries/text"
106
+ if ElasticSearch::Node.version < "0.20.0"
107
+ context "#text query" do
108
+ query_name "test/search/queries/text"
106
109
 
107
- setup do
108
- example("queries/text")
110
+ setup do
111
+ example("queries/text")
112
+ end
113
+ end
114
+ end
115
+
116
+ if ElasticSearch::Node.version > "0.19.8"
117
+ context "#match query" do
118
+ query_name "test/search/queries/match"
119
+
120
+ setup do
121
+ example("queries/match")
122
+ end
109
123
  end
110
124
  end
111
125
 
@@ -117,7 +131,6 @@ context "Queries" do
117
131
  end
118
132
  end
119
133
 
120
-
121
134
  context "#boosting query" do
122
135
  query_name "test/search/queries/boosting"
123
136
 
@@ -253,7 +266,7 @@ context "Queries" do
253
266
  end
254
267
  end
255
268
 
256
- context "query with filter and facets" do
269
+ context "with filter and facets" do
257
270
  query_name "test/search/queries/filters_and_facets"
258
271
 
259
272
  setup do
@@ -308,4 +321,46 @@ context "Queries" do
308
321
  example("queries/span_term")
309
322
  end
310
323
  end
324
+
325
+ if ElasticSearch::Node.version > "0.19.0"
326
+ context "multi_match query" do
327
+ query_name "test/search/queries/multi_match"
328
+
329
+ setup do
330
+ example("queries/multi_match")
331
+ end
332
+ end
333
+
334
+ context "indices query" do
335
+ query_name "test/search/queries/indices"
336
+
337
+ setup do
338
+ example("queries/indices")
339
+ end
340
+ end
341
+
342
+ context "custom_boost_factor query" do
343
+ query_name "test/search/queries/custom_boost_factor"
344
+
345
+ setup do
346
+ example("queries/custom_boost_factor")
347
+ end
348
+ end
349
+
350
+ context "custom_filters_score query" do
351
+ query_name "test/search/queries/custom_filters_score"
352
+
353
+ setup do
354
+ example("queries/custom_filters_score")
355
+ end
356
+ end
357
+
358
+ context "filtered query" do
359
+ query_name "test/search/queries/filtered"
360
+
361
+ setup do
362
+ example("queries/filtered")
363
+ end
364
+ end
365
+ end
311
366
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eson-dsl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.8.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-06-10 00:00:00.000000000 Z
12
+ date: 2013-01-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: elasticsearch-node
@@ -35,9 +35,9 @@ extensions: []
35
35
  extra_rdoc_files: []
36
36
  files:
37
37
  - LICENSE.md
38
+ - MethodReference.md
38
39
  - README.md
39
40
  - Rakefile
40
- - TODO.md
41
41
  - eson-dsl.gemspec
42
42
  - examples/facets/date_histogram.rb
43
43
  - examples/facets/filter.rb
@@ -71,9 +71,13 @@ files:
71
71
  - examples/queries/boosting.rb
72
72
  - examples/queries/constant_score.rb
73
73
  - examples/queries/constant_score_with_filter.rb
74
+ - examples/queries/custom_boost_factor.rb
75
+ - examples/queries/custom_filters_score.rb
76
+ - examples/queries/custom_filters_score_with_script.rb
74
77
  - examples/queries/custom_score.rb
75
78
  - examples/queries/dis_max.rb
76
79
  - examples/queries/field.rb
80
+ - examples/queries/filtered.rb
77
81
  - examples/queries/filters_and_facets.rb
78
82
  - examples/queries/flt.rb
79
83
  - examples/queries/flt_field.rb
@@ -82,9 +86,12 @@ files:
82
86
  - examples/queries/has_child.rb
83
87
  - examples/queries/has_child_complex.rb
84
88
  - examples/queries/ids.rb
89
+ - examples/queries/indices.rb
90
+ - examples/queries/match.rb
85
91
  - examples/queries/match_all.rb
86
92
  - examples/queries/mlt.rb
87
93
  - examples/queries/mlt_field.rb
94
+ - examples/queries/multi_match.rb
88
95
  - examples/queries/nested.rb
89
96
  - examples/queries/prefix.rb
90
97
  - examples/queries/prefix_short.rb
@@ -104,6 +111,7 @@ files:
104
111
  - examples/queries/top_children.rb
105
112
  - examples/queries/wildcard.rb
106
113
  - examples/queries/wildcard_short.rb
114
+ - lib/compat.rb
107
115
  - lib/eson-dsl.rb
108
116
  - lib/eson/modules/query_plugin.rb
109
117
  - lib/eson/search/and.rb
@@ -111,6 +119,8 @@ files:
111
119
  - lib/eson/search/bool.rb
112
120
  - lib/eson/search/boosting.rb
113
121
  - lib/eson/search/constant_score.rb
122
+ - lib/eson/search/custom_boost_factor.rb
123
+ - lib/eson/search/custom_filters_score.rb
114
124
  - lib/eson/search/custom_score.rb
115
125
  - lib/eson/search/date_histogram.rb
116
126
  - lib/eson/search/dis_max.rb
@@ -121,6 +131,7 @@ files:
121
131
  - lib/eson/search/field_based.rb
122
132
  - lib/eson/search/filter.rb
123
133
  - lib/eson/search/filter_facet.rb
134
+ - lib/eson/search/filtered.rb
124
135
  - lib/eson/search/filters.rb
125
136
  - lib/eson/search/fquery.rb
126
137
  - lib/eson/search/fuzzy.rb
@@ -133,10 +144,13 @@ files:
133
144
  - lib/eson/search/has_child.rb
134
145
  - lib/eson/search/histogram.rb
135
146
  - lib/eson/search/ids.rb
147
+ - lib/eson/search/indices.rb
148
+ - lib/eson/search/match.rb
136
149
  - lib/eson/search/match_all.rb
137
150
  - lib/eson/search/missing.rb
138
151
  - lib/eson/search/more_like_this.rb
139
152
  - lib/eson/search/more_like_this_field.rb
153
+ - lib/eson/search/multi_match.rb
140
154
  - lib/eson/search/nested.rb
141
155
  - lib/eson/search/node.rb
142
156
  - lib/eson/search/not.rb
@@ -227,10 +241,13 @@ files:
227
241
  - test/search/queries/boosting.rb
228
242
  - test/search/queries/constant_score.rb
229
243
  - test/search/queries/constant_score_filter.rb
244
+ - test/search/queries/custom_boost_factor.json
245
+ - test/search/queries/custom_filters_score.json
230
246
  - test/search/queries/custom_score.documents
231
247
  - test/search/queries/custom_score.rb
232
248
  - test/search/queries/dis_max.rb
233
249
  - test/search/queries/field.rb
250
+ - test/search/queries/filtered.rb
234
251
  - test/search/queries/filters_and_facets.documents
235
252
  - test/search/queries/filters_and_facets.json
236
253
  - test/search/queries/flt.rb
@@ -244,10 +261,13 @@ files:
244
261
  - test/search/queries/has_child_complex.blog_tag.mapping
245
262
  - test/search/queries/has_child_complex.rb
246
263
  - test/search/queries/ids.rb
264
+ - test/search/queries/indices.json
265
+ - test/search/queries/match.json
247
266
  - test/search/queries/match_all.rb
248
267
  - test/search/queries/mlt.json
249
268
  - test/search/queries/mlt.rb
250
269
  - test/search/queries/mlt_field.rb
270
+ - test/search/queries/multi_match.json
251
271
  - test/search/queries/nested.json
252
272
  - test/search/queries/nested.mapping
253
273
  - test/search/queries/phrase_prefix.rb
@@ -285,18 +305,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
285
305
  - - ! '>='
286
306
  - !ruby/object:Gem::Version
287
307
  version: '0'
288
- segments:
289
- - 0
290
- hash: 4021414716358552886
291
308
  required_rubygems_version: !ruby/object:Gem::Requirement
292
309
  none: false
293
310
  requirements:
294
311
  - - ! '>='
295
312
  - !ruby/object:Gem::Version
296
313
  version: '0'
297
- segments:
298
- - 0
299
- hash: 4021414716358552886
300
314
  requirements: []
301
315
  rubyforge_project:
302
316
  rubygems_version: 1.8.21
@@ -365,10 +379,13 @@ test_files:
365
379
  - test/search/queries/boosting.rb
366
380
  - test/search/queries/constant_score.rb
367
381
  - test/search/queries/constant_score_filter.rb
382
+ - test/search/queries/custom_boost_factor.json
383
+ - test/search/queries/custom_filters_score.json
368
384
  - test/search/queries/custom_score.documents
369
385
  - test/search/queries/custom_score.rb
370
386
  - test/search/queries/dis_max.rb
371
387
  - test/search/queries/field.rb
388
+ - test/search/queries/filtered.rb
372
389
  - test/search/queries/filters_and_facets.documents
373
390
  - test/search/queries/filters_and_facets.json
374
391
  - test/search/queries/flt.rb
@@ -382,10 +399,13 @@ test_files:
382
399
  - test/search/queries/has_child_complex.blog_tag.mapping
383
400
  - test/search/queries/has_child_complex.rb
384
401
  - test/search/queries/ids.rb
402
+ - test/search/queries/indices.json
403
+ - test/search/queries/match.json
385
404
  - test/search/queries/match_all.rb
386
405
  - test/search/queries/mlt.json
387
406
  - test/search/queries/mlt.rb
388
407
  - test/search/queries/mlt_field.rb
408
+ - test/search/queries/multi_match.json
389
409
  - test/search/queries/nested.json
390
410
  - test/search/queries/nested.mapping
391
411
  - test/search/queries/phrase_prefix.rb