@@ -624,97 +624,102 @@ mod update_from_subquery_tests {
624
624
}
625
625
}
626
626
627
- // #[cfg(test)]
628
- // mod update_from_table_function_tests {
629
- // use super::test_utils::update_from ;
630
- // use crate::expression::test_utils::{
631
- // binary_op_expression, identifier_expression, numeric_literal_expression,
632
- // };
633
- // use crate::parser::test_utils::*;
634
- // use crate::{BinaryOp, FromClause, Identifier, SelectFromFunction, Statement};
627
+ #[ cfg( test) ]
628
+ mod update_from_table_function_tests {
629
+ use super :: test_utils:: update_statement2 ;
630
+ use crate :: expression:: test_utils:: {
631
+ binary_op_expression, identifier_expression, numeric_literal_expression,
632
+ } ;
633
+ use crate :: parser:: test_utils:: * ;
634
+ use crate :: { BinaryOp , FromClause , Identifier , SelectFromFunction , Statement } ;
635
635
636
- // #[test]
637
- // fn test_update_from_table_function() {
638
- // let expected_statement = update_from(FromClause::Function(SelectFromFunction {
639
- // function_name: Identifier::Single("function_1".to_string()),
640
- // arguments: vec![numeric_literal_expression("1")],
641
- // alias: None,
642
- // }));
636
+ #[ test]
637
+ fn update_from_table_function ( ) {
638
+ let mut expected_statement = update_statement2 ( ) ;
639
+ expected_statement. from_clause = Some ( FromClause :: Function ( SelectFromFunction {
640
+ function_name : Identifier :: Single ( "function_1" . to_string ( ) ) ,
641
+ arguments : vec ! [ numeric_literal_expression( "1" ) ] ,
642
+ alias : None ,
643
+ } ) ) ;
643
644
644
- // run_sunny_day_test(
645
- // "UPDATE table1 SET column1 = 1 FROM function_1(1)",
646
- // Statement::Update(expected_statement),
647
- // );
648
- // }
645
+ run_sunny_day_test (
646
+ "UPDATE table_name1 SET col1 = 1 FROM function_1(1)" ,
647
+ Statement :: Update ( expected_statement) ,
648
+ ) ;
649
+ }
649
650
650
- // #[test]
651
- // fn test_update_from_table_function_with_schema() {
652
- // let expected_statement = update_from(FromClause::Function(SelectFromFunction {
653
- // function_name: Identifier::Compound(vec![
654
- // "schema_1".to_string(),
655
- // "function_1".to_string(),
656
- // ]),
657
- // arguments: vec![binary_op_expression(
658
- // BinaryOp::Plus,
659
- // numeric_literal_expression("1"),
660
- // numeric_literal_expression("2"),
661
- // )],
662
- // alias: None,
663
- // }));
651
+ #[ test]
652
+ fn update_from_table_function_with_schema ( ) {
653
+ let mut expected_statement = update_statement2 ( ) ;
654
+ expected_statement. from_clause = Some ( FromClause :: Function ( SelectFromFunction {
655
+ function_name : Identifier :: Compound ( vec ! [
656
+ "schema_1" . to_string( ) ,
657
+ "function_1" . to_string( ) ,
658
+ ] ) ,
659
+ arguments : vec ! [ binary_op_expression(
660
+ BinaryOp :: Plus ,
661
+ numeric_literal_expression( "1" ) ,
662
+ numeric_literal_expression( "2" ) ,
663
+ ) ] ,
664
+ alias : None ,
665
+ } ) ) ;
664
666
665
- // run_sunny_day_test(
666
- // "UPDATE table1 SET column1 = 1 FROM schema_1.function_1(1+2)",
667
- // Statement::Update(expected_statement),
668
- // );
669
- // }
667
+ run_sunny_day_test (
668
+ "UPDATE table_name1 SET col1 = 1 FROM schema_1.function_1(1+2)" ,
669
+ Statement :: Update ( expected_statement) ,
670
+ ) ;
671
+ }
670
672
671
- // #[test]
672
- // fn test_update_from_table_function_with_multiple_arguments() {
673
- // let expected_statement = update_from(FromClause::Function(SelectFromFunction {
674
- // function_name: Identifier::Compound(vec![
675
- // "schema_1".to_string(),
676
- // "function_1".to_string(),
677
- // ]),
678
- // arguments: vec![
679
- // numeric_literal_expression("1"),
680
- // identifier_expression(&["col1"]),
681
- // numeric_literal_expression("3"),
682
- // ],
683
- // alias: None,
684
- // }));
673
+ #[ test]
674
+ fn update_from_table_function_with_multiple_arguments ( ) {
675
+ let mut expected_statement = update_statement2 ( ) ;
676
+ expected_statement. from_clause = Some ( FromClause :: Function ( SelectFromFunction {
677
+ function_name : Identifier :: Compound ( vec ! [
678
+ "schema_1" . to_string( ) ,
679
+ "function_1" . to_string( ) ,
680
+ ] ) ,
681
+ arguments : vec ! [
682
+ numeric_literal_expression( "1" ) ,
683
+ identifier_expression( & [ "col1" ] ) ,
684
+ numeric_literal_expression( "3" ) ,
685
+ ] ,
686
+ alias : None ,
687
+ } ) ) ;
685
688
686
- // run_sunny_day_test(
687
- // "UPDATE table1 SET column1 = 1 FROM schema_1.function_1(1, col1, 3)",
688
- // Statement::Update(expected_statement),
689
- // );
690
- // }
689
+ run_sunny_day_test (
690
+ "UPDATE table_name1 SET col1 = 1 FROM schema_1.function_1(1, col1, 3)" ,
691
+ Statement :: Update ( expected_statement) ,
692
+ ) ;
693
+ }
691
694
692
- // #[test]
693
- // fn test_update_from_table_function_with_alias() {
694
- // let expected_statement = update_from(FromClause::Function(SelectFromFunction {
695
- // function_name: Identifier::Compound(vec![
696
- // "schema_1".to_string(),
697
- // "function_1".to_string(),
698
- // ]),
699
- // arguments: vec![
700
- // numeric_literal_expression("1"),
701
- // numeric_literal_expression("2"),
702
- // numeric_literal_expression("3"),
703
- // ],
704
- // alias: Some("alias".to_string()),
705
- // }));
695
+ #[ test]
696
+ fn update_from_table_function_with_alias ( ) {
697
+ let mut expected_statement = update_statement2 ( ) ;
698
+ expected_statement. from_clause = Some ( FromClause :: Function ( SelectFromFunction {
699
+ function_name : Identifier :: Compound ( vec ! [
700
+ "schema_1" . to_string( ) ,
701
+ "function_1" . to_string( ) ,
702
+ ] ) ,
703
+ arguments : vec ! [
704
+ numeric_literal_expression( "1" ) ,
705
+ numeric_literal_expression( "2" ) ,
706
+ numeric_literal_expression( "3" ) ,
707
+ ] ,
708
+ alias : Some ( "alias" . to_string ( ) ) ,
709
+ } ) ) ;
706
710
707
- // run_sunny_day_test(
708
- // "UPDATE table1 SET column1 = 1 FROM schema_1.function_1(1, 2, 3) AS alias",
709
- // Statement::Update(expected_statement.clone()),
710
- // );
711
+ run_sunny_day_test (
712
+ "UPDATE table_name1 SET col1 = 1 FROM schema_1.function_1(1, 2, 3) AS alias" ,
713
+ Statement :: Update ( expected_statement. clone ( ) ) ,
714
+ ) ;
711
715
712
- // run_sunny_day_test(
713
- // "UPDATE table1 SET column1 = 1 FROM schema_1.function_1(1, 2, 3) alias",
714
- // Statement::Update(expected_statement.clone()),
715
- // );
716
- // }
717
- // }
716
+ // without the AS keyword
717
+ run_sunny_day_test (
718
+ "UPDATE table_name1 SET col1 = 1 FROM schema_1.function_1(1, 2, 3) alias" ,
719
+ Statement :: Update ( expected_statement. clone ( ) ) ,
720
+ ) ;
721
+ }
722
+ }
718
723
719
724
// #[cfg(test)]
720
725
// mod update_from_comma_separated_table_or_subqueries_tests {
0 commit comments