@@ -2075,28 +2075,23 @@ fn parse_print() {
20752075#[ test]
20762076fn parse_mssql_go_keyword ( ) {
20772077 let single_go_keyword = "USE some_database;\n GO" ;
2078- let stmts = ms ( ) . parse_sql_statements ( single_go_keyword) . unwrap ( ) ;
2079- assert_eq ! ( stmts. len( ) , 2 ) ;
2080- assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: None } ) , ) ;
2078+ let stmts = ms ( ) . multiple_statements_parse_to ( single_go_keyword, 2 , "USE some_database\n GO" ) ;
2079+ assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
20812080
20822081 let go_with_count = "SELECT 1;\n GO 5" ;
2083- let stmts = ms ( ) . parse_sql_statements ( go_with_count) . unwrap ( ) ;
2084- assert_eq ! ( stmts. len( ) , 2 ) ;
2082+ let stmts = ms ( ) . multiple_statements_parse_to ( go_with_count, 2 , "SELECT 1\n GO 5" ) ;
20852083 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: Some ( 5 ) } ) ) ;
20862084
20872085 let go_statement_delimiter = "SELECT 1\n GO" ;
2088- let stmts = ms ( ) . parse_sql_statements ( go_statement_delimiter) . unwrap ( ) ;
2089- assert_eq ! ( stmts. len( ) , 2 ) ;
2086+ let stmts = ms ( ) . multiple_statements_parse_to ( go_statement_delimiter, 2 , "SELECT 1; \n GO" ) ;
20902087 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
20912088
20922089 let bare_go = "GO" ;
2093- let stmts = ms ( ) . parse_sql_statements ( bare_go) . unwrap ( ) ;
2094- assert_eq ! ( stmts. len( ) , 1 ) ;
2095- assert_eq ! ( stmts[ 0 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
2090+ let stmt = ms ( ) . one_statement_parses_to ( bare_go, "GO" ) ;
2091+ assert_eq ! ( stmt, Statement :: Go ( GoStatement { count: None } ) ) ;
20962092
20972093 let go_then_statements = "/* whitespace */ GO\n RAISERROR('This is a test', 16, 1);" ;
2098- let stmts = ms ( ) . parse_sql_statements ( go_then_statements) . unwrap ( ) ;
2099- assert_eq ! ( stmts. len( ) , 2 ) ;
2094+ let stmts = ms ( ) . multiple_statements_parse_to ( go_then_statements, 2 , "GO\n RAISERROR('This is a test', 16, 1)" ) ;
21002095 assert_eq ! ( stmts[ 0 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
21012096 assert_eq ! (
21022097 stmts[ 1 ] ,
@@ -2112,41 +2107,29 @@ fn parse_mssql_go_keyword() {
21122107 ) ;
21132108
21142109 let multiple_gos = "SELECT 1;\n GO 5\n SELECT 2;\n GO" ;
2115- let stmts = ms ( ) . parse_sql_statements ( multiple_gos) . unwrap ( ) ;
2116- assert_eq ! ( stmts. len( ) , 4 ) ;
2110+ let stmts = ms ( ) . multiple_statements_parse_to ( multiple_gos, 4 , "SELECT 1\n GO 5\n SELECT 2\n GO" ) ;
21172111 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: Some ( 5 ) } ) ) ;
21182112 assert_eq ! ( stmts[ 3 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
21192113
21202114 let single_line_comment_preceding_go = "USE some_database; -- okay\n GO" ;
2121- let stmts = ms ( )
2122- . parse_sql_statements ( single_line_comment_preceding_go)
2123- . unwrap ( ) ;
2124- assert_eq ! ( stmts. len( ) , 2 ) ;
2115+ let stmts = ms ( ) . multiple_statements_parse_to ( single_line_comment_preceding_go, 2 , "USE some_database\n GO" ) ;
21252116 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
21262117
21272118 let multi_line_comment_preceding_go = "USE some_database; /* okay */\n GO" ;
2128- let stmts = ms ( )
2129- . parse_sql_statements ( multi_line_comment_preceding_go)
2130- . unwrap ( ) ;
2131- assert_eq ! ( stmts. len( ) , 2 ) ;
2119+ let stmts = ms ( ) . multiple_statements_parse_to ( multi_line_comment_preceding_go, 2 , "USE some_database\n GO" ) ;
21322120 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
21332121
21342122 let single_line_comment_following_go = "USE some_database;\n GO -- okay" ;
2135- let stmts = ms ( ) . parse_sql_statements ( single_line_comment_following_go) . unwrap ( ) ;
2136- assert_eq ! ( stmts. len( ) , 2 ) ;
2123+ let stmts = ms ( ) . multiple_statements_parse_to ( single_line_comment_following_go, 2 , "USE some_database\n GO" ) ;
21372124 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
21382125
21392126 let multi_line_comment_following = "USE some_database;\n GO/* okay */42" ;
2140- let stmts = ms ( )
2141- . parse_sql_statements ( multi_line_comment_following)
2142- . unwrap ( ) ;
2143- assert_eq ! ( stmts. len( ) , 2 ) ;
2127+ let stmts = ms ( ) . multiple_statements_parse_to ( multi_line_comment_following, 2 , "USE some_database\n GO 42" ) ;
21442128 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: Some ( 42 ) } ) ) ;
21452129
21462130 let actually_column_alias = "SELECT NULL GO" ;
2147- let stmts = ms ( ) . parse_sql_statements ( actually_column_alias) . unwrap ( ) ;
2148- assert_eq ! ( stmts. len( ) , 1 ) ;
2149- match & stmts[ 0 ] {
2131+ let stmt = ms ( ) . one_statement_parses_to ( actually_column_alias, "SELECT NULL AS GO" ) ;
2132+ match & stmt {
21502133 Statement :: Query ( query) => {
21512134 let select = query. body . as_select ( ) . unwrap ( ) ;
21522135 assert_eq ! (
0 commit comments