summaryrefslogtreecommitdiff
path: root/core/src/test/java/org/elasticsearch/search
diff options
context:
space:
mode:
authorMartijn van Groningen <martijn.v.groningen@gmail.com>2017-06-06 16:42:31 +0200
committerMartijn van Groningen <martijn.v.groningen@gmail.com>2017-06-07 10:52:49 +0200
commitdb8aa8e94e13c1cd1445d14a12ca81eaf486af87 (patch)
tree931a916fe477040bed1c16989445a357adeabfe0 /core/src/test/java/org/elasticsearch/search
parent14913fdc37130edc58f33216ef300f6832d28ef1 (diff)
Changed inner_hits to work with the new join field type and
at the same time maintaining support for the `_parent` meta field type/ Relates to #20257
Diffstat (limited to 'core/src/test/java/org/elasticsearch/search')
-rw-r--r--core/src/test/java/org/elasticsearch/search/fetch/subphase/InnerHitsIT.java26
1 files changed, 22 insertions, 4 deletions
diff --git a/core/src/test/java/org/elasticsearch/search/fetch/subphase/InnerHitsIT.java b/core/src/test/java/org/elasticsearch/search/fetch/subphase/InnerHitsIT.java
index 617aa28a0b..8f092383a5 100644
--- a/core/src/test/java/org/elasticsearch/search/fetch/subphase/InnerHitsIT.java
+++ b/core/src/test/java/org/elasticsearch/search/fetch/subphase/InnerHitsIT.java
@@ -38,7 +38,6 @@ import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.SearchHits;
import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder;
import org.elasticsearch.search.sort.FieldSortBuilder;
-import org.elasticsearch.search.sort.SortBuilders;
import org.elasticsearch.search.sort.SortOrder;
import org.elasticsearch.test.ESIntegTestCase;
@@ -46,7 +45,6 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
-import java.util.Locale;
import java.util.Map;
import java.util.function.Function;
@@ -54,7 +52,6 @@ import static org.elasticsearch.action.support.WriteRequest.RefreshPolicy.IMMEDI
import static org.elasticsearch.common.xcontent.XContentFactory.jsonBuilder;
import static org.elasticsearch.common.xcontent.support.XContentMapValues.extractValue;
import static org.elasticsearch.index.query.QueryBuilders.boolQuery;
-import static org.elasticsearch.index.query.QueryBuilders.constantScoreQuery;
import static org.elasticsearch.index.query.QueryBuilders.matchAllQuery;
import static org.elasticsearch.index.query.QueryBuilders.matchQuery;
import static org.elasticsearch.index.query.QueryBuilders.nestedQuery;
@@ -62,9 +59,9 @@ import static org.elasticsearch.index.query.QueryBuilders.termQuery;
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertAcked;
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertAllSuccessful;
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertHitCount;
-import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertSearchHits;
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertNoFailures;
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertSearchHit;
+import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertSearchHits;
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.hasId;
import static org.hamcrest.Matchers.containsString;
import static org.hamcrest.Matchers.equalTo;
@@ -616,4 +613,25 @@ public class InnerHitsIT extends ESIntegTestCase {
assertSearchHits(response, "1", "3");
}
+ public void testDontExplode() throws Exception {
+ assertAcked(prepareCreate("index2").addMapping("type", "nested", "type=nested"));
+ client().prepareIndex("index2", "type", "1").setSource(jsonBuilder().startObject()
+ .startArray("nested")
+ .startObject()
+ .field("field", "value1")
+ .endObject()
+ .endArray()
+ .endObject())
+ .setRefreshPolicy(IMMEDIATE)
+ .get();
+
+ QueryBuilder query = nestedQuery("nested", matchQuery("nested.field", "value1"), ScoreMode.Avg)
+ .innerHit(new InnerHitBuilder().setSize(ArrayUtil.MAX_ARRAY_LENGTH - 1));
+ SearchResponse response = client().prepareSearch("index2")
+ .setQuery(query)
+ .get();
+ assertNoFailures(response);
+ assertHitCount(response, 1);
+ }
+
}