X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F73oracle.t;h=16e3f63108862829928df33643c1e66a4faafb3c;hb=331886ef1b5ab7a732915b8213dd525a3ea63b88;hp=7028e956a70b9b48fb9810c9af81e12e87216986;hpb=1143e5bdc4571a4b6f601940643e611d969e2cfb;p=dbsrgits%2FDBIx-Class.git diff --git a/t/73oracle.t b/t/73oracle.t index 7028e95..16e3f63 100644 --- a/t/73oracle.t +++ b/t/73oracle.t @@ -74,11 +74,9 @@ DBICTest::Schema::Track->load_components('PK::Auto::Oracle'); # 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; @@ -93,6 +91,13 @@ is ( 'insert returning capability guessed correctly' ); +isa_ok (DBICTest::Schema->connect($dsn, $user, $pass)->storage->sql_maker, 'DBIx::Class::SQLMaker::Oracle'); + +# see if determining a driver with bad credentials throws propely +throws_ok { + DBICTest::Schema->connect($dsn, "BORKED BORKED USER $user", $pass)->storage->sql_maker; +} qr/DBI Connection failed/; + ########## # the recyclebin (new for 10g) sometimes comes in the way my $on_connect_sql = $v >= 10 ? ["ALTER SESSION SET recyclebin = OFF"] : []; @@ -425,13 +430,12 @@ sub _run_tests { ); # 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, @@ -456,15 +460,9 @@ sub _run_tests { }, ], 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: { @@ -681,6 +679,7 @@ END { next unless $_; local $SIG{__WARN__} = sub {}; do_clean($_); - $_->disconnect; } + undef $dbh; + undef $dbh2; }