Condition Coverage

blib/lib/Starlet/Server.pm
Criterion Covered Total %
condition 46 81 56.7


and 3 conditions

line !l l&&!r l&&r condition
57 114 0 0 $args{'max_workers'} and $args{'max_workers'} > 1
104 0 131 0 $^O eq 'linux' and $listen->{'_is_tcp'}
185 103 0 0 $may_keepalive and $max_reqs_per_child
103 0 0 $may_keepalive and $max_reqs_per_child and $proc_req_count >= $max_reqs_per_child
417 1 0 0 $$use_keepalive_r and lc $v ne 'keep-alive'
433 1 10 80 defined $protocol and $protocol eq 'HTTP/1.1'
445 0 0 0 not Plack::Util::status_with_no_entity_body($status_code) and defined(my $cl = Plack::Util::content_length($body))
462 2 5 84 defined $body and ref $body eq 'ARRAY'
7 1 83 defined $body and ref $body eq 'ARRAY' and @$body == 1
6 2 81 defined $body and ref $body eq 'ARRAY' and @$body == 1 and length $body->[0] < 8192
502 4 2 2 $use_chunked and not $completed
536 11 0 0 not defined $ret and $! == 4 || $! == 11 || $! == 11

or 2 conditions

line l !l condition
54 9 105 $args{'listens'} || []
72 42 $args{'host'} || 0
6 1 $args{'port'} || $args{'socket'} || 8080
0 114 $args{'timeout'} || 300
0 114 $args{'keepalive_timeout'} || 2
0 114 $args{'max_keepalive_reqs'} || 1
3 111 $args{'server_ready'} || sub { }
0 113 $args{'max_reqs_per_child'} || $args{'max_requests'} || 100
0 114 $args{'spawn_interval'} || 0
2 112 $args{'child_exit'} || sub { }
182 103 0 $listen->{'port'} || 0
84 19 $listen->{'host'} || 0

or 3 conditions

line l !l&&r !l&&!r condition
54 0 114 0 $args{'server_software'} || $class
111 0 3 0 $self->{'lock_path'} ||= do { my($fh, $lock_path) = tempfile('UNLINK', 1); close $fh; $lock_path }
137 0 271 0 not defined $max_reqs_per_child or $proc_req_count < $max_reqs_per_child
434 4 0 76 defined $send_headers{'content-length'} or defined $send_headers{'transfer-encoding'}
445 0 0 0 defined $send_headers{'content-length'} or defined $send_headers{'transfer-encoding'}
524 109 0 106 $is_write or delete $self->{'_is_deferred_accept'}
536 0 0 0 $! == 4 || $! == 11 || $! == 11