DBIx-RoboQuery
view release on metacpan or search on metacpan
t/resultset-preference.t view on Meta::CPAN
[
3, $_private,
{_private => 2},
{_private => 3},
{_private => 4},
],
);
foreach my $test ( @tests ){
my $p = shift @$test;
my $prefs = shift @$test;
my @args = (sql => '');
# where are you Test::Routine?
my $expect_err = 0;
if( $test->[0]->{allow_priv} ){
push @args, (template_private_vars => undef);
}
elsif( $test->[0]->{_private} ){
$expect_err = 1;
}
my $desc = join ' / ', @$prefs;
my $cmp = sub { cmp_pref(shift, $test, $p, $desc, $expect_err); };
my $q = DBIx::RoboQuery->new(@args);
$q->prefer(@$prefs);
my $r2 = $q->resultset;
is_deeply($r2->{preferences}, $prefs, 'preferences ready');
{
my $preferred = eval { $r2->preference(@$test) };
my $e = $@;
if( $expect_err ){
like($e, qr/\Qvar.undef error - undefined variable: _private\E/, "error for $desc");
}
else {
is_deeply($preferred, $$test[$p-1], "expected record for $desc");
}
( run in 0.515 second using v1.01-cache-2.11-cpan-0bb4e1dffa6 )