Branch Coverage

blib/lib/Net/Async/HTTP.pm
Criterion Covered Total %
branch 148 180 82.2


line true false branch
364 53 1081 if exists $params{$_}
368 1 53 if (my $headers = delete $params{'headers'})
369 1 0 ref $headers eq 'HASH' ? :
0 1 ref $headers eq 'ARRAY' ? :
375 1 53 if (my $more = delete $params{'+headers'})
376 1 0 ref $more eq 'HASH' ? :
0 1 ref $more eq 'ARRAY' ? :
394 0 54 if (exists $params{'ip_tos'})
397 0 0 if defined $ip_tos and $ip_tos eq "lowdelay"
398 0 0 if defined $ip_tos and $ip_tos eq "throughput"
399 0 0 if defined $ip_tos and $ip_tos eq "reliability"
400 0 0 if defined $ip_tos and $ip_tos eq "mincost"
406 12 42 unless defined $self->{'user_agent'}
407 40 14 unless defined $self->{'max_redirects'}
408 39 15 unless defined $self->{'max_in_flight'}
409 35 19 unless defined $self->{'pipeline'}
431 1 104 defined $args{'path'} ? :
435 0 105 if (my $socks_params = $self->{'socks_params'})
443 3 102 if ($args{'SSL'})
450 104 1 if (exists $args{'port'})
454 1 104 unless (exists $args{'host'})
460 0 420 defined $self->{$_} ? :
470 0 97 if defined $self->{'ip_tos'}
477 22 83 unless $f->is_ready
487 0 148 unless my $loop = $self->get_loop
489 1 147 defined $args{'path'} ? :
495 14 39 if $conn->is_idle and $conn->read_handle
499 130 4 unless $ready
505 29 105 if ($max and @$conns >= $max)
524 2 67 if (my $next = &first(sub {
539 7 0 unless $f->is_cancelled
545 2 5 if (my $next = &first(sub {
791 2 144 if ($self->{'require_SSL'} and not $SSL)
796 38 106 if ($Net::Async::HTTP::metrics)
804 1 143 if (defined $args{'proxy_host'} or defined $self->{'proxy_host'} and not defined $args{'proxy_path'}) { }
1 142 elsif (defined $args{'proxy_path'} or defined $self->{'proxy_path'}) { }
832 3 7 /^SSL_/u ? :
836 1 135 $args{'on_ready'} ? :
849 1 121 if ($Net::Async::HTTP::metrics)
857 5 131 $SSL ? :
858 1 143 defined $args{'family'} ? :
5 139 $SSL ? :
866 111 11 unless $response->is_redirect and defined $response->header("Location")
884 1 136 defined $args{'max_redirects'} ? :
894 9 137 if ($previous_f)
900 6 3 if ($location =~ m[^http(?:s?)://]u) { }
3 0 elsif ($location =~ m[^/]u) { }
904 0 3 $port != 80 ? :
912 0 9 unless ($loc_uri)
918 2 7 if $args{'on_redirect'}
927 105 41 if (defined $uri->scheme and $uri->scheme =~ /^http(s?)$/u)
928 12 93 unless defined $host
929 16 89 unless defined $port
933 0 146 unless defined $host
934 0 40 $ssl ? :
40 106 unless defined $port
947 0 11 if @_
949 11 113 if $redirects and $response->is_redirect
957 17 122 if $f->failure or $f->is_cancelled
961 3 134 if ($self->{'fail_on_error'})
966 2 1 if ($code =~ /^[45]/u)
985 89 48 if (my $uri = delete $args{'uri'}) { }
0 48 elsif (not defined $args{'request'}) { }
992 5 132 if ($args{'on_header'}) { }
132 0 elsif ($args{'on_response'} or defined wantarray) { }
999 80 106 if (@_) { }
1013 34 103 defined $args{'timeout'} ? :
1017 34 103 if (defined $timeout)
1034 91 46 if $on_error
1036 81 56 if (my $on_response = delete $args{'on_response'})
1048 83 54 if defined wantarray
1058 17 81 if (not ref $uri) { }
0 81 elsif (&blessed($uri) and not $uri->isa('URI')) { }
1072 2 96 if ($method eq 'POST') { }
1073 0 2 unless defined $args{'content'}
1077 0 2 unless ref $args{'content'} or defined $args{'content_type'}
1084 3 93 if (defined $args{'content'})
1085 0 3 unless defined $args{'content_type'}
1093 24 74 if ($args{'port'} != $uri->default_port) { }
1101 1 97 if ($headers and &reftype($headers) eq 'ARRAY') { }
1 192 elsif ($headers and &reftype($headers) eq 'HASH') { }
1110 1 97 if (defined $uri->userinfo) { }
1 192 elsif (defined $args{'user'} and defined $args{'pass'}) { }
1118 2 96 if (defined $user and defined $pass)
1219 36 110 if length $self->{'user_agent'}
1220 1 145 if ($self->{'close_after_request'}) { }
1231 2 144 if $self->{'cookie_jar'}
1248 2 109 if $self->{'cookie_jar'}
1357 2 0 if (@_) { }
1360 0 2 unless my $d = $DECODERS{$name}