From: Peter Rabbitson Date: Fri, 22 May 2009 08:28:58 +0000 (+0000) Subject: Extend DB2 test X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=25aa8311b1e1b31a72c8a0a878b41bd5dc637eb1;p=dbsrgits%2FDBIx-Class-Historic.git Extend DB2 test --- diff --git a/t/745db2.t b/t/745db2.t index 5d628e8..2e76bca 100644 --- a/t/745db2.t +++ b/t/745db2.t @@ -12,7 +12,7 @@ my ($dsn, $user, $pass) = @ENV{map { "DBICTEST_DB2_${_}" } qw/DSN USER PASS/}; plan skip_all => 'Set $ENV{DBICTEST_DB2_DSN}, _USER and _PASS to run this test' unless ($dsn && $user); -plan tests => 6; +plan tests => 9; my $schema = DBICTest::Schema->connect($dsn, $user, $pass); @@ -25,24 +25,36 @@ $dbh->do("CREATE TABLE artist (artistid INTEGER GENERATED BY DEFAULT AS IDENTITY # This is in core, just testing that it still loads ok $schema->class('Artist')->load_components('PK::Auto'); +my $ars = $schema->resultset('Artist'); + # test primary key handling -my $new = $schema->resultset('Artist')->create({ name => 'foo' }); +my $new = $ars->create({ name => 'foo' }); ok($new->artistid, "Auto-PK worked"); -# test LIMIT support +my $init_count = $ars->count; for (1..6) { - $schema->resultset('Artist')->create({ name => 'Artist ' . $_ }); + $ars->create({ name => 'Artist ' . $_ }); } -my $it = $schema->resultset('Artist')->search( {}, - { rows => 3, - order_by => 'artistid' - } +is ($ars->count, $init_count + 6, 'Simple count works'); + +# test LIMIT support +my $it = $ars->search( {}, + { + rows => 3, + order_by => 'artistid' + } ); is( $it->count, 3, "LIMIT count ok" ); + +my @all = $it->all; +is (@all, 3, 'Number of ->all objects matches count'); + +$it->reset is( $it->next->name, "foo", "iterator->next ok" ); -$it->next; +is( $it->next->name, "Artist 1", "iterator->next ok" ); is( $it->next->name, "Artist 2", "iterator->next ok" ); -is( $it->next, undef, "next past end of resultset ok" ); +is( $it->next, undef, "next past end of resultset ok" ); # this can not succeed if @all > 3 + my $test_type_info = { 'artistid' => {