4 object.t - a test script for the CXGN::DB::Object class.
14 use Test::More tests => 9;
19 use_ok("CXGN::DB::Connection");
20 use_ok("CXGN::DB::Object");
24 my $dbh = CXGN::DB::Connection->new();
26 my $dbo = CXGN::DB::Object->new($dbh);
27 isnt( $dbo, undef, "object not undef check" );
28 isnt( $dbo->get_dbh, undef, "dbh in object not undef check" );
29 can_ok( $dbo->get_dbh, 'selectall_arrayref', 'prepare' );
32 CXGN::DB::Object->new( $dbh->get_actual_dbh )
33 } undef, 'does not warn for an actual dbh';
35 my $tdbo = TestDBObject->new($dbh);
36 isa_ok( $tdbo->get_dbh, "CXGN::DB::Connection" );
38 my $so = DBIxSchemaObject->connect(
39 sub { return CXGN::DB::Connection->new()->get_actual_dbh(); } );
41 my $tso = TestSchemaObject->new($so);
43 ok( $tso->get_schema()->isa("DBIx::Class"),
44 "Test schema object accessor test" );
46 is( $tso->get_dbh()->isa("DBI::db"), 1,
47 "Test schema object dbh accessor test" );
51 use base qw | CXGN::DB::Object |;
57 my $self = $class->SUPER::new($dbh);
62 package TestSchemaObject;
64 use base qw | CXGN::DB::Object |;
70 my $self = $class->SUPER::new($schema);
75 package DBIxSchemaObject;
77 use base qw | DBIx::Class::Schema |;
79 __PACKAGE__->load_components( "PK::Auto", "Core" );