Branch Coverage

blib/lib/JSON/Patch.pm
Criterion Covered Total %
branch 33 40 82.5


line true false branch
77 2 1 @_ == 2 ? :
87 2 11 if (exists ${$hunk;}->{'A'}) { }
10 1 elsif (exists ${$hunk;}->{'N'}) { }
0 1 elsif (exists ${$hunk;}->{'R'}) { }
112 1 11 unless ref $_[1] eq 'ARRAY'
115 1 10 unless ref $hunk eq 'HASH'
116 1 9 unless defined $hunk->{'op'}
117 1 8 unless exists $hunk->{'path'}
119 1 7 unless my $path = eval { do { str2path($hunk->{'path'}) } }
122 2 5 if ($hunk->{'op'} eq 'add' or $hunk->{'op'} eq 'replace') { }
1 4 elsif ($hunk->{'op'} eq 'remove') { }
2 2 elsif ($hunk->{'op'} eq 'move' or $hunk->{'op'} eq 'copy') { }
1 1 elsif ($hunk->{'op'} eq 'test') { }
123 1 1 unless exists $hunk->{'value'}
134 1 0 unless eval { do { &path($_[0], $path, 'delete', 1) } }
138 1 1 unless my $from = eval { do { str2path($hunk->{'from'}) } }
146 1 0 unless @found
151 0 1 unless exists $hunk->{'value'}
152 1 0 unless my(@found) = &path($_[0], $path, 'deref', 1)
155 0 0 if keys %{$diff;}