Branch Coverage

blib/lib/Starman/Server.pm
Criterion Covered Total %
branch 90 158 56.9


line true false branch
38 0 61 if ($options->{'net_server_args'})
42 0 61 if ($options->{'pid'})
45 0 61 if ($options->{'daemonize'})
48 0 61 if ($options->{'error_log'})
54 0 61 if ($options->{'ssl_cert'})
57 0 61 if ($options->{'ssl_key'})
60 61 0 unless (exists $options->{'keepalive'})
63 61 0 unless (exists $options->{'keepalive_timeout'})
66 61 0 unless (exists $options->{'read_timeout'})
69 61 0 unless (exists $options->{'proctitle'})
74 61 0 unless $options->{'listen'}
76 61 0 if ($listen =~ /:/) { }
78 61 0 if $h
80 0 61 if 'ssl' eq lc $opt
106 0 61 $options->{'ssl'} ? :
61 0 $^O =~ /(linux|darwin|bsd|cygwin)$/ ? :
118 0 61 $port->{'proto'} eq 'unix' ? :
0 61 $port->{'proto'} eq 'ssl' ? :
126 0 61 if $self->{'options'}{'server_ready'}
138 0 8 if ($quit)
145 0 0 unless keys %{$$self{'server'}{'children'};}
156 21 0 unless $self->{'options'}{'argv'}
157 21 0 if $self->{'options'}{'proctitle'}
172 0 53 if ($self->{'options'}{'psgi_app_builder'})
176 53 0 unless $self->{'options'}{'argv'}
177 53 0 if $self->{'options'}{'proctitle'}
197 5 78 if (ref $res eq 'CODE') { }
208 55 0 if ($conn->NS_proto eq 'TCP')
209 0 55 unless setsockopt $conn, 6, 1, 1
214 0 120 unless $conn->connected
217 37 83 unless $self->_read_headers
224 0 83 $conn->NS_proto eq 'SSL' ? :
241 0 83 if ($reqlen == -1)
252 0 83 if ($proto and $proto eq 'HTTP/1.0') { }
83 0 elsif ($proto and $proto eq 'HTTP/1.1') { }
253 0 0 if ($connection and $connection =~ /^keep-alive$/i) { }
262 0 83 if ($connection and $connection =~ /^close$/i) { }
271 0 83 if ($env->{'HTTP_EXPECT'})
272 0 0 if (lc $env->{'HTTP_EXPECT'} eq '100-continue') { }
283 0 83 unless ($env->{'HTTP_HOST'})
291 0 83 unless ($self->{'options'}{'keepalive'})
302 65 18 if ($self->{'client'}{'keepalive'})
304 0 65 if ($self->{'client'}{'inputbuf'} ne '')
305 0 0 if ($self->{'client'}{'inputbuf'} =~ /^(?:GET|HEAD)/) { }
328 0 65 unless $sel->can_read($self->{'options'}{'keepalive_timeout'})
347 83 120 if $self->{'client'}{'inputbuf'} ne '' and $self->{'client'}{'inputbuf'} =~ /$Starman::Server::CR?$Starman::Server::LF$Starman::Server::CR?$Starman::Server::LF/s
352 37 83 if (not defined $read or $read == 0)
366 37 83 if ($@)
367 0 37 if ($@ =~ /Timed out/)
372 37 0 if ($@ =~ /Read error/)
407 2 10 if ($self->{'client'}{'inputbuf'} ne '')
417 4 80 if (my $cl = $env->{'CONTENT_LENGTH'}) { }
2 78 elsif ($chunked) { }
422 0 6 if (not defined $read or $read == 0)
444 2 18 if ($chunk_len == 0) { }
1 17 elsif (length $chunk_buffer < $chunk_len + 2) { }
457 0 4 unless $read and $read > 0
470 18 65 if ($env->{'psgix.harakiri.commit'})
488 0 95 if $k eq 'Connection'
493 83 0 if ($protocol eq 'HTTP/1.1') { }
494 79 4 if (not exists $headers{'content-length'}) { }
0 4 elsif (my $te = $headers{'transfer-encoding'}) { }
495 77 2 if (not $status =~ /^1\d\d|[23]04$/ and $env->{'REQUEST_METHOD'} ne 'HEAD')
502 0 0 if ($te eq 'chunked')
508 0 0 unless (exists $headers{'content-length'})
514 83 0 unless ($headers{'date'})
519 65 18 if ($self->{'client'}{'keepalive'}) { }
531 79 4 if (defined $res->[2]) { }
534 76 4 if ($chunked)
536 0 76 unless $len
541 73 6 if $chunked
546 6 0 if ($chunked)
548 1 5 unless $len
554 4 0 if $chunked
568 0 245 unless (defined $len)
569 0 0 if $! == 32
570 0 0 if $! == 104
571 0 0 if $! == 4
584 18 37 if ($self->{'client'}{'harakiri'})