38 lines
517 B
Perl
38 lines
517 B
Perl
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;
|