Branch Coverage

blib/lib/HTML/Laundry.pm
Criterion Covered Total %
branch 131 160 81.8


line true false branch
145 1 24 if (blessed $args) { }
4 20 elsif (ref $args ne 'HASH') { }
146 1 0 if ($args->isa('HTML::Laundry::Rules')) { }
158 1 2 if $args->isa('HTML::Laundry::Rules')
162 1 3 if ($rules) { }
201 8 17 unless ($$args{'notidy'})
222 4 21 if $$args{'base_uri'}
260 0 21 if ref $ref ne 'CODE'
262 4 17 if (&Switch::case('start_tag'))
265 4 13 if (&Switch::case('end_tag'))
268 6 7 if (&Switch::case('text'))
271 4 3 if (&Switch::case('uri'))
274 3 0 if (&Switch::case('output'))
292 27 112 if (&Switch::case('start_tag'))
295 27 85 if (&Switch::case('end_tag'))
298 29 56 if (&Switch::case('text'))
301 29 27 if (&Switch::case('uri'))
304 27 0 if (&Switch::case('output'))
324 0 462 if ($$self{'trim_tag_whitespace'})
330 461 1 unless ($in_cdata or $unacceptable_count)
333 0 462 if ($in_cdata and not $local_unacceptable_count)
338 4 458 if ($cdata_dirty) { }
367 2 1 if (defined $new_base and not ref $new_base)
376 0 1623 unless $action
380 4 1646 unless $result
398 0 462 unless ($self->_run_callbacks('output', \@fragments))
402 0 462 if ($$self{'tidy'})
403 0 0 if ($$self{'tidy_engine'} eq 'HTML::Tidy') { }
0 0 elsif ($$self{'tidy_engine'} eq 'HTML::Tidy::libXML') { }
416 462 0 if ($$self{'trim_trailing_whitespace'})
431 0 0 if ($listref)
453 1 3 if (ref $new_e eq 'ARRAY') { }
473 1 3 if (ref $listref eq 'ARRAY')
503 2 8 if (ref $new_e eq 'ARRAY') { }
510 4 4 if ($$args{'empty'}) { }
0 4 elsif ($$self{'tidy'}) { }
512 0 4 if ($$self{'tidy'})
543 2 14 if (ref $new_e eq 'ARRAY') { }
563 1 2 if (ref $listref eq 'ARRAY')
586 1 3 if (ref $new_e eq 'ARRAY') { }
615 1 3 if (ref $new_e eq 'ARRAY') { }
635 1 2 if (ref $listref eq 'ARRAY')
669 1 3 if (ref $new_a eq 'ARRAY') { }
696 1 3 if (ref $new_a eq 'ARRAY') { }
711 8 0 unless ($$self{'tidy'})
743 0 0 if (keys %{$$self{'tidy_added_inline'};})
747 0 0 if (keys %{$$self{'tidy_added_empty'};})
770 1 492 unless ($self->_run_callbacks('start_tag', \$tagname, $attr))
773 487 5 unless ($in_cdata)
778 174 85 if ($$self{'acceptable_a'}{$k})
779 58 116 if (grep {/^$k$/;} @{$$self{'uri_list'}{$tagname};})
785 157 17 if ($k)
791 376 116 if ($$self{'acceptable_e'}{$tagname}) { }
792 58 318 if ($$self{'empty_e'}{$tagname}) { }
793 19 39 if ($attributes)
799 122 196 if ($attributes)
806 24 92 if ($$self{'unacceptable_e'}{$tagname})
807 3 21 if ($in_cdata) { }
820 1 466 unless ($self->_run_callbacks('end_tag', \$tagname))
823 463 3 unless ($in_cdata)
826 346 120 if ($$self{'acceptable_e'}{$tagname}) { }
827 316 30 unless ($$self{'empty_e'}{$tagname})
832 30 90 if ($$self{'unacceptable_e'}{$tagname})
833 1 29 if ($in_cdata) { }
835 0 1 if $local_unacceptable_count < 0
840 8 21 if $unacceptable_count < 0
849 1 171 if ($in_cdata and $local_unacceptable_count)
852 15 156 if ($unacceptable_count)
855 13 143 if ($is_cdata) { }
859 11 2 unless ($local_unacceptable_count)
867 1 142 unless ($self->_run_callbacks('text', \$text, $is_cdata))
884 1 57 unless ($self->_run_callbacks('uri', $tagname, $attr, \$uri))
888 42 15 if ($$self{'allowed_schemes'} and $uri->scheme)
889 16 26 unless ($$self{'allowed_schemes'}{$uri->scheme})
894 8 33 if ($$self{'base_uri'})
897 33 8 if ($uri->scheme)
903 33 0 if ($host)
909 0 33 if ($uri->host ne $utf8_host)
913 0 0 if ($uri->port and $uri->port == $uri->default_port)
933 33 0 if utf8::decode($str)