Branch Coverage

lib/HTML/Object/DOM/Document.pm
Criterion Covered Total %
branch 41 164 25.0


line true false branch
34 0 51 unless $self->HTML::Object::Document::init(@_)
57 0 0 if not $self->_is_a($elem, "HTML::Object::Element") or $self->_is_a($elem, "HTML::Object::Collection")
58 0 0 if ($elem->parent)
69 0 0 unless scalar @_
74 0 0 unless $list->is_empty
93 2 0 defined $v ? :
108 13 39 if ($_->tag eq "body")
125 0 0 unless ($self->_is_a($e, "HTML::Object::Element"))
134 0 0 if ($child->tag eq "body")
144 0 0 unless (defined $body)
170 1 1 if ($e->attributes->has('http-equiv') and $e->attributes->get('http-equiv') eq 'Content-Type' and $e->attributes->has('content')) { }
1 0 elsif ($e->attributes->has('charset')) { }
175 0 1 unless defined $type and length $type
194 0 261 if (@_)
223 1 0 if ($e->attributes->has("http-equiv") and $e->attributes->get("http-equiv") eq "Content-Type" and $e->attributes->has("content"))
228 0 1 unless defined $type and length $type
242 1 0 if defined $name
243 0 1 unless $self->is_valid_attribute($name)
262 0 0 if @_
284 0 15 unless (defined $def)
299 14 1 if ($def->{'class'}) { }
324 0 0 unless $self->_load_class("HTML::Object::Event")
335 0 0 unless ($eval = $self->{'_xpath_eval'})
337 0 0 unless $self->_load_class("HTML::Object::DOM::XPathEvaluator")
342 0 0 unless defined $expr
353 0 2 unless $self->_load_class("HTML::Object::DOM::NodeIterator")
355 0 2 unless defined $iterator
367 1 0 @_ == 1 ? :
368 0 1 unless $self->_load_class("HTML::Object::DOM::Text")
381 0 8 unless $self->_load_class("HTML::Object::DOM::TreeWalker")
383 0 8 unless defined $crawler
406 0 14 if (@_)
408 0 0 if warnings::enabled("HTML::Object")
415 14 28 if ($_->tag eq "html")
421 0 14 if (not $html and Want::want("OBJECT"))
450 0 0 unless ($eval = $self->{'_xpath_eval'})
452 0 0 unless $self->_load_class("HTML::Object::DOM::XPathEvaluator")
492 0 19 unless defined $id and length $id
499 0 500 if exists $seen->{$addr}
501 303 197 if $elem->tag->substr(0, 1) eq "_" and not $self->_is_a($elem, "HTML::Object::Document")
503 19 178 if ($elem->attributes->has("id") and $elem->attributes->get("id") eq $id)
512 57 424 if (my $found = &$crawl($this))
530 0 0 unless defined $name and length "$name"
556 0 2 if (not $head and want("OBJECT"))
579 1 0 unless ($self->{'_implementation'})
581 0 1 unless $self->_load_class("HTML::Object::DOM::Implementation")
664 0 0 unless $self->{'_closed'}
670 0 0 unless $html
671 0 0 if $html->tag ne "html"
697 0 0 unless scalar @_
702 0 0 unless $list->is_empty
743 0 0 unless (scalar @_)
749 0 0 if $list->is_empty
753 0 0 if ($self->_is_a($e, "HTML::Object::DOM::Element"))
755 0 0 if ($e->tag eq 'html') { }
757 0 0 if (defined $html) { }
778 0 0 unless defined $html
782 0 0 if $list->is_empty
829 0 2 if $results->is_empty
838 0 0 if ($results->is_empty) { }
841 0 0 if ($head_results->is_empty)
868 0 0 if ($self->{'_closed'})
870 0 0 unless $self->open
889 0 0 if ref $_ and not overload::Method($_, "\"\"")
890 0 0 unless /\n$/
901 0 0 if $list->is_empty
905 0 0 if ($self->_is_a($e, "HTML::Object::DOM::Element"))
908 0 0 if (ref $html) { }
0 0 elsif ($e->tag ne 'html') { }
930 48 249 unless (exists $self->{'nodes'})
934 0 0 if $self->_is_a($_, "HTML::Object::DOM::Node")
938 0 48 if ($html)
951 0 0 if ref $sigs ne "ARRAY"
954 0 0 if (want(('LVALUE', 'ASSIGN'))) { }
961 0 0 if scalar @_ == 1 and not defined $_[0]
962 0 0 if (@_)
969 0 0 if ($has_arg and defined $arg)
972 0 0 if (ref $code ne "CODE")
975 0 0 if ($has_arg eq "assign")
980 0 0 if want("LVALUE")
988 0 0 if ($sig eq '__WARN__' or $sig eq '__DIE__') { }
1002 0 0 if want("LVALUE")