@@ -51,6 +51,7 @@ protected RangeQueryBuilder createTestQueryBuilder() {
51
51
// switch between numeric and date ranges
52
52
if (randomBoolean ()) {
53
53
if (randomBoolean ()) {
54
+ query = new RangeQueryBuilder (INT_FIELD_NAME );
54
55
query .from (randomIntBetween (1 , 100 ));
55
56
query .to (randomIntBetween (101 , 200 ));
56
57
} else {
@@ -88,20 +89,26 @@ protected RangeQueryBuilder createTestQueryBuilder() {
88
89
@ Override
89
90
protected void assertLuceneQuery (RangeQueryBuilder queryBuilder , Query query , QueryParseContext context ) throws IOException {
90
91
assertThat (query .getBoost (), is (queryBuilder .boost ()));
91
- if (!queryBuilder .fieldname ().equals (DATE_FIELD_NAME )) {
92
+ String fieldname = queryBuilder .fieldname ();
93
+ if (!fieldname .equals (DATE_FIELD_NAME ) && !fieldname .equals (INT_FIELD_NAME )) {
92
94
assertThat (query , instanceOf (TermRangeQuery .class ));
93
95
TermRangeQuery termRangeQuery = (TermRangeQuery ) query ;
94
96
assertThat (termRangeQuery .includesLower (), is (queryBuilder .includeLower ()));
95
97
assertThat (termRangeQuery .includesUpper (), is (queryBuilder .includeUpper ()));
96
98
assertThat (termRangeQuery .getLowerTerm (), is (BytesRefs .toBytesRef (queryBuilder .from ())));
97
99
assertThat (termRangeQuery .getUpperTerm (), is (BytesRefs .toBytesRef (queryBuilder .to ())));
98
- assertThat (termRangeQuery .getField (), is (queryBuilder . fieldname () ));
99
- } else {
100
+ assertThat (termRangeQuery .getField (), is (fieldname ));
101
+ } else if ( fieldname . equals ( DATE_FIELD_NAME )) {
100
102
assertThat (query , instanceOf (LateParsingQuery .class ));
101
103
Long min = expectedDateLong (queryBuilder .from (), queryBuilder , context );
102
104
Long max = expectedDateLong (queryBuilder .to (), queryBuilder , context );
103
105
Query expectedQuery = NumericRangeQuery .newLongRange (DATE_FIELD_NAME , min , max , queryBuilder .includeLower (), queryBuilder .includeUpper ());
104
106
assertEquals (query .rewrite (null ), expectedQuery .rewrite (null ));
107
+ } else {
108
+ assertThat (query , instanceOf (NumericRangeQuery .class ));
109
+ Query expectedQuery = NumericRangeQuery .newIntRange (INT_FIELD_NAME , (Integer ) queryBuilder .from (), (Integer ) queryBuilder .to (), queryBuilder .includeLower (), queryBuilder .includeUpper ());
110
+ expectedQuery .setBoost (testQuery .boost ());
111
+ assertEquals (query , expectedQuery );
105
112
}
106
113
if (queryBuilder .queryName () != null ) {
107
114
Query namedQuery = context .copyNamedFilters ().get (queryBuilder .queryName ());
0 commit comments