Test::DBIx::Class::SchemaManager - Manages a DBIx::Class::SchemaManager for
Testing
this class is a helper for Test::DBIx::Class. Basically it is a type of wrapper
or adaptor for your schema so we can more easily and quickly deploy it and
cleanup it for the purposes of automated testing.
You shouldn't need to use anything here. However, we do define
%ENV variables that you might be interested in using
(although its probably best to define inline configuration or use a
configuration file).
- FORCE_DROP_TABLE
- Set to a true value will force dropping tables in the deploy phase. This
will generate warnings in a database (like sqlite) that can't detect if a
table exists before attempting to drop it. Safe for Mysql though.
- KEEP_DB
- Usually at the end of tests we cleanup your database and remove all the
tables created, etc. Sometimes you might want to preserve the database
after testing so that you can 'poke around'. Personally I think it's
better to write tests for the poking, but sometimes you just need a quick
look.
Please Note that KEEP_DB is not intended for use as a way to
preserve deployed databases across tests or test runs. I realize you may
wish to try this as a way to reduce testing time, since starting and
deploying databases can be time consuming, however it negates the goal
we have to properly isolate the test cases.
If there is tremendous need for this type of feature, we may
in the future try to develop a good working system. For now I recomment
using the "reset_schema" (see
"reset_schema" in Test::DBIx::Class for more) and subtests if
you want to try this for a given test run..
The following modules or resources may be of interest.
DBIx::Class, Test::DBIx::Class
John Napiorkowski "<jjnapiork@cpan.org>"
Copyright 2009, John Napiorkowski
"<jjnapiork@cpan.org>"
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.