Branch Coverage

blib/lib/Net/Async/HTTP.pm
Criterion Covered Total %
branch 127 166 76.5


line true false branch
361 48 939 if exists $params{$_}
365 1 46 if (my $headers = delete $params{'headers'})
366 1 0 ref $headers eq 'HASH' ? :
0 1 ref $headers eq 'ARRAY' ? :
372 1 46 if (my $more = delete $params{'+headers'})
373 1 0 ref $more eq 'HASH' ? :
0 1 ref $more eq 'ARRAY' ? :
391 0 47 if (exists $params{'ip_tos'})
394 0 0 if defined $ip_tos and $ip_tos eq 'lowdelay'
395 0 0 if defined $ip_tos and $ip_tos eq 'throughput'
396 0 0 if defined $ip_tos and $ip_tos eq 'reliability'
397 0 0 if defined $ip_tos and $ip_tos eq 'mincost'
403 10 37 unless defined $self->{'user_agent'}
404 35 12 unless defined $self->{'max_redirects'}
405 34 13 unless defined $self->{'max_in_flight'}
406 30 17 unless defined $self->{'pipeline'}
434 0 100 if (my $socks_params = $self->{'socks_params'})
442 0 100 if ($args{'SSL'})
453 0 400 defined $self->{$_} ? :
464 0 92 if defined $self->{'ip_tos'}
479 0 141 unless my $loop = $self->get_loop
490 13 38 if $conn->is_idle and $conn->read_handle
494 124 4 unless $ready
500 28 100 if ($max and @$conns >= $max)
519 2 65 if (my $next = &first(sub { not $_->connecting; } , @$ready_queue))
534 7 0 unless $f->is_cancelled
540 2 5 if (my $next = &first(sub { not $_->connecting; } , @$ready_queue))
776 0 137 if ($self->{'require_SSL'} and not $SSL)
781 33 104 if ($Net::Async::HTTP::metrics)
795 0 0 /^SSL_/ ? :
799 1 128 $args{'on_ready'} ? :
812 1 114 if ($Net::Async::HTTP::metrics)
820 0 129 $SSL ? :
821 0 137 defined $args{'family'} ? :
0 137 $SSL ? :
829 106 9 unless $response->is_redirect and defined $response->header('Location')
847 1 129 defined $args{'max_redirects'} ? :
857 7 130 if ($previous_f)
863 4 3 if ($location =~ m[^http(?:s?)://]) { }
3 0 elsif ($location =~ m[^/]) { }
867 0 3 $port != 80 ? :
875 0 7 unless ($loc_uri)
881 2 5 if $args{'on_redirect'}
890 96 41 if (defined $uri->scheme and $uri->scheme =~ /^http(s?)$/)
891 10 86 unless defined $host
892 14 82 unless defined $port
896 0 137 unless defined $host
897 0 40 $ssl ? :
40 97 unless defined $port
910 0 9 if @_
912 9 108 if $redirects and $response->is_redirect
920 15 115 if $f->failure or $f->is_cancelled
924 3 127 if ($self->{'fail_on_error'})
929 2 1 if ($code =~ /^[45]/)
948 82 48 if (my $uri = delete $args{'uri'}) { }
0 48 elsif (not defined $args{'request'}) { }
955 5 125 if ($args{'on_header'}) { }
125 0 elsif ($args{'on_response'} or defined wantarray) { }
962 73 101 if (@_) { }
976 34 96 defined $args{'timeout'} ? :
980 34 96 if (defined $timeout)
997 86 44 if $on_error
999 81 49 if (my $on_response = delete $args{'on_response'})
1011 76 54 if defined wantarray
1021 14 75 if (not ref $uri) { }
0 75 elsif (&blessed($uri) and not $uri->isa('URI')) { }
1035 2 87 if ($method eq 'POST') { }
1036 0 2 unless defined $args{'content'}
1040 0 2 unless ref $args{'content'} or defined $args{'content_type'}
1047 3 84 if (defined $args{'content'})
1048 0 3 unless defined $args{'content_type'}
1056 16 73 if ($args{'port'} != $uri->default_port) { }
1064 1 88 if ($headers and &reftype($headers) eq 'ARRAY') { }
1 174 elsif ($headers and &reftype($headers) eq 'HASH') { }
1073 1 88 if (defined $uri->userinfo) { }
1 174 elsif (defined $args{'user'} and defined $args{'pass'}) { }
1081 2 87 if (defined $user and defined $pass)
1167 34 103 if length $self->{'user_agent'}
1168 1 136 if ($self->{'close_after_request'}) { }
1179 2 135 if $self->{'cookie_jar'}
1196 2 104 if $self->{'cookie_jar'}
1305 2 0 if (@_) { }
1308 0 2 unless my $d = $DECODERS{$name}