mirror of https://github.com/apache/lucene.git
Enforce at least one bound != null for NumericRangeQuery to be consistent with other range query types
git-svn-id: https://svn.apache.org/repos/asf/lucene/java/trunk@788295 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
5f61172464
commit
1e61831f8a
|
@ -127,6 +127,8 @@ public final class NumericRangeQuery extends MultiTermQuery {
|
||||||
Number min, Number max, final boolean minInclusive, final boolean maxInclusive
|
Number min, Number max, final boolean minInclusive, final boolean maxInclusive
|
||||||
) {
|
) {
|
||||||
assert (valSize == 32 || valSize == 64);
|
assert (valSize == 32 || valSize == 64);
|
||||||
|
if (min == null && max == null)
|
||||||
|
throw new IllegalArgumentException("At least one value must be non-null");
|
||||||
if (precisionStep < 1 || precisionStep > valSize)
|
if (precisionStep < 1 || precisionStep > valSize)
|
||||||
throw new IllegalArgumentException("precisionStep may only be 1.."+valSize);
|
throw new IllegalArgumentException("precisionStep may only be 1.."+valSize);
|
||||||
this.field = field.intern();
|
this.field = field.intern();
|
||||||
|
|
|
@ -385,7 +385,6 @@ public class TestNumericRangeQuery32 extends LuceneTestCase {
|
||||||
QueryUtils.checkHashEquals(NumericRangeQuery.newIntRange("test4", 4, new Integer(10), new Integer(20), false, false));
|
QueryUtils.checkHashEquals(NumericRangeQuery.newIntRange("test4", 4, new Integer(10), new Integer(20), false, false));
|
||||||
QueryUtils.checkHashEquals(NumericRangeQuery.newIntRange("test5", 4, new Integer(10), null, true, true));
|
QueryUtils.checkHashEquals(NumericRangeQuery.newIntRange("test5", 4, new Integer(10), null, true, true));
|
||||||
QueryUtils.checkHashEquals(NumericRangeQuery.newIntRange("test6", 4, null, new Integer(20), true, true));
|
QueryUtils.checkHashEquals(NumericRangeQuery.newIntRange("test6", 4, null, new Integer(20), true, true));
|
||||||
QueryUtils.checkHashEquals(NumericRangeQuery.newIntRange("test7", 4, null, null, true, true));
|
|
||||||
QueryUtils.checkEqual(
|
QueryUtils.checkEqual(
|
||||||
NumericRangeQuery.newIntRange("test8", 4, new Integer(10), new Integer(20), true, true),
|
NumericRangeQuery.newIntRange("test8", 4, new Integer(10), new Integer(20), true, true),
|
||||||
NumericRangeQuery.newIntRange("test8", 4, new Integer(10), new Integer(20), true, true)
|
NumericRangeQuery.newIntRange("test8", 4, new Integer(10), new Integer(20), true, true)
|
||||||
|
|
|
@ -385,7 +385,6 @@ public class TestNumericRangeQuery64 extends LuceneTestCase {
|
||||||
QueryUtils.checkHashEquals(NumericRangeQuery.newLongRange("test4", 4, new Long(10L), new Long(20L), false, false));
|
QueryUtils.checkHashEquals(NumericRangeQuery.newLongRange("test4", 4, new Long(10L), new Long(20L), false, false));
|
||||||
QueryUtils.checkHashEquals(NumericRangeQuery.newLongRange("test5", 4, new Long(10L), null, true, true));
|
QueryUtils.checkHashEquals(NumericRangeQuery.newLongRange("test5", 4, new Long(10L), null, true, true));
|
||||||
QueryUtils.checkHashEquals(NumericRangeQuery.newLongRange("test6", 4, null, new Long(20L), true, true));
|
QueryUtils.checkHashEquals(NumericRangeQuery.newLongRange("test6", 4, null, new Long(20L), true, true));
|
||||||
QueryUtils.checkHashEquals(NumericRangeQuery.newLongRange("test7", 4, null, null, true, true));
|
|
||||||
QueryUtils.checkEqual(
|
QueryUtils.checkEqual(
|
||||||
NumericRangeQuery.newLongRange("test8", 4, new Long(10L), new Long(20L), true, true),
|
NumericRangeQuery.newLongRange("test8", 4, new Long(10L), new Long(20L), true, true),
|
||||||
NumericRangeQuery.newLongRange("test8", 4, new Long(10L), new Long(20L), true, true)
|
NumericRangeQuery.newLongRange("test8", 4, new Long(10L), new Long(20L), true, true)
|
||||||
|
|
Loading…
Reference in New Issue