diff --git a/src/tokenizer.rs b/src/tokenizer.rs index 304bf4db..8666563a 100644 --- a/src/tokenizer.rs +++ b/src/tokenizer.rs @@ -4147,4 +4147,23 @@ mod tests { panic!("Tokenizer should have failed on {sql}, but it succeeded with {tokens:?}"); } } + + #[test] + fn tokenize_question_mark() { + let dialect = PostgreSqlDialect {}; + let sql = "SELECT x ? y"; + let tokens = Tokenizer::new(&dialect, sql).tokenize().unwrap(); + compare( + tokens, + vec![ + Token::make_keyword("SELECT"), + Token::Whitespace(Whitespace::Space), + Token::make_word("x", None), + Token::Whitespace(Whitespace::Space), + Token::Question, + Token::Whitespace(Whitespace::Space), + Token::make_word("y", None), + ], + ) + } } diff --git a/tests/sqlparser_postgres.rs b/tests/sqlparser_postgres.rs index 345d8777..9f4564ef 100644 --- a/tests/sqlparser_postgres.rs +++ b/tests/sqlparser_postgres.rs @@ -7914,20 +7914,3 @@ fn parse_create_operator_class() { ) .is_err()); } - -#[test] -fn tokenize_question_mark() { - let sql = "SELECT x ? y"; - pg().tokenizes_to( - sql, - vec![ - Token::make_keyword("SELECT"), - Token::Whitespace(Whitespace::Space), - Token::make_word("x", None), - Token::Whitespace(Whitespace::Space), - Token::Question, - Token::Whitespace(Whitespace::Space), - Token::make_word("y", None), - ], - ) -}