Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
ensembl-gh-mirror
ensembl-hive
Commits
e1f375bf
Commit
e1f375bf
authored
Jul 05, 2016
by
Brandon Walts
Browse files
load DBConnection in Utils.pm and added tests for go_figure_dbc
parent
b1c83246
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
56 additions
and
0 deletions
+56
-0
modules/Bio/EnsEMBL/Hive/Utils.pm
modules/Bio/EnsEMBL/Hive/Utils.pm
+2
-0
t/01.utils/go_figure_dbc.t
t/01.utils/go_figure_dbc.t
+54
-0
No files found.
modules/Bio/EnsEMBL/Hive/Utils.pm
View file @
e1f375bf
...
...
@@ -325,6 +325,8 @@ sub url2dbconn_hash {
sub
go_figure_dbc
{
my
(
$foo
,
$schema_type
)
=
@_
;
require
Bio::EnsEMBL::Hive::DBSQL::
DBConnection
;
# if(UNIVERSAL::isa($foo, 'Bio::EnsEMBL::DBSQL::DBConnection')) { # already a DBConnection, return it:
if
(
ref
(
$foo
)
=~
/DBConnection$/
)
{
# already a DBConnection, hive-ify it and return
return
bless
$foo
,
'
Bio::EnsEMBL::Hive::DBSQL::DBConnection
';
...
...
t/01.utils/go_figure_dbc.t
0 → 100755
View file @
e1f375bf
#!/usr/bin/env perl
# Copyright [1999-2016] Wellcome Trust Sanger Institute and the EMBL-European Bioinformatics Institute
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
use
strict
;
use
warnings
;
use
Test::
More
;
use
Data::
Dumper
;
use
Bio::EnsEMBL::Hive::
Utils
qw(go_figure_dbc)
;
use
Bio::EnsEMBL::Hive::DBSQL::
DBAdaptor
;
my
$pipeline_url
=
'
mysql://user@
'
.
'
localhost:3306/ehive_test_pipeline_db
';
# conversion of generic DBConnection to Bio::EnsEMBL::Hive::DBSQL::DBConnection
my
$fake_dbc
=
{};
bless
$fake_dbc
,
'
Fake::DBConnection
';
my
$real_dbc
=
go_figure_dbc
(
$fake_dbc
);
isa_ok
(
$real_dbc
,
'
Bio::EnsEMBL::Hive::DBSQL::DBConnection
');
# passing a url returns a valid hive dbc
my
$url_dbc
=
go_figure_dbc
(
$pipeline_url
);
isa_ok
(
$url_dbc
,
'
Bio::EnsEMBL::Hive::DBSQL::DBConnection
');
is
(
$url_dbc
->
url
(),
$pipeline_url
,
"
dbc created from url returns the same url
");
# passing a hash returns a valid hive dbc
my
$hash_dbc
=
go_figure_dbc
({
-
driver
=>
'
mysql
',
-
dbname
=>
'
ehive_test_pipeline_db
',
-
host
=>
'
localhost
',
-
user
=>
'
user
'});
isa_ok
(
$hash_dbc
,
'
Bio::EnsEMBL::Hive::DBSQL::DBConnection
');
is
(
$hash_dbc
->
url
(),
$pipeline_url
,
"
dbc created from hash generates appropriate url
");
# passing something that has a dbc method returns a dbc
my
$dba
=
Bio::EnsEMBL::Hive::DBSQL::
DBAdaptor
->
new
(
-
url
=>
$pipeline_url
,
-
no_sql_schema_version_check
=>
1
);
my
$dba2dbc
=
go_figure_dbc
(
$dba
);
isa_ok
(
$dba2dbc
,
'
Bio::EnsEMBL::Hive::DBSQL::DBConnection
');
done_testing
();
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment