DBICx::TestDatabase.3pm

Langue: en

Autres versions - même langue

Version: 2008-07-07 (ubuntu - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

DBICx::TestDatabase - create a temporary database from a DBIx::Class::Schema

SYNOPSIS

Given a DBIx::Class::Schema at "MyApp::Schema", create a test database like this:
    use DBICx::TestDatabase;
    my $schema = DBICx::TestDatabase->new('MyApp::Schema');
 
 

Then you can use $schema normally:

    $schema->resultset('Blah')->create({ blah => '123' });
 
 

When your program exits, the temporary database will go away.

DESCRIPTION

This module creates a temporary SQLite database, deploys your DBIC schema, and then connects to it. This lets you easily test your DBIC schema. Since you have a fresh database for every test, you don't have to worry about cleaning up after your tests, ordering of tests affecting failure, etc.

METHODS

new($schema)

Loads $schema and returns a connection to it.

connect

Alias for new.

ENVIRONMENT

You can control the behavior of this module at runtime by setting environment variables.

DBIC_KEEP_TEST

If this variable is true, then the test database will not be deleted at "END" time. Instead, a message containing the paths of the test databases will be printed.

This is good if you want to look at the database your test generated, for debugging.

AUTHOR

Jonathan Rockway "<jrockway@cpan.org>"

LICENSE

Copyright (c) 2007 Jonathan Rockway.

This program is free software. You may use, modify, and redistribute it under the same terms as Perl itself.