1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
#!/usr/bin/perl -w
use strict;
use Test::More tests => 13;
BEGIN
{
use_ok('Rose::DB');
require 't/test-lib.pl';
# Pg
My::DB2->register_db(
domain => 'default',
type => 'pg',
driver => 'Pg',
database => 'test',
host => 'localhost',
username => 'postgres',
);
# Oracle
My::DB2->register_db(
domain => 'default',
type => 'oracle',
driver => 'oracle',
database => 'test',
host => 'localhost',
username => '',
password => '',
);
# MySQL
My::DB2->register_db(
domain => 'default',
type => 'mysql',
driver => 'mysql',
database => 'test',
host => 'localhost',
username => 'root',
);
# Informix
My::DB2->register_db(
domain => 'test',
type => 'informix',
driver => 'Informix',
database => 'test@test',
);
}
my $db = My::DB2->new(domain => 'test', type => 'pg');
ok($db->isa('My::DB2::Pg'), 'My::DB2::Pg 1');
is($db->subclass_special_pg, 'PG', 'My::DB2::Pg 2');
$db = My::DB2->new(domain => 'test', type => 'oracle');
ok($db->isa('My::DB2::Oracle'), 'My::DB2::Oracle 1');
is($db->subclass_special_oracle, 'ORACLE', 'My::DB2::Oracle 2');
$db = My::DB2->new(domain => 'test', type => 'mysql');
ok($db->isa('My::DB2::MySQL'), 'My::DB2::MySQL 1');
is($db->subclass_special_mysql, 'MYSQL', 'My::DB2::MySQL 2');
$db = My::DB2->new(domain => 'test', type => 'informix');
ok($db->isa('My::DB2::Informix'), 'My::DB2::Informix 1');
is($db->subclass_special_informix, 'INFORMIX', 'My::DB2::Informix 2');
eval { $db = My::DBReg->new(domain => 'test', type => 'mysql') };
ok($@, 'My::DBReg no such db');
$db = My::DBReg->new(domain => 'test', type => 'pg_sub');
ok($db->isa('My::DBReg'), 'My::DBReg isa My::DBReg');
ok($db->isa('Rose::DB'), 'My::DBReg isa Rose::DB');
ok($db->isa('Rose::DB::Pg'), 'My::DBReg isa Rose::DB::Pg');
|