Branch Coverage

blib/lib/WWW/Mechanize/Firefox.pm
Criterion Covered Total %
branch 3 402 0.7


line true false branch
185 59 0 unless (ref $args{'app'})
187 3 351 exists $args{$_} ? :
194 0 0 if (my $tabname = delete $args{'tab'})
195 0 0 if (not ref $tabname) { }
0 0 elsif ('MozRepl::RemoteObject::Instance' eq ref $tabname) { }
196 0 0 if ($tabname eq 'current') { }
208 0 0 if (not $args{'tab'}) { }
209 0 0 if (not delete $args{'create'}) { }
219 0 0 unless ($args{'tab'})
220 0 0 exists $args{'autoclose'} ? :
226 0 0 if (delete $args{'autoclose'})
229 0 0 unless (exists $args{'autodie'})
240 0 0 unless (exists $args{'frames'})
244 0 0 unless $args{'tab'}
247 0 0 if (delete $args{'activate'})
262 0 0 if (defined $agent)
272 0 0 if (my $app = delete $$self{'app'})
296 0 0 if (defined $name) { }
0 0 elsif ($name eq '') { }
311 0 0 if @_ == 2
327 0 0 if @_ > 1
344 0 0 if @_ > 1
417 0 0 if (my $opt_js = $WWW::Mechanize::Firefox::known_options{$opt}) { }
523 0 0 if (keys %$env)
678 0 0 if $_[0]->bridge
756 0 0 if $$style{'display'} eq 'none'
808 0 0 if ($options{'no_cache'})
811 0 0 unless (exists $options{'synchronize'})
814 0 0 unless (ref $options{'synchronize'})
816 0 0 $options{'synchronize'} ? :
821 0 0 if (my $target = delete $options{':content_file'}) { }
895 0 0 if ($options{'no_cache'})
898 0 0 unless (exists $options{'synchronize'})
901 0 0 unless (ref $options{'synchronize'})
902 0 0 $options{'synchronize'} ? :
908 0 0 unless ($options{'data'})
917 0 0 if ($options{'charset'})
1051 0 0 if ($$self{'custom_header_observer'} and @headers)
1192 0 0 if (@args <= 2 and ref $args[0] eq 'MozRepl::RemoteObject::Instance')
1197 0 0 unless ref $$_[1]
1252 0 0 if ((my $s = $$element{'busy'} || 0) < 1)
1353 0 0 if ($STATE_STOP == $flags or ($flags & ($STATE_STOP | $STATE_IS_DOCUMENT)) == ($STATE_STOP | $STATE_IS_DOCUMENT))
1355 0 0 if ($status == 0) { }
1381 0 0 if (ref $events and ref $events eq 'CODE')
1386 0 0 unless ref $events
1398 0 0 if (my $h = $$self{'on_event'})
1399 0 0 if (ref $h eq 'CODE') { }
1414 0 0 if ($need_response)
1444 0 0 if ($options{'headers'})
1463 0 0 unless (exists $options{'headers'})
1469 0 0 if (my $js_res = $$self{'response'})
1475 0 0 if ($ouri)
1479 0 0 if ($scheme and $scheme =~ /^https?/) { }
0 0 elsif ($scheme and $scheme =~ /^(file|data|about)\b/) { }
1495 0 0 if ($eff_url =~ /^about:neterror/)
1520 0 0 if $res
1555 0 0 if ($bypass_cache)
1568 0 0 if (@$events) { }
1588 0 0 unless (ref $synchronize)
1589 0 0 $synchronize ? :
1612 0 0 unless (ref $synchronize)
1613 0 0 $synchronize ? :
1709 0 0 if ($format eq 'html') { }
0 0 elsif ($format eq 'text') { }
1719 0 0 unless (utf8::is_utf8($content))
1830 0 0 unless (-f $localname)
1831 0 0 unless open my $fh, '>', $localname
1835 0 0 if ($resource_directory)
1839 0 0 unless (-d $resource_directory)
1840 0 0 unless mkdir $resource_directory
1921 0 0 unless (-f $localname)
1922 0 0 unless open my $fh, '>', $localname
1927 0 0 unless ($options{'progress'})
1933 0 0 if ($$res{'currentState'} == $STATE_FINISHED)
2022 0 0 if $options{'wait'}
2043 0 0 if $base
2122 0 0 unless (exists $WWW::Mechanize::Firefox::link_spec{$tag})
2127 0 0 if ($tag eq 'meta')
2129 0 0 if ($content =~ /^\d+\s*;\s*url\s*=\s*(\S+)/i) { }
2131 0 0 unless $url =~ s/^"(.+)"$/$1/
2138 0 0 if (defined $url) { }
2166 0 0 if ($$self{'autodie'}) { }
2176 0 0 if ($$self{'autodie'}) { }
2177 0 0 if (not $self->status =~ /^2/)
2273 0 0 unless (grep {exists $$options{$_};} 'single', 'one', 'maybe', 'all', 'any')
2281 0 0 unless $WWW::Mechanize::Firefox::xpath_quote{$1}
2301 0 0 if (exists $opts{$_})
2308 0 0 if ($single and exists $opts{'n'})
2312 0 0 if $n ne 'all'
2331 0 0 if length $op
2334 0 0 if (exists $opts{$key})
2341 0 0 if (my $p = delete $opts{'url'})
2345 0 0 if (my $p = delete $opts{'tag'})
2348 0 0 if (my $p = delete $opts{'tag_regex'})
2355 0 0 if (@full) { }
2365 0 0 if (keys %opts)
2376 0 0 if ($one)
2377 0 0 if (0 == @res)
2378 0 0 if ($single)
2379 0 0 if (1 < @res)
2388 0 0 if ($n eq 'all')
2411 0 0 if 'all' eq ($opts{'n'} || '')
2413 0 0 if (my $link = $self->find_link_dom('frames', 0, %opts)) { }
2442 0 0 if wantarray
2465 0 0 if wantarray
2486 0 0 if (@_ == 2) { }
2611 0 0 unless (exists $options{'all'} or $return_first_element)
2612 0 0 if defined wantarray and not wantarray
2630 0 0 $$_{'resultType'} == $$self{'XpathResultTypes'}{'ORDERED_NODE_SNAPSHOT_TYPE'} || $$_{'resultType'} == $$self{'XpathResultTypes'}{'UNORDERED_NODE_SNAPSHOT_TYPE'} || $$_{'resultType'} == $$self{'XpathResultTypes'}{'ORDERED_NODE_ITERATOR_TYPE'} || $$_{'resultType'} == $$self{'XpathResultTypes'}{'UNORDERED_NODE_ITERATOR_TYPE'} ? :
0 0 !defined($$_{'resultType'}) ? :
2638 0 0 if (not $zero_allowed and @res == 0)
2643 0 0 if (not $two_allowed and @res > 1)
2649 0 0 $return_first_element ? :
2704 0 0 if ('ARRAY' ne (ref $query || ''))
2708 0 0 if ($options{'node'}) { }
2723 0 0 unless (wantarray)
2729 0 0 unless (exists $options{'frames'})
2803 0 0 if (@res and $options{'return_first'} and grep {$$_{'resultSize'};} @res)
2808 0 0 if ($options{'frames'} and not $options{'node'})
2839 0 0 if ('ARRAY' ne (ref $query || ''))
2842 0 0 $options{'node'} ? :
2866 0 0 if ('ARRAY' ne (ref $query || ''))
2954 0 0 if (not defined $name) { }
0 0 elsif (ref $name and blessed $name and $name->can('__click')) { }
0 0 elsif (ref $name eq 'HASH') { }
2964 0 0 if (exists $options{'name'})
2969 0 0 if ($options{'name'} eq '')
2977 0 0 if (not exists $options{'synchronize'}) { }
0 0 elsif (not ref $options{'synchronize'}) { }
2981 0 0 $options{'synchronize'} ? :
2985 0 0 if ($options{'dom'}) { }
2997 0 0 if (defined wantarray)
3045 0 0 if (exists $options{'input'}) { }
0 0 elsif (exists $options{'name'}) { }
0 0 elsif (exists $options{'value'}) { }
0 0 elsif (exists $options{'id'}) { }
0 0 elsif (exists $options{'number'}) { }
3070 0 0 if ($node) { }
3193 0 0 if (ref $fields[0] eq 'HASH')
3228 0 0 wantarray ? :
3289 0 0 if (@_ == 3) { }
3322 0 0 if ($name =~ s/^\^//) { }
0 0 elsif ($name =~ s/^#//) { }
0 0 elsif ($name =~ s/^\.//) { }
3329 0 0 if (blessed $name) { }
3351 0 0 unless ref $pre
3353 0 0 unless ref $post
3356 0 0 if ($fields[0]) { }
3358 0 0 if ($set_value)
3363 0 0 if ('select' eq $tag) { }
3376 0 0 unless defined wantarray
3380 0 0 if ('SELECT' eq uc $tag) { }
3383 0 0 if (wantarray) { }
3426 0 0 unless ($field)
3436 0 0 if ('HASH' eq ref $value or '') { }
0 0 elsif ('ARRAY' eq ref $value or '') { }
3438 0 0 unless $_ eq 'n'
3443 0 0 ref $$value{'n'} ? :
3452 0 0 if ($deselect)
3458 0 0 if ($single)
3460 0 0 0 + @by_index ? :
3461 0 0 0 + @by_value ? :
3497 0 0 if @_ < 4
3502 0 0 if (not defined $name) { }
0 0 elsif (ref $name and blessed $name and $name->can('__click')) { }
0 0 elsif (ref $name eq 'HASH') { }
3512 0 0 if (exists $options{'name'})
3514 0 0 if ($name =~ s/^\^//) { }
0 0 elsif ($name =~ s/^#//) { }
0 0 elsif ($name =~ s/^\.//) { }
3522 0 0 if $value
3526 0 0 defined $value ? :
3530 0 0 defined $value ? :
3535 0 0 if ($options{'dom'}) { }
3543 0 0 if ($set xor $is_set)
3544 0 0 if ($set) { }
3583 0 0 if ($dom_form) { }
3645 0 0 unless ($form)
3646 0 0 if ($fields = delete $options{'with_fields'}) { }
3649 0 0 unless ($form)
3659 0 0 unless ($form)
3685 0 0 unless ($f)
3697 0 0 if (ref $v)
3699 0 0 unless $num == 1
3733 0 0 if ($form)
3744 0 0 if (@values > @visible_fields) { }
3792 0 0 if (2 == @_) { }
3798 0 0 unless ($options{'dom'})
3803 0 0 unless $options{'dom'}
3890 0 0 if (2 == @_) { }
3902 0 0 if ($timeout)
3909 0 0 unless ($node)
3913 0 0 unless $node
3917 0 0 if ($node and time >= $timeout_after)
3935 0 0 if (exists $options{$meth})
3941 0 0 unless $method
3978 0 0 ref $spec ? :
3981 0 0 if (not ref $spec || $spec =~ /\D/ and $spec == 1)
3988 0 0 if (not grep({ref $_;} @spec)) { }
3996 0 0 ref $_ ? :
4123 0 0 $scr ? :