Apache2-AuthCookieDBI
view release on metacpan or search on metacpan
t/mock_libs/DBI.pm view on Meta::CPAN
# $Header: /Users/matisse/Desktop/CVS2GIT/matisse.net.cvs/Apache-AuthCookieDBI/t/mock_libs/DBI.pm,v 1.4 2010/11/27 19:15:37 matisse Exp $
# $Revision: 1.4 $
# $Author: matisse $
# $Source: /Users/matisse/Desktop/CVS2GIT/matisse.net.cvs/Apache-AuthCookieDBI/t/mock_libs/DBI.pm,v $
# $Date: 2010/11/27 19:15:37 $
###############################################################################
# Mock class - for testing only
package DBI;
use strict;
use warnings;
#warn 'Loading mock library ' . __FILE__;
my $MOCK_DBH_CLASS = 'DBI::Mock::dbh';
our $CONNECT_CACHED_FORCE_FAIL;
sub connect_cached {
my ( $class, @args ) = @_;
if ($CONNECT_CACHED_FORCE_FAIL) {
return;
}
my $fake_dbh = {};
bless $fake_dbh, $MOCK_DBH_CLASS;
$fake_dbh->{'connect_cached_args'} = \@args;
return $fake_dbh;
}
package DBI::Mock::dbh;
sub prepare_cached {
my ($self, @args) = @_;
return bless {}, 'DBI::Mock::sth';
}
sub quote_identifier {
my ($self, $arg) = @_;
return $arg;
}
package DBI::Mock::sth;
sub execute {
my ($self, @args) = @_;
return $self;
}
# You probably want to override fetchrow_array in your test method
# to simulate various return values.
sub fetchrow_array {
my ($self, @args) = @_;
return @args;
}
sub finish {
my ($self) = @_;
undef $self;
return;
}
1;
( run in 0.859 second using v1.01-cache-2.11-cpan-39bf76dae61 )