# check if we indeed do support stuff
my $v = do {
- my $v = DBICTest::Schema->connect($dsn, $user, $pass)->storage->_dbh_get_info(18);
- $v =~ /^(\d+)\.(\d+)/
- or die "Unparseable Oracle server version: $v\n";
-
- sprintf('%d.%03d', $1, $2);
+ my $si = DBICTest::Schema->connect($dsn, $user, $pass)->storage->_server_info;
+ $si->{normalized_dbms_version}
+ or die "Unparseable Oracle server version: $si->{dbms_version}\n";
};
my $test_server_supports_only_orajoins = $v < 9;
);
# test complex join (exercise orajoins)
- lives_ok {
- my @hri = $schema->resultset('CD')->search(
+ lives_ok { is_deeply (
+ $schema->resultset('CD')->search(
{ 'artist.name' => 'pop_art_1', 'me.cdid' => { '!=', 999} },
{ join => 'artist', prefetch => 'tracks', rows => 4, order_by => 'tracks.trackid' }
- )->hri_dump->all;
-
- my $expect = [{
+ )->all_hri,
+ [{
artist => 1,
cdid => 1,
genreid => undef,
},
],
year => 2003
- }];
-
- is_deeply (
- \@hri,
- $expect,
- 'Correct set of data prefetched',
- );
-
- } 'complex prefetch ok';
+ }],
+ 'Correct set of data prefetched',
+ ) } 'complex prefetch ok';
# test sequence detection from a different schema
SKIP: {
next unless $_;
local $SIG{__WARN__} = sub {};
do_clean($_);
- $_->disconnect;
}
+ undef $dbh;
+ undef $dbh2;
}