diff options
Diffstat (limited to 't/rt_21406_auto_finish.t')
-rw-r--r-- | t/rt_21406_auto_finish.t | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/t/rt_21406_auto_finish.t b/t/rt_21406_auto_finish.t new file mode 100644 index 0000000..b621391 --- /dev/null +++ b/t/rt_21406_auto_finish.t @@ -0,0 +1,34 @@ +#!/usr/bin/perl + +use strict; +BEGIN { + $| = 1; + $^W = 1; +} + +use t::lib::Test; +use Test::More tests => 11; +use Test::NoWarnings; + +SCOPE: { + my $dbh = connect_ok( RaiseError => 1 ); + $dbh->do("CREATE TABLE f (f1, f2, f3)"); + $dbh->do("INSERT INTO f VALUES (?, ?, ?)", {}, 'foo', 'bar', 1); + $dbh->do("INSERT INTO f VALUES (?, ?, ?)", {}, 'foo', 'bar', 2); + $dbh->do("INSERT INTO f VALUES (?, ?, ?)", {}, 'foo', 'bar', 3); + $dbh->do("INSERT INTO f VALUES (?, ?, ?)", {}, 'foo', 'bar', 4); + $dbh->do("INSERT INTO f VALUES (?, ?, ?)", {}, 'foo', 'bar', 5); + + my $sth1 = $dbh->prepare_cached('SELECT * FROM f ORDER BY f3', {}); + isa_ok( $sth1, 'DBI::st' ); + ok( $sth1->execute, '->execute ok' ); + is_deeply( $sth1->fetchrow_arrayref, [ 'foo', 'bar', 1 ], 'Row 1 ok' ); + is_deeply( $sth1->fetchrow_arrayref, [ 'foo', 'bar', 2 ], 'Row 2 ok' ); + + my $sth2 = $dbh->prepare_cached('SELECT * FROM f ORDER BY f3', {}, 3); + isa_ok( $sth2, 'DBI::st' ); + ok( $sth2->execute, '->execute ok' ); + is_deeply( $sth2->fetchrow_arrayref, [ 'foo', 'bar', 1 ], 'Row 1 ok' ); + is_deeply( $sth2->fetchrow_arrayref, [ 'foo', 'bar', 2 ], 'Row 2 ok' ); + ok( $sth2->finish, '->finish ok' ); +} |