private static Query ParseQuery(string input) { var tokenizer = new SelectTokenizer(); var tokens = tokenizer.Tokenize(input); return(Parser.Query.Parse(tokens)); }
public static TokenListParserResult <SelectToken, T> Parse <T>(TokenListParser <SelectToken, T> parser, string input) { var tokenizer = new SelectTokenizer(); var tokens = tokenizer.Tokenize(input); return(parser.AtEnd().TryParse(tokens)); }
private static T Parse <T>(TokenListParser <SelectToken, T> parser, string input) { var tokenizer = new SelectTokenizer(); var tokens = tokenizer.Tokenize(input); return(parser.Parse(tokens)); }
public static void AssertEqual(string expected, Option <OrderClause> actual) { var tokenizer = new SelectTokenizer(); var tokens = tokenizer.Tokenize(expected); var expectedClause = Parser.OrderByClause.Parse(tokens); AssertEqual(expectedClause, actual); }
public void TestKeywordsAreParsedCorrectly(string input, SelectToken expected) { var tokenizer = new SelectTokenizer(); var output = tokenizer.Tokenize(input).ToList(); var token = Assert.Single(output); Assert.Equal(expected, token.Kind); }
public void TestBooleanLiteralsAreParserCorrectly(string input, string expected) { var tokenizer = new SelectTokenizer(); var output = tokenizer.Tokenize(input).ToList(); var token = Assert.Single(output); Assert.Equal(SelectToken.BooleanLiteral, token.Kind); Assert.Equal(expected, token.ToStringValue()); }
public void TestComplexQueryIsParsedCorrectly() { var input = "SELECT * FROM Test WHERE m = 5"; var expected = new[] { SelectToken.Select, SelectToken.Star, SelectToken.From, SelectToken.Identifier, SelectToken.Where, SelectToken.Identifier, SelectToken.Equal, SelectToken.NumberLiteral }; var tokenizer = new SelectTokenizer(); var output = tokenizer.Tokenize(input).ToList(); Assert.Equal(expected, output.Select(x => x.Kind)); }
private static Query ParseQuery(string query) { var tokens = new SelectTokenizer().Tokenize(query); return(Parser.Query(tokens).Value); }