From 8fea99223b8a78010ed753ed622f7ed5044bc8b0 Mon Sep 17 00:00:00 2001 From: Arne Stabenau <stabenau@sanger.ac.uk> Date: Wed, 13 Nov 2002 12:32:59 +0000 Subject: [PATCH] analysis tests with MultiTestDB --- modules/t/analysis.t | 52 +++++++++++++++++++++++++++++++++++--------- 1 file changed, 42 insertions(+), 10 deletions(-) diff --git a/modules/t/analysis.t b/modules/t/analysis.t index 21fbadef78..8aa519e297 100644 --- a/modules/t/analysis.t +++ b/modules/t/analysis.t @@ -2,26 +2,27 @@ use lib 't'; BEGIN { $| = 1; use Test; - plan tests => 7; + plan tests => 8; } my $loaded = 0; END {print "not ok 1\n" unless $loaded;} -use EnsTestDB; -use Bio::EnsEMBL::DBLoader; +use MultiTestDB; + +my $verbose = 0; $loaded = 1; ok(1); -# Database will be dropped when this -# object goes out of scope -my $ens_test = EnsTestDB->new; +my $multi = MultiTestDB->new(); +ok( $multi ); +$multi->hide( "core", "analysis" ); + +my $db = $multi->get_DBAdaptor( "core" ); +ok($db); -$ens_test->do_sql_file("t/minidatabase.dump"); -my $db = $ens_test->get_DBSQL_Obj; -ok($ens_test); my $analysis_ad = $db->get_AnalysisAdaptor(); @@ -43,11 +44,42 @@ ok($analysis); $analysis_ad->store($analysis); -ok(1); +ok(defined $analysis->dbID() ); my $analysis_out = $analysis_ad->fetch_by_logic_name('dummy_analysis'); ok($analysis_out); + ok($analysis_out->db eq 'dummy'); + +ok( check_methods( $analysis_out, "db", "db_file", "id", "dbID", "compare", + "logic_name", "parameters", "gff_source", "gff_feature", + "module", "module_version", "program_file", + "program", "db_version", "adaptor" )); + + +$multi->restore(); + + +sub check_methods { + my $obj = shift; + + my $all_implemented = 1; + while( my $method = shift ) { + if( ! $obj->can( $method )) { + $all_implemented = 0; + debug( "Analysis doesnt implement $method" ); + } + } + return $all_implemented; +} + + +sub debug { + my $txt = shift; + if( $verbose ) { + print STDERR $txt,"\n"; + } +} -- GitLab