summaryrefslogtreecommitdiff
path: root/core/src/test/java/org/elasticsearch/search
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/test/java/org/elasticsearch/search')
-rw-r--r--core/src/test/java/org/elasticsearch/search/sort/FieldSortBuilderTests.java28
-rw-r--r--core/src/test/java/org/elasticsearch/search/sort/GeoDistanceSortBuilderTests.java24
-rw-r--r--core/src/test/java/org/elasticsearch/search/sort/ScoreSortBuilderTests.java21
3 files changed, 72 insertions, 1 deletions
diff --git a/core/src/test/java/org/elasticsearch/search/sort/FieldSortBuilderTests.java b/core/src/test/java/org/elasticsearch/search/sort/FieldSortBuilderTests.java
index 2c1a4a65c7..f28ec8797c 100644
--- a/core/src/test/java/org/elasticsearch/search/sort/FieldSortBuilderTests.java
+++ b/core/src/test/java/org/elasticsearch/search/sort/FieldSortBuilderTests.java
@@ -20,6 +20,12 @@ x * Licensed to Elasticsearch under one or more contributor
package org.elasticsearch.search.sort;
import org.apache.lucene.search.SortField;
+import org.elasticsearch.common.ParseFieldMatcher;
+import org.elasticsearch.common.ParsingException;
+import org.elasticsearch.common.settings.Settings;
+import org.elasticsearch.common.xcontent.XContentFactory;
+import org.elasticsearch.common.xcontent.XContentParser;
+import org.elasticsearch.index.query.QueryParseContext;
import java.io.IOException;
@@ -103,4 +109,26 @@ public class FieldSortBuilderTests extends AbstractSortTestCase<FieldSortBuilder
assertEquals(builder.getFieldName(), sortField.getField());
}
}
+
+ public void testReverseOptionFails() throws IOException {
+ QueryParseContext context = new QueryParseContext(indicesQueriesRegistry);
+ context.parseFieldMatcher(new ParseFieldMatcher(Settings.EMPTY));
+ String json = "{ \"post_date\" : {\"reverse\" : true} },\n";
+
+ XContentParser parser = XContentFactory.xContent(json).createParser(json);
+ // need to skip until parser is located on second START_OBJECT
+ parser.nextToken();
+ parser.nextToken();
+ parser.nextToken();
+
+ context.reset(parser);
+
+ try {
+ FieldSortBuilder.PROTOTYPE.fromXContent(context, "");
+ fail("adding reverse sorting option should fail with an exception");
+ } catch (ParsingException e) {
+ // all good
+ }
+ }
+
}
diff --git a/core/src/test/java/org/elasticsearch/search/sort/GeoDistanceSortBuilderTests.java b/core/src/test/java/org/elasticsearch/search/sort/GeoDistanceSortBuilderTests.java
index 7544e644b0..e63cb5ad29 100644
--- a/core/src/test/java/org/elasticsearch/search/sort/GeoDistanceSortBuilderTests.java
+++ b/core/src/test/java/org/elasticsearch/search/sort/GeoDistanceSortBuilderTests.java
@@ -21,6 +21,7 @@ package org.elasticsearch.search.sort;
import org.apache.lucene.search.SortField;
+import org.elasticsearch.common.ParsingException;
import org.elasticsearch.common.bytes.BytesArray;
import org.elasticsearch.common.geo.GeoDistance;
import org.elasticsearch.common.geo.GeoPoint;
@@ -202,6 +203,28 @@ public class GeoDistanceSortBuilderTests extends AbstractSortTestCase<GeoDistanc
}
}
+ public void testReverseOptionFails() throws IOException {
+ String json = "{\n" +
+ " \"testname\" : [ {\n" +
+ " \"lat\" : -6.046997540714173,\n" +
+ " \"lon\" : -51.94128329747579\n" +
+ " } ],\n" +
+ " \"reverse\" : true\n" +
+ "}";
+ XContentParser itemParser = XContentHelper.createParser(new BytesArray(json));
+ itemParser.nextToken();
+
+ QueryParseContext context = new QueryParseContext(indicesQueriesRegistry);
+ context.reset(itemParser);
+
+ try {
+ GeoDistanceSortBuilder.PROTOTYPE.fromXContent(context, "");
+ fail("adding reverse sorting option should fail with an exception");
+ } catch (ParsingException e) {
+ assertEquals("Sort option [reverse] no longer supported.", e.getMessage());
+ }
+ }
+
public void testSortModeSumIsRejectedInJSON() throws IOException {
String json = "{\n" +
" \"testname\" : [ {\n" +
@@ -210,7 +233,6 @@ public class GeoDistanceSortBuilderTests extends AbstractSortTestCase<GeoDistanc
" } ],\n" +
" \"unit\" : \"m\",\n" +
" \"distance_type\" : \"sloppy_arc\",\n" +
- " \"reverse\" : true,\n" +
" \"mode\" : \"SUM\",\n" +
" \"coerce\" : false,\n" +
" \"ignore_malformed\" : false\n" +
diff --git a/core/src/test/java/org/elasticsearch/search/sort/ScoreSortBuilderTests.java b/core/src/test/java/org/elasticsearch/search/sort/ScoreSortBuilderTests.java
index 225ae49ad5..6d605fd625 100644
--- a/core/src/test/java/org/elasticsearch/search/sort/ScoreSortBuilderTests.java
+++ b/core/src/test/java/org/elasticsearch/search/sort/ScoreSortBuilderTests.java
@@ -22,6 +22,7 @@ package org.elasticsearch.search.sort;
import org.apache.lucene.search.SortField;
import org.elasticsearch.common.ParseFieldMatcher;
+import org.elasticsearch.common.ParsingException;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.xcontent.XContentFactory;
import org.elasticsearch.common.xcontent.XContentParser;
@@ -81,6 +82,26 @@ public class ScoreSortBuilderTests extends AbstractSortTestCase<ScoreSortBuilder
assertEquals(order, scoreSort.order());
}
+ public void testReverseOptionFails() throws IOException {
+ QueryParseContext context = new QueryParseContext(indicesQueriesRegistry);
+ context.parseFieldMatcher(new ParseFieldMatcher(Settings.EMPTY));
+ String json = "{ \"_score\": { \"reverse\": true }}";
+ XContentParser parser = XContentFactory.xContent(json).createParser(json);
+ // need to skip until parser is located on second START_OBJECT
+ parser.nextToken();
+ parser.nextToken();
+ parser.nextToken();
+
+ context.reset(parser);
+
+ try {
+ ScoreSortBuilder.PROTOTYPE.fromXContent(context, "_score");
+ fail("adding reverse sorting option should fail with an exception");
+ } catch (ParsingException e) {
+ // all good
+ }
+ }
+
@Override
protected void sortFieldAssertions(ScoreSortBuilder builder, SortField sortField) {
assertEquals(SortField.Type.SCORE, sortField.getType());