@@ -158,7 +158,7 @@ public class SimpleJsonIndexQueryParserTests {
158
158
159
159
@ Test public void testDisMaxBuilder () throws Exception {
160
160
IndexQueryParser queryParser = newQueryParser ();
161
- Query parsedQuery = queryParser .parse (disMaxQuery ().boost (1.2f ).tieBreaker (0.7f ).add (termQuery ("age " , 34 )).add (termQuery ("age " , 35 )));
161
+ Query parsedQuery = queryParser .parse (disMaxQuery ().boost (1.2f ).tieBreaker (0.7f ).add (termQuery ("name.first " , "first" )).add (termQuery ("name.last " , "last" )));
162
162
assertThat (parsedQuery , instanceOf (DisjunctionMaxQuery .class ));
163
163
DisjunctionMaxQuery disjunctionMaxQuery = (DisjunctionMaxQuery ) parsedQuery ;
164
164
assertThat ((double ) disjunctionMaxQuery .getBoost (), closeTo (1.2 , 0.01 ));
@@ -168,11 +168,11 @@ public class SimpleJsonIndexQueryParserTests {
168
168
169
169
Query firstQ = disjuncts .get (0 );
170
170
assertThat (firstQ , instanceOf (TermQuery .class ));
171
- assertThat (((TermQuery ) firstQ ).getTerm (), equalTo (new Term ("age " , NumericUtils . longToPrefixCoded ( 34 ) )));
171
+ assertThat (((TermQuery ) firstQ ).getTerm (), equalTo (new Term ("name.first " , "first" )));
172
172
173
173
Query secondsQ = disjuncts .get (1 );
174
174
assertThat (secondsQ , instanceOf (TermQuery .class ));
175
- assertThat (((TermQuery ) secondsQ ).getTerm (), equalTo (new Term ("age " , NumericUtils . longToPrefixCoded ( 35 ) )));
175
+ assertThat (((TermQuery ) secondsQ ).getTerm (), equalTo (new Term ("name.last " , "last" )));
176
176
}
177
177
178
178
@ Test public void testDisMax () throws Exception {
@@ -188,49 +188,57 @@ public class SimpleJsonIndexQueryParserTests {
188
188
189
189
Query firstQ = disjuncts .get (0 );
190
190
assertThat (firstQ , instanceOf (TermQuery .class ));
191
- assertThat (((TermQuery ) firstQ ).getTerm (), equalTo (new Term ("age " , NumericUtils . longToPrefixCoded ( 34 ) )));
191
+ assertThat (((TermQuery ) firstQ ).getTerm (), equalTo (new Term ("name.first " , "first" )));
192
192
193
193
Query secondsQ = disjuncts .get (1 );
194
194
assertThat (secondsQ , instanceOf (TermQuery .class ));
195
- assertThat (((TermQuery ) secondsQ ).getTerm (), equalTo (new Term ("age " , NumericUtils . longToPrefixCoded ( 35 ) )));
195
+ assertThat (((TermQuery ) secondsQ ).getTerm (), equalTo (new Term ("name.last " , "last" )));
196
196
}
197
197
198
198
@ Test public void testTermQueryBuilder () throws IOException {
199
199
IndexQueryParser queryParser = newQueryParser ();
200
200
Query parsedQuery = queryParser .parse (termQuery ("age" , 34 ).buildAsBytes ());
201
- assertThat (parsedQuery , instanceOf (TermQuery .class ));
202
- TermQuery termQuery = (TermQuery ) parsedQuery ;
203
- // since age is automatically registered in data, we encode it as numeric
204
- assertThat (termQuery .getTerm (), equalTo (new Term ("age" , NumericUtils .longToPrefixCoded (34 ))));
201
+ assertThat (parsedQuery , instanceOf (NumericRangeQuery .class ));
202
+ NumericRangeQuery fieldQuery = (NumericRangeQuery ) parsedQuery ;
203
+ assertThat (fieldQuery .getMin ().intValue (), equalTo (34 ));
204
+ assertThat (fieldQuery .getMax ().intValue (), equalTo (34 ));
205
+ assertThat (fieldQuery .includesMax (), equalTo (true ));
206
+ assertThat (fieldQuery .includesMin (), equalTo (true ));
205
207
}
206
208
207
209
@ Test public void testTermQuery () throws IOException {
208
210
IndexQueryParser queryParser = newQueryParser ();
209
211
String query = copyToStringFromClasspath ("/org/elasticsearch/index/query/json/term.json" );
210
212
Query parsedQuery = queryParser .parse (query );
211
- assertThat (parsedQuery , instanceOf (TermQuery .class ));
212
- TermQuery termQuery = (TermQuery ) parsedQuery ;
213
- // since age is automatically registered in data, we encode it as numeric
214
- assertThat (termQuery .getTerm (), equalTo (new Term ("age" , NumericUtils .longToPrefixCoded (34 ))));
213
+ assertThat (parsedQuery , instanceOf (NumericRangeQuery .class ));
214
+ NumericRangeQuery fieldQuery = (NumericRangeQuery ) parsedQuery ;
215
+ assertThat (fieldQuery .getMin ().intValue (), equalTo (34 ));
216
+ assertThat (fieldQuery .getMax ().intValue (), equalTo (34 ));
217
+ assertThat (fieldQuery .includesMax (), equalTo (true ));
218
+ assertThat (fieldQuery .includesMin (), equalTo (true ));
215
219
}
216
220
217
221
@ Test public void testFieldQueryBuilder1 () throws IOException {
218
222
IndexQueryParser queryParser = newQueryParser ();
219
223
Query parsedQuery = queryParser .parse (fieldQuery ("age" , 34 ).buildAsBytes ());
220
- assertThat (parsedQuery , instanceOf (TermQuery .class ));
221
- TermQuery termQuery = (TermQuery ) parsedQuery ;
222
- // since age is automatically registered in data, we encode it as numeric
223
- assertThat (termQuery .getTerm (), equalTo (new Term ("age" , NumericUtils .longToPrefixCoded (34 ))));
224
+ assertThat (parsedQuery , instanceOf (NumericRangeQuery .class ));
225
+ NumericRangeQuery fieldQuery = (NumericRangeQuery ) parsedQuery ;
226
+ assertThat (fieldQuery .getMin ().intValue (), equalTo (34 ));
227
+ assertThat (fieldQuery .getMax ().intValue (), equalTo (34 ));
228
+ assertThat (fieldQuery .includesMax (), equalTo (true ));
229
+ assertThat (fieldQuery .includesMin (), equalTo (true ));
224
230
}
225
231
226
232
@ Test public void testFieldQuery1 () throws IOException {
227
233
IndexQueryParser queryParser = newQueryParser ();
228
234
String query = copyToStringFromClasspath ("/org/elasticsearch/index/query/json/field1.json" );
229
235
Query parsedQuery = queryParser .parse (query );
230
- assertThat (parsedQuery , instanceOf (TermQuery .class ));
231
- TermQuery termQuery = (TermQuery ) parsedQuery ;
232
- // since age is automatically registered in data, we encode it as numeric
233
- assertThat (termQuery .getTerm (), equalTo (new Term ("age" , NumericUtils .longToPrefixCoded (34 ))));
236
+ assertThat (parsedQuery , instanceOf (NumericRangeQuery .class ));
237
+ NumericRangeQuery fieldQuery = (NumericRangeQuery ) parsedQuery ;
238
+ assertThat (fieldQuery .getMin ().intValue (), equalTo (34 ));
239
+ assertThat (fieldQuery .getMax ().intValue (), equalTo (34 ));
240
+ assertThat (fieldQuery .includesMax (), equalTo (true ));
241
+ assertThat (fieldQuery .includesMin (), equalTo (true ));
234
242
}
235
243
236
244
@ Test public void testFieldQuery2 () throws IOException {
@@ -251,31 +259,37 @@ public class SimpleJsonIndexQueryParserTests {
251
259
String query = copyToStringFromClasspath ("/org/elasticsearch/index/query/json/field3.json" );
252
260
Query parsedQuery = queryParser .parse (query );
253
261
assertThat ((double ) parsedQuery .getBoost (), closeTo (2.0 , 0.01 ));
254
- assertThat (parsedQuery , instanceOf (TermQuery .class ));
255
- TermQuery termQuery = (TermQuery ) parsedQuery ;
256
- // since age is automatically registered in data, we encode it as numeric
257
- assertThat (termQuery .getTerm (), equalTo (new Term ("age" , NumericUtils .longToPrefixCoded (34 ))));
262
+ assertThat (parsedQuery , instanceOf (NumericRangeQuery .class ));
263
+ NumericRangeQuery fieldQuery = (NumericRangeQuery ) parsedQuery ;
264
+ assertThat (fieldQuery .getMin ().intValue (), equalTo (34 ));
265
+ assertThat (fieldQuery .getMax ().intValue (), equalTo (34 ));
266
+ assertThat (fieldQuery .includesMax (), equalTo (true ));
267
+ assertThat (fieldQuery .includesMin (), equalTo (true ));
258
268
}
259
269
260
270
@ Test public void testTermWithBoostQueryBuilder () throws IOException {
261
271
IndexQueryParser queryParser = newQueryParser ();
262
272
Query parsedQuery = queryParser .parse (termQuery ("age" , 34 ).boost (2.0f ));
263
- assertThat (parsedQuery , instanceOf (TermQuery .class ));
264
- TermQuery termQuery = (TermQuery ) parsedQuery ;
265
- // since age is automatically registered in data, we encode it as numeric
266
- assertThat (termQuery .getTerm (), equalTo (new Term ("age" , NumericUtils .longToPrefixCoded (34 ))));
267
- assertThat ((double ) termQuery .getBoost (), closeTo (2.0 , 0.01 ));
273
+ assertThat (parsedQuery , instanceOf (NumericRangeQuery .class ));
274
+ NumericRangeQuery fieldQuery = (NumericRangeQuery ) parsedQuery ;
275
+ assertThat (fieldQuery .getMin ().intValue (), equalTo (34 ));
276
+ assertThat (fieldQuery .getMax ().intValue (), equalTo (34 ));
277
+ assertThat (fieldQuery .includesMax (), equalTo (true ));
278
+ assertThat (fieldQuery .includesMin (), equalTo (true ));
279
+ assertThat ((double ) fieldQuery .getBoost (), closeTo (2.0 , 0.01 ));
268
280
}
269
281
270
282
@ Test public void testTermWithBoostQuery () throws IOException {
271
283
IndexQueryParser queryParser = newQueryParser ();
272
284
String query = copyToStringFromClasspath ("/org/elasticsearch/index/query/json/term-with-boost.json" );
273
285
Query parsedQuery = queryParser .parse (query );
274
- assertThat (parsedQuery , instanceOf (TermQuery .class ));
275
- TermQuery termQuery = (TermQuery ) parsedQuery ;
276
- // since age is automatically registered in data, we encode it as numeric
277
- assertThat (termQuery .getTerm (), equalTo (new Term ("age" , NumericUtils .longToPrefixCoded (34 ))));
278
- assertThat ((double ) termQuery .getBoost (), closeTo (2.0 , 0.01 ));
286
+ assertThat (parsedQuery , instanceOf (NumericRangeQuery .class ));
287
+ NumericRangeQuery fieldQuery = (NumericRangeQuery ) parsedQuery ;
288
+ assertThat (fieldQuery .getMin ().intValue (), equalTo (34 ));
289
+ assertThat (fieldQuery .getMax ().intValue (), equalTo (34 ));
290
+ assertThat (fieldQuery .includesMax (), equalTo (true ));
291
+ assertThat (fieldQuery .includesMin (), equalTo (true ));
292
+ assertThat ((double ) fieldQuery .getBoost (), closeTo (2.0 , 0.01 ));
279
293
}
280
294
281
295
@ Test public void testPrefixQueryBuilder () throws IOException {
0 commit comments