Branch Coverage

blib/lib/HTML/TagTree.pm
Criterion Covered Total %
branch 74 280 26.4


line true false branch
192 0 2 if (ref $class eq 'HTML::TagTree')
198 1 1 if (defined $tag_attributes and $tag_attributes ne '')
202 0 2 if (defined $content and $content ne '')
216 0 1 if (exists $$self{'parent'})
225 0 0 if (exists $$self{'attributes'})
237 0 2 if ($tag =~ /^\s*(\w+)\s+(.*)/)
245 1 1 if (exists $$self{'attributes'})
256 0 0 if (ref $content eq 'HTML::TagTree') { }
288 3 2 unless ($indent_level)
295 5 0 if ($no_whitespace_flag)
301 0 5 if (exists $tag_open_substitutions{$tag_open})
306 0 5 if ($print)
309 1 4 if (exists $$self{'attributes'} and $$self{'attributes'} ne '')
310 0 1 if (ref $$self{'attributes'} eq 'ARRAY') { }
0 1 elsif (ref $$self{'attributes'} eq 'HASH') { }
0 1 elsif (ref $$self{'attributes'} eq 'CODE') { }
0 1 elsif (ref $$self{'attributes'} eq 'SCALAR') { }
316 0 0 if (ref $attribute eq 'CODE')
320 0 0 if (ref $attribute eq 'SCALAR') { }
344 0 1 if ($print) { }
351 1 4 if (exists $tags_no_autowhitespace{$$self{'tag'}})
360 0 5 if (not exists $$self{'content'} || exists $$self{'children_objs'} and exists $valid_empty_tags_for_shortening{$tag_open}) { }
365 0 0 if ($print) { }
373 0 5 if ($print) { }
380 0 5 if (exists $$self{'content'})
383 0 0 if (ref $content eq 'CODE') { }
0 0 elsif (ref $content eq 'SCALAR') { }
390 0 0 if ($print) { }
398 1 4 if (exists $$self{'children_objs'})
400 0 2 if ($print) { }
411 0 5 if (exists $tag_close_substitutions{$tag_close}) { }
413 0 0 if (exists $tags_no_autowhitespace{$$self{'tag'}})
419 0 0 if ($print) { }
427 0 5 if (not exists $$self{'content'} || exists $$self{'children_objs'} and exists $valid_empty_tags_for_shortening{$tag_open}) { }
434 0 5 if ($print) { }
486 17 32 if ($state eq 'looking_for_equal_sign') { }
2 30 elsif ($state eq 'getting_char_after_equal_sign') { }
0 30 elsif ($state eq 'looking_for_end_single_quote') { }
16 14 elsif ($state eq 'looking_for_end_double_quote') { }
0 14 elsif ($state eq 'looking_for_end_quote') { }
1 13 elsif ($state eq 'looking_for_start_of_whitespace') { }
0 13 elsif ($state eq 'looking_for_start_of_whitespace_to_quote_before') { }
0 13 elsif ($state eq 'looking_for_end_of_white_space') { }
13 0 elsif ($state eq 'looking_for_start_of_whitespace_while_autoquoting_value') { }
487 2 15 if ($char eq '=') { }
0 15 elsif ($char =~ /\s/) { }
500 0 2 if ($char eq $SINGLE_QUOTE) { }
1 1 elsif ($char eq $DOUBLE_QUOTE) { }
0 1 elsif ($char =~ /\s/) { }
520 0 0 if ($char eq $SINGLE_QUOTE)
526 1 15 if ($char eq $DOUBLE_QUOTE)
531 0 0 if ($char =~ /$starting_quote_type/)
537 1 0 if ($char =~ /\s/) { }
546 0 0 if ($char =~ /\s/) { }
557 0 0 if ($char =~ /\S/)
564 1 12 if ($char =~ /\s/) { }
565 1 0 unless ($autoquote_quote_type)
576 0 12 if ($char eq $DOUBLE_QUOTE) { }
0 12 elsif ($char eq $SINGLE_QUOTE) { }
577 0 0 if (not $autoquote_quote_type) { }
0 0 elsif ($autoquote_quote_type eq $DOUBLE_QUOTE) { }
585 0 0 unless ($autoquote_quote_type)
600 0 1 if ($state eq 'looking_for_start_of_whitespace_to_quote_before') { }
0 1 elsif ($state eq 'getting_char_after_equal_sign') { }
0 1 elsif ($state eq 'looking_for_end_double_quote') { }
0 1 elsif ($state eq 'looking_for_end_single_quote') { }
0 1 elsif ($state eq 'looking_for_start_of_whitespace_while_autoquoting_value') { }
616 0 0 unless ($autoquote_quote_type)
636 0 0 if ($msg)
640 0 0 if ($msg)
650 0 0 if (exists $$self{'log_routine'}) { }
656 0 0 if ($msg = !/\n$/)
673 2 0 if ($tag =~ /HTML::TagTree::(.+)/)
675 0 2 if ($tag eq 'add_content') { }
0 2 elsif (not &is_valid_html_tag($tag)) { }
688 0 2 if (defined $tag_attributes and $tag_attributes ne '')
689 0 0 if (ref $tag_attributes eq 'HASH') { }
699 0 2 if (defined $content and $content ne '')
700 0 0 if (ref $content eq 'HTML::TagTree') { }
708 0 0 if (lc $tag eq 'select') { }
730 0 0 if (ref $hash_ref eq 'HASH')
736 0 0 if (wantarray) { }
750 0 0 if (ref $content eq 'HTML::TagTree')
766 2 5 if (exists $$self{'parent'})
769 1 6 if (exists $$self{'children_objs'})
781 2 0 if (exists $valid_tags{$lc_tag})
793 0 0 if (lc $$self{'tag'} ne 'table')
801 0 0 if (lc $$child_obj{'tag'} eq 'tr') { }
0 0 elsif ($$child_obj{'tag'} eq 'thead' or $$child_obj{'tag'} eq 'tbody') { }
809 0 0 if (lc $$child_obj{'tag'} eq 'tr')
817 0 0 unless exists $$child_obj{'children_objs'}
821 0 0 if lc $$possible_td{'tag'} ne 'td' and lc $$possible_td{'tag'} ne 'th'
824 0 0 unless (exists $$possible_td{'content'})
829 0 0 if (ref $value ne 'ARRAY')
835 0 0 if ($attributes =~ /colspan=['"]?(\d+)/i)
864 0 0 if ref $hash ne 'HASH'
865 0 0 if (exists $$hash{'tag_attributes'})
868 0 0 if (exists $$hash{'options'})
869 0 0 if (ref $$hash{'options'} eq 'HASH') { }
0 0 elsif (ref $$hash{'options'} eq 'ARRAY') { }
871 0 0 if (exists $$hash{'sort_sub'})
874 0 0 if (exists $$hash{'sort_numeric'})
877 0 0 if (exists $$hash{'sort_reverse_numeric'})
880 0 0 if (exists $$hash{'sort_numeric_by_value'})
883 0 0 if (exists $$hash{'sort_string_by_value'})
888 0 0 if ($$hash{'options'}{$option} eq $$hash{'selected'})
892 0 0 unless (ref $$hash{'options'}{$option})
902 0 0 if ($option eq $$hash{'selected'})
922 0 0 if (ref $checked eq 'HASH') { }
0 0 elsif (ref $checked eq 'ARRAY') { }
0 0 elsif (ref $checked eq 'SCALAR') { }
937 0 0 if (ref $values_ref eq 'ARRAY') { }
0 0 elsif (ref $values_ref eq 'HASH') { }
945 0 0 if ($self) { }
955 0 0 if (exists $$labels_ref{$value})
959 0 0 if (exists $checked{$value})
978 0 0 if (ref $checked eq 'HASH') { }
0 0 elsif (ref $checked eq 'ARRAY') { }
0 0 elsif (ref $checked eq 'SCALAR') { }
990 0 0 if (ref $inputs eq 'ARRAY') { }
0 0 elsif (ref $inputs eq 'HASH') { }
999 0 0 if ($self) { }
1009 0 0 if (exists $$labels{$input})
1013 0 0 if (exists $checked{$input})
1036 0 0 if (ref $tags eq 'ARRAY') { }
0 0 elsif (ref $tags eq 'HASH') { }
0 0 elsif (ref $tags eq 'SCALAR') { }
0 0 elsif (ref $tags eq '') { }
1059 0 0 if (ref $tags eq 'ARRAY') { }
0 0 elsif (ref $tags eq 'HASH') { }
0 0 elsif (ref $tags eq 'SCALAR') { }
0 0 elsif (ref $tags eq '') { }
1082 0 0 if (ref $tags eq 'ARRAY') { }
0 0 elsif (ref $tags eq 'HASH') { }
0 0 elsif (ref $tags eq 'SCALAR') { }
0 0 elsif (ref $tags eq '') { }
1105 0 0 if (ref $tags eq 'ARRAY') { }
0 0 elsif (ref $tags eq 'HASH') { }
0 0 elsif (ref $tags eq 'SCALAR') { }
0 0 elsif (ref $tags eq '') { }