| lib/PAGI/Test/Client.pm | |||
|---|---|---|---|
| Criterion | Covered | Total | % |
| condition | 44 | 77 | 57.1 |
| line | !l | l&&!r | l&&r | condition |
|---|---|---|---|---|
| 325 | 6 | 0 | 8 | @rest == 1 and ref $rest[0] eq "CODE" |
| 0 | 0 | 2 | @rest % 2 == 1 and ref $rest[-1] eq "CODE" | |
| 409 | 6 | 0 | 6 | @rest == 1 and ref $rest[0] eq "CODE" |
| 0 | 0 | 5 | @rest % 2 == 1 and ref $rest[-1] eq "CODE" | |
| 534 | 7 | 0 | 0 | not $startup_complete and time < $deadline |
| 548 | 0 | 0 | 7 | $self->{'lifespan_pending'} and ${$self->{'lifespan_pending'};} |
| 625 | 0 | 1 | 16 | ref $pair eq "ARRAY" and @$pair == 2 |
| line | l | !l | condition |
|---|---|---|---|
| 21 | 3 | 73 | $args{'headers'} // {} |
| 7 | 69 | $args{'lifespan'} // 0 | |
| 3 | 73 | $args{'raise_app_exceptions'} // 0 | |
| 60 | 71 | 0 | $path //= "/" |
| 75 | 14 | 0 | $pair->[1] // "" |
| 91 | 11 | 58 | $opts{'body'} // "" |
| 107 | 115 | 0 | $captured{'type'} // "" |
| 167 | 11 | 0 | $pair->[1] // "" |
| 207 | 114 | 0 | $event->{'type'} // "" |
| 212 | 56 | 0 | $event->{'status'} // 200 |
| 213 | 56 | 0 | $event->{'headers'} // [] |
| 221 | 31 | 25 | $event->{'more'} // 0 |
| 245 | 56 | 0 | $event->{'body'} // "" |
| 252 | 1 | 1 | $event->{'offset'} // 0 |
| 260 | 1 | 2 | $event->{'offset'} // 0 |
| 334 | 14 | 0 | $path //= "/" |
| 382 | 0 | 14 | $opts{'subprotocols'} // [] |
| 418 | 12 | 0 | $path //= "/" |
| 460 | 3 | 9 | $opts{'method'} // "GET" |
| 556 | 2 | 0 | +(shift())->{'state'} // {} |
| 584 | 22 | 0 | $replace //= 0 |
| 641 | 33 | 0 | $val // "" |
| line | l | !l&&r | !l&&!r | condition |
|---|---|---|---|---|
| 108 | 3 | 0 | 53 | exists $captured{'fh'} or exists $captured{'file'} |
| 272 | 1 | 0 | 0 | seek $fh, $offset, 0 or croak("Cannot seek file response '${path}': $!") |
| 285 | 1 | 0 | 0 | seek $fh, $offset, 0 or croak("Cannot seek filehandle response: $!") |
| 595 | 0 | 0 | 0 | $$headers_ref->{$name} //= $value |