|
Server : Apache System : Linux cvar2.toservers.com 3.10.0-962.3.2.lve1.5.73.el7.x86_64 #1 SMP Wed Aug 24 21:31:23 UTC 2022 x86_64 User : njnconst ( 1116) PHP Version : 8.4.18 Disable Function : NONE Directory : /usr/local/share/perl5/Test/Deep/ |
Upload File : |
use strict;
use warnings;
package Test::Deep::Code;
use Test::Deep::Cmp;
sub init
{
my $self = shift;
my $code = shift || die "No coderef supplied";
$self->{code} = $code;
}
sub descend
{
my $self = shift;
my $got = shift;
my ($ok, $diag) = &{$self->{code}}($got);
$self->data->{diag} = $diag;
return $ok;
}
sub diagnostics
{
my $self = shift;
my ($where, $last) = @_;
my $error = $last->{diag};
my $data = Test::Deep::render_val($last->{got});
my $diag = <<EOM;
Ran coderef at $where on
$data
EOM
if (defined($error))
{
$diag .= <<EOM;
and it said
$error
EOM
}
else
{
$diag .= <<EOM;
it failed but it didn't say why.
EOM
}
return $diag;
}
1;