dbh_do.t   [plain text]


#!/usr/bin/perl

use strict;
use warnings;  

use Test::More tests => 8;
use lib qw(t/lib);
use DBICTest;


my $schema = DBICTest->init_schema();
my $storage = $schema->storage;

my $test_func = sub {
    is $_[0], $storage;
    is $_[1], $storage->dbh;
    is $_[2], "foo";
    is $_[3], "bar";
};

$storage->dbh_do(
    $test_func,
    "foo", "bar"
);

my $storage_class = ref $storage;
{
    no strict 'refs';
    *{$storage_class .'::__test_method'} = $test_func;
}
$storage->dbh_do("__test_method", "foo", "bar");