Provided by: libdbi-test-perl_0.001-1_all
NAME
DBI::Test - Test suite for DBI API
SYNOPSIS
In Makefile.PL: use lib 'lib'; # to allow DBI::Test finds the test cases of your driver use DBI::Test::Conf (); my @generated_tests = DBI::Test::Conf->setup(); WriteMakefile ( test => { TESTS => join (' ' => 'xt/*.t', @generated_tests), }, clean => { FILES => join( " " => @generated_tests ) } ); You provide package DBI::Test::Your::Namespace::List; sub test_cases { return qw(...); # list of the test cases you provide } package DBI::Test::Your::Namespace::Conf; sub conf { my %conf = ( gofer => { category => "Gofer", cat_abbrev => "g", abbrev => "b", init_stub => qq(\$ENV{DBI_AUTOPROXY} = 'dbi:Gofer:transport=null;policy=pedantic';), match => sub { my ($self, $test_case, $namespace, $category, $variant) = @_; ... }, name => "Gofer Transport", }, ); } package DBI::Test::Your::Namespace::Case::Your::First; ... # will be t/your/namespace/your/first.t package DBI::Test::Your::Namespace::Case::Your::Second; ... # will be t/your/namespace/your/second.t 1; And enhance DBI::Test with own test cases.
DESCRIPTION
This module aims to be a test suite for the DBI API and an underlying DBD driver, to check if the provided functionality is working and complete. Part of this module is the ability for self-testing using DBI::Mock. This is not designed to be another DBI::PurePerl - it's designed to allow tests can be verified to work as expected in a sandbox. This is, of course, limited to DBI API itself and cannot load any driver nor really execute any action.
EXPORTS
connect_ok $dbh = connect_ok($dsn, $user, $pass, \%attrs, $test_name); connect_ok invokes DBI-> and proves the result in an ok. The created database handle ($dbh) is returned, if any. connect_not_ok $dbh = connect_not_ok($dsn, $user, $pass, \%attrs, $test_name); connect_not_ok invokes DBI-> and proves the result in an ok (but expects that there is no $dsn returned). The created database handle ($dbh) is returned, if any. prepare_ok $sth = prepare_ok($dbh, $stmt, \%attrs, $test_name); prepare_ok invokes $dbh->prepare and proves the result in an ok. The resulting statement handle ($sth) is returned, if any. execute_ok $rv = execute_ok($sth, $test_name); $rv = execute_ok($sth, @bind_values, $test_name); execute_ok invokes $sth->excute and proves the result via ok. The value got from $sth->execute is returned. execute_not_ok $rv = execute_not_ok($sth, $test_name); $rv = execute_not_ok($sth, @bind_values, $test_name); execute_not_ok invokes $sth->excute and proves the result via is(undef). The value got from $sth->execute is returned. do_ok $rv = do_ok($dbh, $test_name); $rv = do_ok($dbh, @bind_values, $test_name); do_ok invokes $dbh->do and proves the result via ok. The value got from $dbh->do / $sth->execute is returned. do_not_ok $rv = do_not_ok($dbh, $test_name); $rv = do_not_ok($dbh, @bind_values, $test_name); do_not_ok invokes $dbh->do and proves the result via is(undef). The value got from $dbh->do / $sth->execute is returned.
GOAL
TODO Source Recent changes can be (re)viewed in the public GIT repository at GitHub <https://github.com/perl5-dbi/DBI-Test> Feel free to clone your own copy: $ git clone https://github.com/perl5-dbi/DBI-Test.git DBI-Test Contact We are discussing issues on the DBI development mailing list 1) and on IRC 2) 1) The DBI team <dbi-dev@perl.org> 2) irc.perl.org/6667 #dbi
SUPPORT
You can find documentation for this module with the perldoc command. perldoc SQL::Statement You can also look for information at: • RT: CPAN's request tracker <http://rt.cpan.org/NoAuth/Bugs.html?Dist=DBI-Test> • AnnoCPAN: Annotated CPAN documentation <http://annocpan.org/dist/DBI-Test> • CPAN Ratings <http://cpanratings.perl.org/s/DBI-Test> • CPAN Search <http://search.cpan.org/dist/DBI-Test/> Reporting bugs If you think you've found a bug then please read "How to Report Bugs Effectively" by Simon Tatham: <http://www.chiark.greenend.org.uk/~sgtatham/bugs.html>. Your problem is most likely related to the specific DBD driver module you're using. If that's the case then click on the 'Bugs' link on the <http://metacpan.org> page for your driver. Only submit a bug report against the DBI::Test itself if you're sure that your issue isn't related to the driver you're using.
TEST SUITE
DBI::Test comes with some basic tests to test itself and DBI::Mock. The same tests are used for basic DBI self-tests as well as testing the SQL::Statement mock driver.
EXAMPLES
??? Synopsis ???
DIAGNOSTICS
???
SEE ALSO
DBI - Database independent interface for Perl DBI::DBD - Perl DBI Database Driver Writer's Guide Test::More - yet another framework for writing test scripts
AUTHOR
This module is a team-effort. The current team members are H.Merijn Brand (Tux) Jens Rehsack (Sno) Peter Rabbitson (ribasushi) Joakim TE<0x00f8>rmoen (trmjoa)
COPYRIGHT AND LICENSE
Copyright (C)2013 - The DBI development team You may distribute this module under the terms of either the GNU General Public License or the Artistic License, as specified in the Perl README file.