From 9f04820e1d2cba3bcee76029589e65a4a2e612db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20B=C3=BCscher?= Date: Fri, 20 Jul 2018 11:15:11 +0200 Subject: [PATCH 1/2] [Tests] Adapt QueryStringQueryBuilderTests expectations With the introduction of field aliases, the toQuery() method now can also return BlendedTermQuery. Added this to the list of expected query classes. --- .../index/query/QueryStringQueryBuilderTests.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/server/src/test/java/org/elasticsearch/index/query/QueryStringQueryBuilderTests.java b/server/src/test/java/org/elasticsearch/index/query/QueryStringQueryBuilderTests.java index 4b9e0f5a66ea8..998a91956cd53 100644 --- a/server/src/test/java/org/elasticsearch/index/query/QueryStringQueryBuilderTests.java +++ b/server/src/test/java/org/elasticsearch/index/query/QueryStringQueryBuilderTests.java @@ -21,6 +21,7 @@ import org.apache.lucene.analysis.MockSynonymAnalyzer; import org.apache.lucene.index.Term; +import org.apache.lucene.queries.BlendedTermQuery; import org.apache.lucene.search.BooleanClause; import org.apache.lucene.search.BooleanClause.Occur; import org.apache.lucene.search.BooleanQuery; @@ -382,10 +383,11 @@ public QueryStringQueryBuilder mutateInstance(QueryStringQueryBuilder instance) protected void doAssertLuceneQuery(QueryStringQueryBuilder queryBuilder, Query query, SearchContext context) throws IOException { assertThat(query, either(instanceOf(TermQuery.class)) - .or(instanceOf(BooleanQuery.class)).or(instanceOf(DisjunctionMaxQuery.class)) - .or(instanceOf(PhraseQuery.class)).or(instanceOf(BoostQuery.class)) - .or(instanceOf(MultiPhrasePrefixQuery.class)).or(instanceOf(PrefixQuery.class)).or(instanceOf(SpanQuery.class)) - .or(instanceOf(MatchNoDocsQuery.class))); + .or(instanceOf(BooleanQuery.class)).or(instanceOf(DisjunctionMaxQuery.class)) + .or(instanceOf(BlendedTermQuery.class)).or(instanceOf(PhraseQuery.class)) + .or(instanceOf(BoostQuery.class)).or(instanceOf(MultiPhrasePrefixQuery.class)) + .or(instanceOf(PrefixQuery.class)).or(instanceOf(SpanQuery.class)) + .or(instanceOf(MatchNoDocsQuery.class))); } // Tests fix for https://github.com/elastic/elasticsearch/issues/29403 From da22a23b2885e6c96074f6ab39926ac5c21c6baf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20B=C3=BCscher?= Date: Fri, 20 Jul 2018 15:13:55 +0200 Subject: [PATCH 2/2] iter --- .../index/query/QueryStringQueryBuilderTests.java | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/server/src/test/java/org/elasticsearch/index/query/QueryStringQueryBuilderTests.java b/server/src/test/java/org/elasticsearch/index/query/QueryStringQueryBuilderTests.java index 998a91956cd53..591ee5af08089 100644 --- a/server/src/test/java/org/elasticsearch/index/query/QueryStringQueryBuilderTests.java +++ b/server/src/test/java/org/elasticsearch/index/query/QueryStringQueryBuilderTests.java @@ -21,7 +21,6 @@ import org.apache.lucene.analysis.MockSynonymAnalyzer; import org.apache.lucene.index.Term; -import org.apache.lucene.queries.BlendedTermQuery; import org.apache.lucene.search.BooleanClause; import org.apache.lucene.search.BooleanClause.Occur; import org.apache.lucene.search.BooleanQuery; @@ -43,7 +42,6 @@ import org.apache.lucene.search.WildcardQuery; import org.apache.lucene.search.spans.SpanNearQuery; import org.apache.lucene.search.spans.SpanOrQuery; -import org.apache.lucene.search.spans.SpanQuery; import org.apache.lucene.search.spans.SpanTermQuery; import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.automaton.TooComplexToDeterminizeException; @@ -52,7 +50,6 @@ import org.elasticsearch.cluster.metadata.IndexMetaData; import org.elasticsearch.common.Strings; import org.elasticsearch.common.compress.CompressedXContent; -import org.elasticsearch.common.lucene.search.MultiPhrasePrefixQuery; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.common.unit.Fuzziness; import org.elasticsearch.common.xcontent.XContentBuilder; @@ -75,7 +72,6 @@ import static org.elasticsearch.index.query.QueryBuilders.queryStringQuery; import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertBooleanSubQuery; import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertDisjunctionSubQuery; -import static org.hamcrest.CoreMatchers.either; import static org.hamcrest.CoreMatchers.equalTo; import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.instanceOf; @@ -382,12 +378,7 @@ public QueryStringQueryBuilder mutateInstance(QueryStringQueryBuilder instance) @Override protected void doAssertLuceneQuery(QueryStringQueryBuilder queryBuilder, Query query, SearchContext context) throws IOException { - assertThat(query, either(instanceOf(TermQuery.class)) - .or(instanceOf(BooleanQuery.class)).or(instanceOf(DisjunctionMaxQuery.class)) - .or(instanceOf(BlendedTermQuery.class)).or(instanceOf(PhraseQuery.class)) - .or(instanceOf(BoostQuery.class)).or(instanceOf(MultiPhrasePrefixQuery.class)) - .or(instanceOf(PrefixQuery.class)).or(instanceOf(SpanQuery.class)) - .or(instanceOf(MatchNoDocsQuery.class))); + // nothing yet, put additional assertions here. } // Tests fix for https://github.com/elastic/elasticsearch/issues/29403