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 2     2   12 #line 1
  2         5  
  2         76  
2 2     2   12 use strict;
  2         5  
  2         69  
3             use warnings;
4              
5             package Test::Deep::ArrayElementsOnly;
6 2     2   10  
  2         4  
  2         12  
7             use Test::Deep::Ref;
8              
9             sub init
10 4     4 0 6 {
11             my $self = shift;
12 4         5  
13             my $val = shift;
14 4         213  
15             $self->{val} = $val;
16             }
17              
18             sub descend
19 4     4 0 9 {
20 4         9 my $self = shift;
21             my $got = shift;
22 4         7  
23             my $exp = $self->{val};
24 4         26  
25             my $data = $self->data;
26 4         7  
  4         17  
27             for my $i (0..$#{$exp})
28 12         19 {
29             $data->{index} = $i;
30 12         21  
31 12         19 my $got_elem = $got->[$i];
32             my $exp_elem = $exp->[$i];
33 12 50       29  
34             return 0 unless Test::Deep::descend($got_elem, $exp_elem)
35             }
36 4         14  
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;