| blib/lib/PAGI/Request/MultipartStream.pm | |||
|---|---|---|---|
| Criterion | Covered | Total | % |
| condition | 33 | 60 | 55.0 |
| line | !l | l&&!r | l&&r | condition |
|---|---|---|---|---|
| 108 | 0 | 1 | 20 | defined $args{'boundary'} and length $args{'boundary'} |
| 219 | 0 | 0 | 25 | $msg && $msg->{'type'} |
| 224 | 0 | 1 | 20 | defined $msg->{'body'} and length $msg->{'body'} |
| 251 | 4 | 9 | 2 | not $had_failure and defined $self->{'_failed'} |
| 279 | 18 | 1 | 7 | $self->{'_current'} and not $self->{'_current'}{'_done'} |
| 282 | 23 | 18 | 0 | @{$self->{'_queue'};} and $self->{'_queue'}[0][0] eq "body" |
| 283 | 23 | 0 | 18 | @{$self->{'_queue'};} and $self->{'_queue'}[0][0] eq "part" |
| 492 | 0 | 0 | 1 | ref $r and $r->can("get") |
| line | l | !l | condition |
|---|---|---|---|
| 153 | 11 | 13 | $headers{'content-type'} // "text/plain" |
| 160 | 24 | 0 | $headers->{'content-disposition'} // "" |
| 205 | 3 | 0 | $self->{'_cur_name'} // "" |
| line | l | !l&&r | !l&&!r | condition |
|---|---|---|---|---|
| 116 | 0 | 20 | 0 | $args{'max_files'} // $MAX_FILES |
| 1 | 19 | 0 | $args{'max_fields'} // $MAX_FIELDS | |
| 1 | 19 | 0 | $args{'max_field_size'} // $MAX_FIELD_SIZE | |
| 2 | 18 | 0 | $args{'max_file_size'} // $MAX_FILE_SIZE | |
| 1 | 19 | 0 | $args{'max_request_body'} // $MAX_REQUEST_BODY | |
| 170 | 0 | 0 | 0 | $result{$1} //= $2 |
| 210 | 0 | 2 | 0 | $self->{'_failed'} //= "Multipart parse error: $_[0]" |
| 219 | 0 | 4 | 21 | not $msg && $msg->{'type'} or $msg->{'type'} eq "http.disconnect" |
| 250 | 0 | 0 | 0 | $self->{'_failed'} //= "Multipart parse error (finish): $@" |
| 500 | 0 | 1 | 0 | $self->{'stream'}{'_failed'} //= "sink error: $err" |