SYNOPSIS

  use lib qw(t/lib);
  use Bio::Chado::Schema::Test;
  use Test::More;

  my $schema = Bio::Chado::Schema::Test->init_schema();

DESCRIPTION

This module provides the basic utilities to write tests against Bio::Chado::Schema.

METHODS

init_schema

my $schema = Bio::Chado::Schema::Test->init_schema( deploy => 1, populate => 1, storage_type => '::DBI::Replicated', storage_type_args => { balancer_type=>'DBIx::Class::Storage::DBI::Replicated::Balancer::Random' }, );

This method removes the test SQLite database in t/var/BCS.db and then creates a new, empty database.

This method will call deploy_schema() by default, unless the deploy flag is set to 0.

This method will call populate_schema() if the populate argument is set to a true value.

has_custom_dsn

Returns true if the \s-1BCS_TEST_DSN\s0 environment variable is set.

deploy_schema

Bio::Chado::Schema::Test->deploy_schema( $schema );

This method does one of two things to the schema. It can either call the experimental $schema->deploy() if the \s-1BCSTEST_SQLT_DEPLOY\s0 environment variable is set, otherwise the default is to read in the t/lib/sqlite.sql file and execute the \s-1SQL\s0 within. Either way you end up with a fresh set of tables for testing.

populate_schema

Bio::Chado::Schema::Test->populate_schema( $schema );

After you deploy your schema you can use this method to populate the tables with test data.