Skip to content

Commit 76d13e4

Browse files
committed
Merge pull request #457 from simi/306_spec_case
Added spec case for error in the middle of multiple results
2 parents 4afe17f + cd1d5ed commit 76d13e4

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

spec/mysql2/client_spec.rb

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -451,6 +451,15 @@ def connect *args
451451
@multi_client = Mysql2::Client.new(DatabaseCredentials['root'].merge(:flags => Mysql2::Client::MULTI_STATEMENTS))
452452
end
453453

454+
it "should raise an exception when one of multiple statements fails" do
455+
result = @multi_client.query("SELECT 1 as 'set_1'; SELECT * FROM invalid_table_name;SELECT 2 as 'set_2';")
456+
result.first['set_1'].should be(1)
457+
lambda {
458+
@multi_client.next_result
459+
}.should raise_error(Mysql2::Error)
460+
@multi_client.next_result.should be_false
461+
end
462+
454463
it "returns multiple result sets" do
455464
@multi_client.query( "select 1 as 'set_1'; select 2 as 'set_2'").first.should eql({ 'set_1' => 1 })
456465

0 commit comments

Comments
 (0)