Initial Commit
This commit is contained in:
37
database/perl/lib/Test/Deep/ArrayEach.pm
Normal file
37
database/perl/lib/Test/Deep/ArrayEach.pm
Normal file
@@ -0,0 +1,37 @@
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
package Test::Deep::ArrayEach;
|
||||
|
||||
use Test::Deep::Cmp;
|
||||
use Scalar::Util ();
|
||||
|
||||
sub init
|
||||
{
|
||||
my $self = shift;
|
||||
|
||||
my $val = shift;
|
||||
|
||||
$self->{val} = $val;
|
||||
}
|
||||
|
||||
sub descend
|
||||
{
|
||||
my $self = shift;
|
||||
my $got = shift;
|
||||
|
||||
return unless ref $got && Scalar::Util::reftype($got) eq 'ARRAY';
|
||||
my $exp = [ ($self->{val}) x @$got ];
|
||||
|
||||
return Test::Deep::descend($got, $exp);
|
||||
}
|
||||
|
||||
sub renderExp
|
||||
{
|
||||
my $self = shift;
|
||||
my $exp = shift;
|
||||
|
||||
return '[ ' . $self->SUPER::renderExp($self->{val}) . ', ... ]';
|
||||
}
|
||||
|
||||
1;
|
||||
Reference in New Issue
Block a user