diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2021-11-22 15:56:09 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-22 15:56:09 +0100 |
commit | e4ea529d6b71c7916e3c0f46946503368793a1f3 (patch) | |
tree | 5b728b919b6340d7f1d5155f3d6df3b06446b9a2 | |
parent | ea7d530c80515724f8384ded392da5b9a3ab3741 (diff) | |
parent | 69a175a06709e80e7efb58a7635354f83eb3f38f (diff) |
Merge pull request #20155 from vespa-engine/bjorncs/antlr4v7.505.17
Add unit test of query with missing escaping and unicode char MERGEOK
-rw-r--r-- | container-search/src/test/java/com/yahoo/search/yql/YqlParserTestCase.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/container-search/src/test/java/com/yahoo/search/yql/YqlParserTestCase.java b/container-search/src/test/java/com/yahoo/search/yql/YqlParserTestCase.java index f9005387716..ab99118b179 100644 --- a/container-search/src/test/java/com/yahoo/search/yql/YqlParserTestCase.java +++ b/container-search/src/test/java/com/yahoo/search/yql/YqlParserTestCase.java @@ -4,15 +4,14 @@ package com.yahoo.search.yql; import com.yahoo.component.chain.Chain; import com.yahoo.container.QrSearchersConfig; import com.yahoo.language.Language; -import com.yahoo.language.simple.SimpleLinguistics; import com.yahoo.prelude.Index; import com.yahoo.prelude.IndexFacts; import com.yahoo.prelude.IndexModel; import com.yahoo.prelude.SearchDefinition; import com.yahoo.prelude.query.AndItem; import com.yahoo.prelude.query.BoolItem; -import com.yahoo.prelude.query.IndexedItem; import com.yahoo.prelude.query.ExactStringItem; +import com.yahoo.prelude.query.IndexedItem; import com.yahoo.prelude.query.Item; import com.yahoo.prelude.query.MarkerWordItem; import com.yahoo.prelude.query.PhraseItem; @@ -28,6 +27,7 @@ import com.yahoo.prelude.query.WeakAndItem; import com.yahoo.prelude.query.WordAlternativesItem; import com.yahoo.prelude.query.WordItem; import com.yahoo.prelude.querytransform.QueryRewrite; +import com.yahoo.processing.IllegalInputException; import com.yahoo.search.Query; import com.yahoo.search.Searcher; import com.yahoo.search.config.IndexInfoConfig; @@ -42,7 +42,6 @@ import com.yahoo.search.query.Sorting.Order; import com.yahoo.search.query.Sorting.UcaSorter; import com.yahoo.search.query.parser.Parsable; import com.yahoo.search.query.parser.ParserEnvironment; - import com.yahoo.search.searchchain.Execution; import org.junit.Test; @@ -71,6 +70,13 @@ public class YqlParserTestCase { private final YqlParser parser = new YqlParser(new ParserEnvironment()); @Test + public void failsGracefullyOnMissingQuoteEscapingAndSubsequentUnicodeCharacter() { + assertParseFail("select * from bar where rank(ids contains 'http://en.wikipedia.org/wiki/Hors_d'Ĺ“uvre') limit 10;", + new IllegalInputException("com.yahoo.search.yql.ProgramCompileException: query:L1:79 " + + "no viable alternative at input 'rank(ids contains 'http://en.wikipedia.org/wiki/Hors_d''")); + } + + @Test public void testParserDefaults() { assertTrue(parser.isQueryParser()); assertNull(parser.getDocTypes()); |