@Test
public void testExpensiveQueryParsing() {
final String yqlQuery = "select * from sources * where "
+ "([{\"ranked\": false}](foo contains \"a\" "
+ "and ([{\"ranked\": true}](bar contains \"b\" "
+ "or ([{\"ranked\": false}](foo contains \"c\" "
+ "and foo contains ([{\"ranked\": true}]\"d\")))))));";
ProgramParser parser = new ProgramParser();
OperatorNode<?> ast;
long start = System.currentTimeMillis();
try {
ast = parser.parse("query", yqlQuery);
} catch (IOException | RecognitionException e) {
throw new IllegalArgumentException(e);
}
long elapsed = System.currentTimeMillis() - start;
Assert.assertNotNull(ast);
System.out.println("Parsing required " + elapsed + " ms");
}
ProgramParserTest.java 文件源码
java
阅读 25
收藏 0
点赞 0
评论 0
项目:yql-plus
作者:
评论列表
文章目录