Branch Coverage

blib/lib/Linux/Smaps.pm
Criterion Covered Total %
branch 78 102 76.4


line true false branch
31 0 41 if (@_ > 1) { }
40 1 elsif (defined $I->[$n] or not defined $I->[$line_idx]) { }
36 1 0 if defined $I->[$line_idx]
61 0 5 ref $_[0] ? :
65 95 0 if $$I[&V__line()] =~ /^ ([\da-f]+)-([\da-f]+)\s # range ([r\-])([w\-])([x\-])([sp])\s # access mode ([\da-f]+)\s # page offset in file ([\da-f]+):([\da-f]+)\s # device (\d+)\s* # inode (.*?) # file name (\s\(deleted\))? # is deleted? $ /xi
90 0 55 if exists $Linux::Smaps::VMA::attributes{$attributes[$n]}
94 9 6 @_ > 1 ? :
101 1 11 if ref $class
108 0 12 if (@_ == 1) { }
115 9 51 if exists $h{$k}
119 2 10 if $h{'uninitialized'}
122 4 6 unless $rc
132 0 0 unless (open my $f, '>', $name)
154 10 1 if (defined $$I[&M_filename()]) { }
163 0 11 unless (open my $f, '<', $name)
176 3338 284 if ($current_off < @Linux::Smaps::VMA::attributes) { }
91 193 elsif ($l =~ /^(\w+):\s*(\d+) kB$/) { }
10 183 elsif ($l =~ /^(\w+):.+$/) { }
183 0 elsif ($l =~ /^([\da-f]+-[\da-f]+)\s/i) { }
177 253 3085 if ($tmp = $Linux::Smaps::VMA::special[$current_off]) { }
186 1 90 if (exists $Linux::Smaps::attributes{$m})
190 1 89 if (exists $Linux::Smaps::VMA::attributes{$m})
203 0 65 @_ > 1 ? :
213 2 0 length $n ? :
216 35 35 if not defined $$_[&V_file_name()] and defined $$_[&V__line()]
228 21 68 if (length $m > $cnt1)
234 1 9 if (exists $Linux::Smaps::VMA::attributes{$m})
248 0 8 @_ > 1 ? :
257 182 1 unless $cache{$1}++
265 1 7 if ($. == 0)
284 53 103 if not defined $$el[&V_file_name()] and defined $$el[&V__line()]
285 7 149 if $s eq $$el[&V_file_name()]
293 1 2 if (wantarray) { }
295 0 35 if not defined $$_[&V_file_name()] and defined $$_[&V__line()]
303 0 70 if not defined $$el[&V_file_name()] and defined $$el[&V__line()]
304 64 6 if length $$el[&V_file_name()]
313 1 1 if (wantarray) { }
315 0 35 if not defined $$_[&V_file_name()] and defined $$_[&V__line()]
323 0 35 if not defined $$el[&V_file_name()] and defined $$el[&V__line()]
324 3 32 unless length $$el[&V_file_name()]
333 3 2 if (wantarray) { }
351 0 35 if not defined $$_[&V_file_name()] and defined $$_[&V__line()]
362 3 0 if not defined $$_[&V_file_name()] and defined $$_[&V__line()]
363 1 2 if ($$_[&V_file_name()] =~ /\[\w+\]/) { }
372 3 0 if not defined $$_[&V_file_name()] and defined $$_[&V__line()]
373 1 2 if ($$_[&V_file_name()] =~ /^(\[\w+\])$/) { }
386 1 0 if (exists $other_special{$$vma[&V_file_name()]}) { }
388 0 1 if $$vma[&V_vma_start()] != $$x[&V_vma_start()] or $$vma[&V_vma_end()] != $$x[&V_vma_end()] or $vma->shared_clean != $x->shared_clean or $vma->shared_dirty != $x->shared_dirty or $vma->private_clean != $x->private_clean or $vma->private_dirty != $x->private_dirty or $$vma[&V_dev_major()] != $$x[&V_dev_major()] or $$vma[&V_dev_minor()] != $$x[&V_dev_minor()] or $$vma[&V_r()] != $$x[&V_r()] or $$vma[&V_w()] != $$x[&V_w()] or $$vma[&V_x()] != $$x[&V_x()] or $$vma[&V_file_off()] != $$x[&V_file_off()] or $$vma[&V_inode()] != $$x[&V_inode()] or $$vma[&V_mayshare()] != $$x[&V_mayshare()]
410 2 0 if (exists $other{$$vma[&V_vma_start()]}) { }
412 0 2 if $$vma[&V_vma_end()] != $$x[&V_vma_end()] or $vma->shared_clean != $x->shared_clean or $vma->shared_dirty != $x->shared_dirty or $vma->private_clean != $x->private_clean or $vma->private_dirty != $x->private_dirty or $$vma[&V_dev_major()] != $$x[&V_dev_major()] or $$vma[&V_dev_minor()] != $$x[&V_dev_minor()] or $$vma[&V_r()] != $$x[&V_r()] or $$vma[&V_w()] != $$x[&V_w()] or $$vma[&V_x()] != $$x[&V_x()] or $$vma[&V_file_off()] != $$x[&V_file_off()] or $$vma[&V_inode()] != $$x[&V_inode()] or $$vma[&V_mayshare()] != $$x[&V_mayshare()] or $$vma[&V_file_name()] ne $$x[&V_file_name()]
442 2 1 unless ($once)