Server : Apache/2.4.43 (Win64) OpenSSL/1.1.1g PHP/7.4.6 System : Windows NT USER-PC 6.1 build 7601 (Windows 7 Professional Edition Service Pack 1) AMD64 User : User ( 0) PHP Version : 7.4.6 Disable Function : NONE Directory : C:/xampp/perl/vendor/lib/Test/Deep/ |
use strict; use warnings; package Test::Deep::All; use Test::Deep::Cmp; use overload '&' => \&add, fallback => 1, ; sub init { my $self = shift; my @list = map {Test::Deep::wrap($_)} @_; $self->{val} = \@list; } sub descend { my $self = shift; my $got = shift; my $data = $self->data; my $index = 1; foreach my $cmp (@{$self->{val}}) { $data->{index} = $index; $index++; next if Test::Deep::descend($got, $cmp); return 0 } return 1; } sub render_stack { my $self = shift; my $var = shift; my $data = shift; my $max = @{$self->{val}}; return "(Part $data->{index} of $max in $var)"; } sub add { my $self = shift; my $expect = shift; push(@{$self->{val}}, Test::Deep::wrap($expect)); return $self; } 1;