Skip to content

Commit a848935

Browse files
committed
ensure tests are testing the right things
1 parent 3b83b5f commit a848935

File tree

2 files changed

+20
-26
lines changed

2 files changed

+20
-26
lines changed

tests/sqlparser_common.rs

Lines changed: 19 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -567,19 +567,16 @@ fn parse_not_precedence() {
567567
);
568568

569569
// NOT has lower precedence than LIKE, so the following parses as NOT ('a' NOT LIKE 'b')
570-
let sql = "CAST('a' AS NOT) NOT LIKE 'b'";
570+
let sql = "NOT 'a' NOT LIKE 'b'";
571571
assert_eq!(
572572
verified_expr(sql),
573-
Expr::BinaryOp {
574-
left: Box::new(Expr::Cast {
575-
expr: Box::new(Expr::Value(Value::SingleQuotedString("a".into()))),
576-
data_type: DataType::Custom(ObjectName(vec![Ident {
577-
value: "NOT".into(),
578-
quote_style: None
579-
}]))
573+
Expr::UnaryOp {
574+
op: UnaryOperator::Not,
575+
expr: Box::new(Expr::BinaryOp {
576+
left: Box::new(Expr::Value(Value::SingleQuotedString("a".into()))),
577+
op: BinaryOperator::NotLike,
578+
right: Box::new(Expr::Value(Value::SingleQuotedString("b".into()))),
580579
}),
581-
op: BinaryOperator::NotLike,
582-
right: Box::new(Expr::Value(Value::SingleQuotedString("b".into())))
583580
},
584581
);
585582

@@ -1439,40 +1436,38 @@ fn parse_literal_string() {
14391436

14401437
#[test]
14411438
fn parse_literal_date() {
1442-
let sql = "SELECT CAST('1999-01-01' AS date)";
1439+
let sql = "SELECT date '1999-01-01'";
14431440
let select = verified_only_select(sql);
14441441
assert_eq!(
1445-
&Expr::Cast {
1446-
expr: Box::new(Expr::Value(Value::SingleQuotedString("1999-01-01".into()))),
1447-
data_type: DataType::Date
1442+
&Expr::TypedString {
1443+
data_type: DataType::Date,
1444+
value: "1999-01-01".into()
14481445
},
14491446
expr_from_projection(only(&select.projection)),
14501447
);
14511448
}
14521449

14531450
#[test]
14541451
fn parse_literal_time() {
1455-
let sql = "SELECT CAST('01:23:34' AS time)";
1452+
let sql = "SELECT time '01:23:34'";
14561453
let select = verified_only_select(sql);
14571454
assert_eq!(
1458-
&Expr::Cast {
1459-
expr: Box::new(Expr::Value(Value::SingleQuotedString("01:23:34".into()))),
1460-
data_type: DataType::Time
1455+
&Expr::TypedString {
1456+
data_type: DataType::Time,
1457+
value: "01:23:34".into()
14611458
},
14621459
expr_from_projection(only(&select.projection)),
14631460
);
14641461
}
14651462

14661463
#[test]
14671464
fn parse_literal_timestamp() {
1468-
let sql = "SELECT CAST('1999-01-01 01:23:34' AS timestamp)";
1465+
let sql = "SELECT timestamp '1999-01-01 01:23:34'";
14691466
let select = verified_only_select(sql);
14701467
assert_eq!(
1471-
&Expr::Cast {
1472-
expr: Box::new(Expr::Value(Value::SingleQuotedString(
1473-
"1999-01-01 01:23:34".into()
1474-
))),
1475-
data_type: DataType::Timestamp
1468+
&Expr::TypedString {
1469+
data_type: DataType::Timestamp,
1470+
value: "1999-01-01 01:23:34".into()
14761471
},
14771472
expr_from_projection(only(&select.projection)),
14781473
);

tests/sqlparser_mssql.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,7 @@ fn parse_mssql_identifiers() {
4141

4242
#[test]
4343
fn parse_mssql_single_quoted_aliases() {
44-
let _ = ms_and_generic()
45-
.one_statement_parses_to("SELECT foo 'alias'", "SELECT CAST('alias' AS foo)");
44+
let _ = ms_and_generic().one_statement_parses_to("SELECT foo 'alias'", "SELECT foo AS 'alias'");
4645
}
4746

4847
#[test]

0 commit comments

Comments
 (0)