File Coverage

inc/Test/Deep/ArrayElementsOnly.pm
Criterion Covered Total %
statement 23 29 79.3
branch 1 4 25.0
condition n/a
subroutine 5 7 71.4
pod 0 4 0.0
total 29 44 65.9


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