Branch Coverage

blib/lib/HTTP/Request/Diff.pm
Criterion Covered Total %
branch 72 104 69.2


line true false branch
189 92 196 if ($item->key eq 'request') { }
28 168 elsif ($item->key eq 'headers') { }
16 152 elsif ($item->key eq 'query') { }
144 8 elsif ($item->key eq 'uri') { }
8 0 elsif ($item->key eq 'form') { }
201 76 68 if (my $c = $u->can($item->value)) { }
223 0 4 unless ($res)
234 41 7 if ($req =~ /\n/u) { }
235 0 41 unless my($header) = $req =~ /^(.*?)\r?\n\r?\n/msu
261 7 17 if ($actual) { }
17 0 elsif ($actual_or_reference) { }
262 0 7 unless $ref = $actual_or_reference
265 0 17 unless $ref = $self->reference
267 0 17 unless $actual = $actual_or_reference // $self->actual
270 0 0 unless $ref = $self->reference
272 0 0 unless $actual = $self->actual
276 0 24 if (my $c = $self->canonicalize)
277 0 0 unless $ref = &$c($ref)
279 0 0 unless $actual = &$c($actual)
290 14 34 if (ref $_)
291 14 0 if ($_->can('as_string')) { }
0 0 elsif ($_->can('to_string')) { }
0 0 elsif (overload::Method($_, '""')) { }
305 24 0 if ($options{'warn_on_newlines'})
306 0 24 if $ref =~ /\A(.*?)[\r]?\n[\r]?\n/u and $1 =~ /[^\r]\n/u
308 0 24 if $actual =~ /\A(.*?)[\r]?\n[\r]?\n/u and $1 =~ /[^\r]\n/u
318 1 23 if ($options{'mode'} eq "strict" and my $q = $r_ref->uri->query)
319 1 0 if ($q =~ /([&;])/u)
321 1 0 if (my $q2 = $r_actual->uri->query)
322 1 0 if ($q2 =~ /([&;])/u)
323 1 0 if ($1 ne $query_separator)
351 22 2 if ($self->mode eq "semantic" or $self->mode eq "lax")
354 2 20 if ($r_ref->headers->content_type eq 'multipart/form-data' and $r_actual->headers->content_type eq 'multipart/form-data') { }
1 38 elsif ($r_actual->headers->content_type eq 'application/x-www-form-urlencoded' and $r_actual->headers->content_type eq 'application/x-www-form-urlencoded') { }
383 1 0 if ($force_percent_encoding)
386 0 2 if ($body =~ s/\+/%20/gu)
397 22 2 unless (@form_params)
401 2 22 if ($self->mode eq "strict")
412 2 144 if ($p->value eq 'header_order') { }
423 4 142 if (defined $ref_v xor defined $actual_v) { }
14 128 elsif (ref $ref_v) { }
34 94 elsif (not defined $ref_v || defined $actual_v) { }
12 82 elsif ($ref_v ne $actual_v) { }
429 0 4 if ($self->mode eq 'lax' || $self->mode eq 'semantic' and $type eq 'headers.Content-Length' and ($ref_v // 0) == 0 and ($actual_v // 0) == 0) { }
452 8 10 if ($diff->Same) { }
4 6 elsif (not $diff->Items(2)) { }
3 3 elsif (not $diff->Items(1)) { }
477 8 6 if ($diff_type)
496 9 3 unless ($ignore_diff{$type})
533 4 0 if (@diff)
540 1 3 ref $_->{'reference'} ? :
1 3 ref $_->{'actual'} ? :