# NAME
Test::Fixture::DBI - load fixture data to database.
# SYNOPSIS
use DBI;
use File::Temp qw(tempfile);
use Test::More;
use Test::Fixture::DBI;
my ( undef, $filename ) = tempfile;
my $dbh = DBI->connect( "dbi:SQLite:dbname=$filename", "", "" );
construct_database(
dbh => $dbh,
database => '/path/to/schema.yaml',
);
construct_fixture(
dbh => $dbh,
fixture => '/path/to/fixture.yaml',
);
# DESCRIPTION
Test::Fixture::DBI is fixture test library for DBI.
# SETUP
Before using this module, you must create database definition and fixture data.
The following is creating database definition using [make\_database\_yaml.pl](
https://metacpan.org/pod/make_database_yaml.pl).
$ make_database_yaml.pl -d "dbi:mysql:dbname=social;host=testdb" -u root -p password -o /path/to/schema.yaml
Next step is create fixture,
$ make_fixture_yaml.pl -d "dbi:mysql:dbname=social;host=testdb" -u root -p password -t activity -n id \
-e "SELECT * FROM activity WHERE app_id = 12 ORDER BY created_on DESC LIMIT 10" -o /path/to/fixture.yaml
# FUNCTIONS
## construct\_database( %specs )
The following is %specs details
- dbh
Required parameter. dbh is [DBI](
https://metacpan.org/pod/DBI)'s DBI::db object;
- database
Required parameter. database is ARRAYREF or SCALAR.
specify database name.
- schema
Optional parameter. schema is ARRAYREF.
if schema parameter is specified, then load particular schema from database.
- procedure
Optional parameter. procedure is ARRAYREF.
if procedure parameter is specified, then load particular procedures from database.
- function
Optional parameter. function is ARRAYREF.
if function parameter is specified, then load particular functions from database.
- index
Optional parameter. index is ARRAYREF.
if index parameter is specified, then load particular indexes from database.
## construct\_fixture( %specs )
The following is %specs details
- dbh
Required parameter. dbh is [DBI](
https://metacpan.org/pod/DBI)'s DBI::db object;
- fixture
Required parameter. fixture is SCALAR or ARRAYREF, Specify fixture files.
- opts
Optional parameter. opts is HASHREF.
opts has bulk\_insert key. if the bulk\_insert value is true,
then using bulk insert on loading fixture data.
## construct\_trigger( %specs )
The following is %specs details
- dbh
Required parameter. dbh is [DBI](
https://metacpan.org/pod/DBI)'s DBI::db object;
- database
Optional parameter. database is SCALAR.
specify database name.
- schema
Optional parameter. schema is ARRAYREF.
if schema parameter is specified,
then create particular triggers related specified schema on the database.
# AUTHOR
Toru Yamaguchi <
[email protected]>
Yuji Shimada <
[email protected]>
# SEE ALSO
- [Test::Fixture::DBIC::Schema](
https://metacpan.org/pod/Test::Fixture::DBIC::Schema)
- [Test::Fixture::DBIxSkinny](
https://metacpan.org/pod/Test::Fixture::DBIxSkinny)
# LICENSE
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.