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.

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.