root/branches/release-40/t/lib/Test/Deep/ArrayElementsOnly.pm @ 2583

Revision 2583, 0.6 kB (checked in by mpaschal, 18 months ago)

Add Test::Deep to t/lib, since we already use it in driver-tests.pl
BugzID: 79953

Line 
1use strict;
2use warnings;
3
4package Test::Deep::ArrayElementsOnly;
5
6use Test::Deep::Ref;
7
8sub init
9{
10        my $self = shift;
11
12        my $val = shift;
13
14        $self->{val} = $val;
15}
16
17sub descend
18{
19        my $self = shift;
20        my $got = shift;
21
22        my $exp = $self->{val};
23
24        my $data = $self->data;
25
26        for my $i (0..$#{$exp})
27        {
28                $data->{index} = $i;
29
30                my $got_elem = $got->[$i];
31                my $exp_elem = $exp->[$i];
32
33                return 0 unless Test::Deep::descend($got_elem, $exp_elem)
34        }
35
36        return 1;
37}
38
39sub render_stack
40{
41        my $self = shift;
42        my ($var, $data) = @_;
43        $var .= "->" unless $Test::Deep::Stack->incArrow;
44        $var .= "[$data->{index}]";
45
46        return $var;
47}
48
49sub reset_arrow
50{
51        return 0;
52}
53
541;
Note: See TracBrowser for help on using the browser.