Branch Coverage

blib/lib/Net/Async/Redis/Protocol.pm
Criterion Covered Total %
branch 51 108 47.2


line true false branch
42 0 9049 if &blessed($data)
43 2014 7035 if (my $type = &reftype($data))
44 2014 0 if ($type eq 'ARRAY') { }
0 0 elsif ($type eq 'HASH') { }
51 5 7030 if (not defined $data) { }
4 7026 elsif (not length $data) { }
1014 6012 elsif (($data ^ $data) eq '0' and int 0 + $data eq $data and not $data =~ /inf/i) { }
0 6012 elsif (($data ^ $data) eq '0' and 0 + $data eq $data) { }
6010 4 elsif (length $data < 100 and not $data =~ /[$CRLF]/) { }
52 1 4 $self->{'protocol'} eq 'resp3' ? :
96 0 9055 if ($Net::Async::Redis::Protocol::log->is_trace)
100 6 9049 if (defined $len)
101 0 6 unless length $_ >= $len + 2
102 0 6 unless substr($_, $len, 2, "") eq "\r\n"
105 6 0 unless length $_
107 6010 3039 if (s/^\+([^\x0D]*)$CRLF//) { }
1014 2025 elsif (s/^:([^\x0D]*)$CRLF//) { }
0 2025 elsif (s/^,([^\x0D]*)$CRLF//) { }
0 2025 elsif (s/^#([tf])$CRLF//) { }
6 2019 elsif (s/^\$([0-9]+)$CRLF//) { }
0 2019 elsif (s/^=([0-9]+)$CRLF//) { }
5 2014 elsif (s/^\$-1$CRLF// or s/^\*-1$CRLF// or s/^_$CRLF//) { }
0 2014 elsif (s/^>([0-9]+)$CRLF//) { }
2014 0 elsif (s/^\*([0-9]+)$CRLF//) { }
0 0 elsif (s/^~([0-9]+)$CRLF//) { }
0 0 elsif (s/^%([0-9]+)$CRLF//) { }
0 0 elsif (s/^\|([0-9]+)$CRLF//) { }
0 0 elsif (s/^-([^\x0D]*)$CRLF//) { }
0 0 elsif (s/^!([^\x0D]*)$CRLF//) { }
111 0 1014 unless &looks_like_number($int) and int $int eq $int
115 0 0 unless &looks_like_number($num) and lc 0 + $num eq lc $num
121 0 6 unless 0 + $len eq $len
125 0 0 unless 0 + $len eq $len
131 0 0 unless 0 + $pending eq $pending
132 0 0 if $pending
138 0 2014 unless 0 + $pending eq $pending
139 2012 2 if ($pending) { }
146 0 0 unless 0 + $pending eq $pending
147 0 0 if ($pending) { }
154 0 0 unless 0 + $pending eq $pending
155 0 0 if ($pending) { }
165 0 0 unless 0 + $pending eq $pending
166 0 0 if $pending
177 9023 26 if length $_
185 0 7037 if ref $data eq "HASH" and not $self->{'hashrefs'}
187 22 9027 unless $self->{'active'}
32 9017 unless @{[] unless $self->{'active'};}
190 7005 2012 if --$self->{'active'}[-1]{'pending'}
197 0 0 $self->{'hashrefs'} ? :
0 2012 $active->{'type'} eq 'map' ? :
200 0 2012 if $active->{'type'} eq "attribute"
201 0 2012 if $active->{'type'} eq "push"
207 0 0 if $self->{'error'}
213 0 0 if $self->{'pubsub'}