[TEST] add test for match query parsing error when providing an array of terms

Match query throws parsing errors when an array of terms is provided, we should test that to make sure this behaviour doesn't change.

Relates to #15741
This commit is contained in:
javanna 2016-09-13 12:46:11 +02:00 committed by Luca Cavanna
parent 10dcfa3304
commit 7894eba2b3
1 changed files with 18 additions and 0 deletions

View File

@ -431,4 +431,22 @@ public class MatchQueryBuilderTests extends AbstractQueryTestCase<MatchQueryBuil
e = expectThrows(ParsingException.class, () -> parseQuery(shortJson)); e = expectThrows(ParsingException.class, () -> parseQuery(shortJson));
assertEquals("[match] query doesn't support multiple fields, found [message1] and [message2]", e.getMessage()); assertEquals("[match] query doesn't support multiple fields, found [message1] and [message2]", e.getMessage());
} }
public void testParseFailsWithTermsArray() throws Exception {
String json1 = "{\n" +
" \"match\" : {\n" +
" \"message1\" : {\n" +
" \"query\" : [\"term1\", \"term2\"]\n" +
" }\n" +
" }\n" +
"}";
expectThrows(ParsingException.class, () -> parseQuery(json1));
String json2 = "{\n" +
" \"match\" : {\n" +
" \"message1\" : [\"term1\", \"term2\"]\n" +
" }\n" +
"}";
expectThrows(IllegalStateException.class, () -> parseQuery(json2));
}
} }