Branch Coverage

blib/lib/HTML/XHTML/DVSM.pm
Criterion Covered Total %
branch 111 248 44.7


line true false branch
26 1 0 unless $$self{'Stream'}
49 0 0 unless $pkg
56 0 0 unless $error
59 0 0 if $$self{'StopOnError'}
65 0 0 unless $hash
92 0 0 unless open FIL, "< $htmldir/$file_name" or open FIL, "< $file_name"
98 0 0 if ($instr_file)
100 0 0 unless open FIL, "< $instr_file"
120 0 0 unless open FIL, "< $htmldir/$snippet" or open FIL, "< $snippet"
142 0 12 if ($$self{'DEBUG'} and open D, "> /tmp/dvsmsubs$$.pl")
156 6 14 if ($line =~ /^\s*set\s+(\S+)\s+to\s+"([^"]+)"\s+where\s+(\S+)\s*=\s*"([^"]+)"/i) { }
1 13 elsif ($line =~ /^\s*toggle\s+(\S+)\s+to\s+"([^"]+)"\s+where\s+(\S+)\s*=\s*"([^"]+)"/i) { }
0 13 elsif ($line =~ /^\s*load\s+module\s+"([^"]+)"/i) { }
2 11 elsif ($line =~ /^\s*run\s+"([^"]+)"/i) { }
3 8 elsif ($line =~ /^\s*(while|if)\s+"([^"]+)"\s+where\s+(\S+)\s*=\s*"([^"]+)"/i) { }
2 6 elsif ($line =~ /^\s*delete\s+where\s+(\S+)\s*=\s*"([^"]+)"/i) { }
6 0 elsif ($line =~ /^\s*$/) { }
0 0 elsif ($line =~ /^\s*#/) { }
164 0 6 if ($line =~ /\bif\s+"([^"]+)"/i)
181 0 0 if ($1)
190 2 0 if ($1)
194 1 1 if ($line =~ /\s+where\s+(\S+)\s*=\s*"([^"]+)"/i)
215 0 7 if $lines[$i] =~ /^\s*(while|if)\b/i
216 3 4 if ($lines[$i] =~ /^\s*end\b/i)
218 0 3 if $pop < 0
219 3 0 if ($pop <= 0)
295 0 41 unless ($currenttag)
301 15 3 unless $$instr{'children'}
303 0 3 if $$instr{'children'} != $$sbInstrstack[$i]
311 0 41 if $$currenttag{'tagend'}
312 0 41 unless $$currenttag{'tag'} =~ /^$$endtag$/i
341 47 0 if @$sbInstrstack
342 0 47 unless ($instructions)
345 6 41 if ($$type == $DOCUMENT_ROOT) { }
353 28 13 unless $children
356 41 0 if ($$type == $ELEMENT)
357 41 0 unless ($$tagend =~ m[/])
360 28 13 unless ($$currenttag{'pop_child_instructions'})
364 3 3 unless $childinstrs and @$childinstrs
369 28 0 if @$sbInstrstack
373 0 41 unless $instructions
385 0 72 if ($$instr{'where'} and $$instr{'where'} =~ /^tagname$/i and $$instr{'value'} and $$instr{'value'} =~ /^$tag$/i) { }
17 55 elsif ($$instr{'where'} and exists $$attribs{$$instr{'where'}} and $$instr{'value'} =~ /^$$attribs{$$instr{'where'}}$/i) { }
1 54 elsif (not $$instr{'allocated'} || $$instr{'where'} and $$instr{'cmd'} eq 'load' || $$instr{'cmd'} eq 'run') { }
389 0 0 unless $norecurse
396 17 0 unless $norecurse
421 25 0 if ($$attribstr =~ /^\s*=\s*/s)
423 25 0 if ($$attribstr =~ /^"([^"]*)"/s) { }
0 0 elsif ($$attribstr =~ /^'([^']*)'/s) { }
0 0 elsif ($attribstr =~ /^(\S+)/s) { }
446 1 5 unless $$self{'documentroot'}
453 0 82 if ($$contents =~ /(^!\[CDATA\[.*?\]\])>([^<]*)/s) { }
0 82 elsif ($$contents =~ /(^!--.*?--)>([^<]*)/s) { }
0 82 elsif ($$contents =~ /(^!.*?)>([^<]*)/s) { }
0 82 elsif ($$contents =~ /(^\?.*?\?)>([^<]*)/s) { }
41 41 elsif ($$contents =~ m[^\s*\/([^>]+)>([^<]*)]s) { }
41 0 elsif ($$contents =~ /(^[^>]+)>([^<]*)/s) { }
494 0 41 if $tag =~ s[/$][]s
514 0 37 unless ($text)
522 0 24 unless defined $attrib
523 0 24 unless defined $$attribs{$attrib}
528 37 0 if $$tag{'type'} == $ELEMENT and not $$tag{'tagend'}
529 37 0 if $orphantext
536 0 3 unless $sbCurrentTag and $attrib
537 0 3 if $attrib eq 'tagname'
538 0 3 if $attrib eq 'textnode'
540 0 3 unless $attribs
558 0 43 unless $text
562 0 43 unless $attribs
585 0 43 unless ($text)
591 0 43 unless $attribstr
596 24 57 if $instructionarr and $count < @$instructionarr
597 20 61 if $count == 0 and not $instruction
598 37 44 if $count > 0 and not $instruction
599 20 24 unless $instruction
602 0 24 if ($cmd eq 'load') { }
2 22 elsif ($cmd eq 'run') { }
9 13 elsif ($cmd eq 'set') { }
3 10 elsif ($cmd eq 'toggle') { }
4 6 elsif ($cmd eq 'delete') { }
2 4 elsif ($cmd eq 'if') { }
4 0 elsif ($cmd eq 'while') { }
604 0 0 if ($@)
612 0 2 if ($@)
620 0 9 if $$instruction{'condition'}
621 9 0 if ($cond)
623 0 9 if ($@)
627 8 1 if (lc $$instruction{'target'} eq 'textnode') { }
638 0 3 if ($@)
642 1 2 if ($res) { }
655 0 2 if ($@)
677 0 4 if ($@)
686 2 18 unless $run
688 37 2 if $run
706 0 0 unless $text
708 0 0 unless $attribstr
710 0 0 unless $orphantext
718 0 0 if @$instructions
722 0 0 if @$instructions
724 0 0 if $$tag{'type'} == $ELEMENT and not $$tag{'tagend'}
735 0 0 if ($$instr{'cmd'} eq 'load') { }
740 0 0 if $@
742 0 0 if ($$instr{'children'})
761 0 0 $$tag{'attribstr'} ? :
763 0 0 if ($attribstr) { }
770 0 0 if $text
772 0 0 length $txt > 30 ? :
0 0 if $txt
783 0 0 if $$tag{'type'} == $ELEMENT
797 0 0 if ($cachename) { }
817 6 0 if ($subs)
819 0 6 if ($@)
838 0 0 unless $cachename
839 0 0 if $cachename
840 0 0 if $cachename
841 0 0 unless defined $subs
843 0 0 if ($cachedmarkup) { }
848 0 0 if ($sbSubs)
850 0 0 if ($@)
862 0 0 if ($sbSubs)
864 0 0 if ($@)
898 0 0 if ($path =~ m[(.+)/([^/]+$)]) { }
901 0 0 if wantarray
905 0 0 if wantarray