Skip to content

Commit 3c1df18

Browse files
committed
use Expr::value in tests
1 parent 6925451 commit 3c1df18

11 files changed

+241
-250
lines changed

src/ast/value.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,12 @@ impl core::hash::Hash for ValueWithSpan {
6363
}
6464
}
6565

66+
impl From<Value> for ValueWithSpan {
67+
fn from(value: Value) -> Self {
68+
value.with_empty_span()
69+
}
70+
}
71+
6672
impl From<ValueWithSpan> for Value {
6773
fn from(value: ValueWithSpan) -> Self {
6874
value.value

tests/sqlparser_bigquery.rs

Lines changed: 36 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -624,16 +624,16 @@ fn parse_tuple_struct_literal() {
624624
assert_eq!(2, select.projection.len());
625625
assert_eq!(
626626
&Expr::Tuple(vec![
627-
Expr::Value(number("1").with_empty_span()),
628-
Expr::Value(number("2").with_empty_span()),
629-
Expr::Value(number("3").with_empty_span()),
627+
Expr::value(number("1")),
628+
Expr::value(number("2")),
629+
Expr::value(number("3")),
630630
]),
631631
expr_from_projection(&select.projection[0])
632632
);
633633
assert_eq!(
634634
&Expr::Tuple(vec![
635-
Expr::Value(number("1").with_empty_span()),
636-
Expr::Value(number("1.0").with_empty_span()),
635+
Expr::value(number("1")),
636+
Expr::value(number("1.0")),
637637
Expr::Value(Value::SingleQuotedString("123".into()).with_empty_span()),
638638
Expr::Value(Value::Boolean(true).with_empty_span())
639639
]),
@@ -651,9 +651,9 @@ fn parse_typeless_struct_syntax() {
651651
assert_eq!(
652652
&Expr::Struct {
653653
values: vec![
654-
Expr::Value(number("1").with_empty_span()),
655-
Expr::Value(number("2").with_empty_span()),
656-
Expr::Value(number("3").with_empty_span()),
654+
Expr::value(number("1")),
655+
Expr::value(number("2")),
656+
Expr::value(number("3")),
657657
],
658658
fields: Default::default()
659659
},
@@ -673,7 +673,7 @@ fn parse_typeless_struct_syntax() {
673673
assert_eq!(
674674
&Expr::Struct {
675675
values: vec![
676-
Expr::Value(number("1").with_empty_span()),
676+
Expr::value(number("1")),
677677
Expr::CompoundIdentifier(vec![Ident::from("t"), Ident::from("str_col")]),
678678
],
679679
fields: Default::default()
@@ -685,7 +685,7 @@ fn parse_typeless_struct_syntax() {
685685
&Expr::Struct {
686686
values: vec![
687687
Expr::Named {
688-
expr: Expr::Value(number("1").with_empty_span()).into(),
688+
expr: Expr::value(number("1")).into(),
689689
name: Ident::from("a")
690690
},
691691
Expr::Named {
@@ -721,7 +721,7 @@ fn parse_typed_struct_syntax_bigquery() {
721721
assert_eq!(3, select.projection.len());
722722
assert_eq!(
723723
&Expr::Struct {
724-
values: vec![Expr::Value(number("5").with_empty_span())],
724+
values: vec![Expr::value(number("5"))],
725725
fields: vec![StructField {
726726
field_name: None,
727727
field_type: DataType::Int64,
@@ -732,7 +732,7 @@ fn parse_typed_struct_syntax_bigquery() {
732732
assert_eq!(
733733
&Expr::Struct {
734734
values: vec![
735-
Expr::Value(number("1").with_empty_span()),
735+
Expr::value(number("1")),
736736
Expr::CompoundIdentifier(vec![
737737
Ident {
738738
value: "t".into(),
@@ -881,7 +881,7 @@ fn parse_typed_struct_syntax_bigquery() {
881881
);
882882
assert_eq!(
883883
&Expr::Struct {
884-
values: vec![Expr::Value(number("5.0").with_empty_span())],
884+
values: vec![Expr::value(number("5.0"))],
885885
fields: vec![StructField {
886886
field_name: None,
887887
field_type: DataType::Float64
@@ -891,7 +891,7 @@ fn parse_typed_struct_syntax_bigquery() {
891891
);
892892
assert_eq!(
893893
&Expr::Struct {
894-
values: vec![Expr::Value(number("1").with_empty_span())],
894+
values: vec![Expr::value(number("1"))],
895895
fields: vec![StructField {
896896
field_name: None,
897897
field_type: DataType::Int64
@@ -1016,10 +1016,7 @@ fn parse_typed_struct_syntax_bigquery() {
10161016
assert_eq!(1, select.projection.len());
10171017
assert_eq!(
10181018
&Expr::Struct {
1019-
values: vec![
1020-
Expr::Value(number("1").with_empty_span()),
1021-
Expr::Value(number("2").with_empty_span()),
1022-
],
1019+
values: vec![Expr::value(number("1")), Expr::value(number("2")),],
10231020
fields: vec![
10241021
StructField {
10251022
field_name: Some("key".into()),
@@ -1045,7 +1042,7 @@ fn parse_typed_struct_syntax_bigquery_and_generic() {
10451042
assert_eq!(3, select.projection.len());
10461043
assert_eq!(
10471044
&Expr::Struct {
1048-
values: vec![Expr::Value(number("5").with_empty_span())],
1045+
values: vec![Expr::value(number("5"))],
10491046
fields: vec![StructField {
10501047
field_name: None,
10511048
field_type: DataType::Int64,
@@ -1056,7 +1053,7 @@ fn parse_typed_struct_syntax_bigquery_and_generic() {
10561053
assert_eq!(
10571054
&Expr::Struct {
10581055
values: vec![
1059-
Expr::Value(number("1").with_empty_span()),
1056+
Expr::value(number("1")),
10601057
Expr::CompoundIdentifier(vec![
10611058
Ident {
10621059
value: "t".into(),
@@ -1177,7 +1174,7 @@ fn parse_typed_struct_syntax_bigquery_and_generic() {
11771174
);
11781175
assert_eq!(
11791176
&Expr::Struct {
1180-
values: vec![Expr::Value(number("5.0").with_empty_span())],
1177+
values: vec![Expr::value(number("5.0"))],
11811178
fields: vec![StructField {
11821179
field_name: None,
11831180
field_type: DataType::Float64
@@ -1187,7 +1184,7 @@ fn parse_typed_struct_syntax_bigquery_and_generic() {
11871184
);
11881185
assert_eq!(
11891186
&Expr::Struct {
1190-
values: vec![Expr::Value(number("1").with_empty_span())],
1187+
values: vec![Expr::value(number("1"))],
11911188
fields: vec![StructField {
11921189
field_name: None,
11931190
field_type: DataType::Int64
@@ -1314,7 +1311,7 @@ fn parse_typed_struct_with_field_name_bigquery() {
13141311
assert_eq!(2, select.projection.len());
13151312
assert_eq!(
13161313
&Expr::Struct {
1317-
values: vec![Expr::Value(number("5").with_empty_span())],
1314+
values: vec![Expr::value(number("5"))],
13181315
fields: vec![StructField {
13191316
field_name: Some(Ident::from("x")),
13201317
field_type: DataType::Int64
@@ -1340,10 +1337,7 @@ fn parse_typed_struct_with_field_name_bigquery() {
13401337
assert_eq!(1, select.projection.len());
13411338
assert_eq!(
13421339
&Expr::Struct {
1343-
values: vec![
1344-
Expr::Value(number("5").with_empty_span()),
1345-
Expr::Value(number("5").with_empty_span()),
1346-
],
1340+
values: vec![Expr::value(number("5")), Expr::value(number("5")),],
13471341
fields: vec![
13481342
StructField {
13491343
field_name: Some(Ident::from("x")),
@@ -1366,7 +1360,7 @@ fn parse_typed_struct_with_field_name_bigquery_and_generic() {
13661360
assert_eq!(2, select.projection.len());
13671361
assert_eq!(
13681362
&Expr::Struct {
1369-
values: vec![Expr::Value(number("5").with_empty_span())],
1363+
values: vec![Expr::value(number("5"))],
13701364
fields: vec![StructField {
13711365
field_name: Some(Ident::from("x")),
13721366
field_type: DataType::Int64
@@ -1392,10 +1386,7 @@ fn parse_typed_struct_with_field_name_bigquery_and_generic() {
13921386
assert_eq!(1, select.projection.len());
13931387
assert_eq!(
13941388
&Expr::Struct {
1395-
values: vec![
1396-
Expr::Value(number("5").with_empty_span()),
1397-
Expr::Value(number("5").with_empty_span()),
1398-
],
1389+
values: vec![Expr::value(number("5")), Expr::value(number("5")),],
13991390
fields: vec![
14001391
StructField {
14011392
field_name: Some(Ident::from("x")),
@@ -1683,21 +1674,18 @@ fn parse_merge() {
16831674
columns: vec![Ident::new("product"), Ident::new("quantity")],
16841675
kind: MergeInsertKind::Values(Values {
16851676
explicit_row: false,
1686-
rows: vec![vec![
1687-
Expr::Value(number("1").with_empty_span()),
1688-
Expr::Value(number("2").with_empty_span()),
1689-
]],
1677+
rows: vec![vec![Expr::value(number("1")), Expr::value(number("2"))]],
16901678
}),
16911679
});
16921680
let update_action = MergeAction::Update {
16931681
assignments: vec![
16941682
Assignment {
16951683
target: AssignmentTarget::ColumnName(ObjectName::from(vec![Ident::new("a")])),
1696-
value: Expr::Value(number("1").with_empty_span()),
1684+
value: Expr::value(number("1")),
16971685
},
16981686
Assignment {
16991687
target: AssignmentTarget::ColumnName(ObjectName::from(vec![Ident::new("b")])),
1700-
value: Expr::Value(number("2").with_empty_span()),
1688+
value: Expr::value(number("2")),
17011689
},
17021690
],
17031691
};
@@ -1751,12 +1739,12 @@ fn parse_merge() {
17511739
vec![
17521740
MergeClause {
17531741
clause_kind: MergeClauseKind::NotMatched,
1754-
predicate: Some(Expr::Value(number("1").with_empty_span())),
1742+
predicate: Some(Expr::value(number("1"))),
17551743
action: insert_action.clone(),
17561744
},
17571745
MergeClause {
17581746
clause_kind: MergeClauseKind::NotMatchedByTarget,
1759-
predicate: Some(Expr::Value(number("1").with_empty_span())),
1747+
predicate: Some(Expr::value(number("1"))),
17601748
action: insert_action.clone(),
17611749
},
17621750
MergeClause {
@@ -1766,7 +1754,7 @@ fn parse_merge() {
17661754
},
17671755
MergeClause {
17681756
clause_kind: MergeClauseKind::NotMatchedBySource,
1769-
predicate: Some(Expr::Value(number("2").with_empty_span())),
1757+
predicate: Some(Expr::value(number("2"))),
17701758
action: MergeAction::Delete
17711759
},
17721760
MergeClause {
@@ -1776,12 +1764,12 @@ fn parse_merge() {
17761764
},
17771765
MergeClause {
17781766
clause_kind: MergeClauseKind::NotMatchedBySource,
1779-
predicate: Some(Expr::Value(number("1").with_empty_span())),
1767+
predicate: Some(Expr::value(number("1"))),
17801768
action: update_action.clone(),
17811769
},
17821770
MergeClause {
17831771
clause_kind: MergeClauseKind::NotMatched,
1784-
predicate: Some(Expr::Value(number("1").with_empty_span())),
1772+
predicate: Some(Expr::value(number("1"))),
17851773
action: MergeAction::Insert(MergeInsertExpr {
17861774
columns: vec![Ident::new("product"), Ident::new("quantity"),],
17871775
kind: MergeInsertKind::Row,
@@ -1797,7 +1785,7 @@ fn parse_merge() {
17971785
},
17981786
MergeClause {
17991787
clause_kind: MergeClauseKind::NotMatched,
1800-
predicate: Some(Expr::Value(number("1").with_empty_span())),
1788+
predicate: Some(Expr::value(number("1"))),
18011789
action: MergeAction::Insert(MergeInsertExpr {
18021790
columns: vec![],
18031791
kind: MergeInsertKind::Row
@@ -1813,7 +1801,7 @@ fn parse_merge() {
18131801
},
18141802
MergeClause {
18151803
clause_kind: MergeClauseKind::Matched,
1816-
predicate: Some(Expr::Value(number("1").with_empty_span())),
1804+
predicate: Some(Expr::value(number("1"))),
18171805
action: MergeAction::Delete,
18181806
},
18191807
MergeClause {
@@ -1829,7 +1817,7 @@ fn parse_merge() {
18291817
kind: MergeInsertKind::Values(Values {
18301818
explicit_row: false,
18311819
rows: vec![vec![
1832-
Expr::Value(number("1").with_empty_span()),
1820+
Expr::value(number("1")),
18331821
Expr::Identifier(Ident::new("DEFAULT")),
18341822
]]
18351823
})
@@ -1843,7 +1831,7 @@ fn parse_merge() {
18431831
kind: MergeInsertKind::Values(Values {
18441832
explicit_row: false,
18451833
rows: vec![vec![
1846-
Expr::Value(number("1").with_empty_span()),
1834+
Expr::value(number("1")),
18471835
Expr::Identifier(Ident::new("DEFAULT")),
18481836
]]
18491837
})
@@ -2044,7 +2032,7 @@ fn parse_map_access_expr() {
20442032
AccessExpr::Subscript(Subscript::Index {
20452033
index: Expr::UnaryOp {
20462034
op: UnaryOperator::Minus,
2047-
expr: Expr::Value(number("1").with_empty_span()).into(),
2035+
expr: Expr::value(number("1")).into(),
20482036
},
20492037
}),
20502038
AccessExpr::Subscript(Subscript::Index {

tests/sqlparser_clickhouse.rs

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1082,19 +1082,19 @@ fn parse_select_order_by_with_fill_interpolate() {
10821082
asc: Some(true),
10831083
nulls_first: Some(true),
10841084
with_fill: Some(WithFill {
1085-
from: Some(Expr::Value((number("10")).with_empty_span())),
1086-
to: Some(Expr::Value((number("20")).with_empty_span())),
1087-
step: Some(Expr::Value((number("2")).with_empty_span())),
1085+
from: Some(Expr::value(number("10"))),
1086+
to: Some(Expr::value(number("20"))),
1087+
step: Some(Expr::value(number("2"))),
10881088
}),
10891089
},
10901090
OrderByExpr {
10911091
expr: Expr::Identifier(Ident::new("lname")),
10921092
asc: Some(false),
10931093
nulls_first: Some(false),
10941094
with_fill: Some(WithFill {
1095-
from: Some(Expr::Value((number("30")).with_empty_span())),
1096-
to: Some(Expr::Value((number("40")).with_empty_span())),
1097-
step: Some(Expr::Value((number("3")).with_empty_span())),
1095+
from: Some(Expr::value(number("30"))),
1096+
to: Some(Expr::value(number("40"))),
1097+
step: Some(Expr::value(number("3"))),
10981098
}),
10991099
},
11001100
],
@@ -1104,17 +1104,14 @@ fn parse_select_order_by_with_fill_interpolate() {
11041104
expr: Some(Expr::BinaryOp {
11051105
left: Box::new(Expr::Identifier(Ident::new("col1"))),
11061106
op: BinaryOperator::Plus,
1107-
right: Box::new(Expr::Value((number("1")).with_empty_span())),
1107+
right: Box::new(Expr::value(number("1"))),
11081108
}),
11091109
}])
11101110
})
11111111
},
11121112
select.order_by.expect("ORDER BY expected")
11131113
);
1114-
assert_eq!(
1115-
Some(Expr::Value((number("2")).with_empty_span())),
1116-
select.limit
1117-
);
1114+
assert_eq!(Some(Expr::value(number("2"))), select.limit);
11181115
}
11191116

11201117
#[test]
@@ -1155,9 +1152,9 @@ fn parse_with_fill() {
11551152
let select = clickhouse().verified_query(sql);
11561153
assert_eq!(
11571154
Some(WithFill {
1158-
from: Some(Expr::Value((number("10")).with_empty_span())),
1159-
to: Some(Expr::Value((number("20")).with_empty_span())),
1160-
step: Some(Expr::Value((number("2")).with_empty_span())),
1155+
from: Some(Expr::value(number("10"))),
1156+
to: Some(Expr::value(number("20"))),
1157+
step: Some(Expr::value(number("2"))),
11611158
}),
11621159
select.order_by.expect("ORDER BY expected").exprs[0].with_fill
11631160
);
@@ -1194,7 +1191,7 @@ fn parse_interpolate_body_with_columns() {
11941191
expr: Some(Expr::BinaryOp {
11951192
left: Box::new(Expr::Identifier(Ident::new("col1"))),
11961193
op: BinaryOperator::Plus,
1197-
right: Box::new(Expr::Value((number("1")).with_empty_span())),
1194+
right: Box::new(Expr::value(number("1"))),
11981195
}),
11991196
},
12001197
InterpolateExpr {
@@ -1206,7 +1203,7 @@ fn parse_interpolate_body_with_columns() {
12061203
expr: Some(Expr::BinaryOp {
12071204
left: Box::new(Expr::Identifier(Ident::new("col4"))),
12081205
op: BinaryOperator::Plus,
1209-
right: Box::new(Expr::Value((number("4")).with_empty_span())),
1206+
right: Box::new(Expr::value(number("4"))),
12101207
}),
12111208
},
12121209
])

0 commit comments

Comments
 (0)