@@ -2075,28 +2075,27 @@ 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 (
2095+ go_then_statements,
2096+ 2 ,
2097+ "GO\n RAISERROR('This is a test', 16, 1)" ,
2098+ ) ;
21002099 assert_eq ! ( stmts[ 0 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
21012100 assert_eq ! (
21022101 stmts[ 1 ] ,
@@ -2112,41 +2111,45 @@ fn parse_mssql_go_keyword() {
21122111 ) ;
21132112
21142113 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 ) ;
2114+ let stmts = ms ( ) . multiple_statements_parse_to ( multiple_gos, 4 , "SELECT 1\n GO 5\n SELECT 2\n GO" ) ;
21172115 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: Some ( 5 ) } ) ) ;
21182116 assert_eq ! ( stmts[ 3 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
21192117
21202118 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 ) ;
2119+ let stmts = ms ( ) . multiple_statements_parse_to (
2120+ single_line_comment_preceding_go,
2121+ 2 ,
2122+ "USE some_database\n GO" ,
2123+ ) ;
21252124 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
21262125
21272126 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 ) ;
2127+ let stmts = ms ( ) . multiple_statements_parse_to (
2128+ multi_line_comment_preceding_go,
2129+ 2 ,
2130+ "USE some_database\n GO" ,
2131+ ) ;
21322132 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
21332133
21342134 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 ) ;
2135+ let stmts = ms ( ) . multiple_statements_parse_to (
2136+ single_line_comment_following_go,
2137+ 2 ,
2138+ "USE some_database\n GO" ,
2139+ ) ;
21372140 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: None } ) ) ;
21382141
21392142 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 ) ;
2143+ let stmts = ms ( ) . multiple_statements_parse_to (
2144+ multi_line_comment_following,
2145+ 2 ,
2146+ "USE some_database\n GO 42" ,
2147+ ) ;
21442148 assert_eq ! ( stmts[ 1 ] , Statement :: Go ( GoStatement { count: Some ( 42 ) } ) ) ;
21452149
21462150 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 ] {
2151+ let stmt = ms ( ) . one_statement_parses_to ( actually_column_alias, "SELECT NULL AS GO" ) ;
2152+ match & stmt {
21502153 Statement :: Query ( query) => {
21512154 let select = query. body . as_select ( ) . unwrap ( ) ;
21522155 assert_eq ! (
0 commit comments