Branch Coverage

blib/lib/Protocol/HTTP2/HeaderCompression.pm
Criterion Covered Total %
branch 42 72 58.3


line true false branch
17 341 3 if ($int < $ff)
45 0 322 if length($$buf_ref) - $buf_offset <= 0
50 321 1 if $$int_ref < $ff
55 0 2 if $i > 4
58 1 1 if $s < 128
68 69 10 if (length $huff_str < length $str) { }
91 0 75 unless defined $offset and length($$buf_ref) - $buf_offset - $offset >= $l
95 66 9 if vec($$buf_ref, $buf_offset * 8 + 7, 1) == 1
121 0 150 if $size > $context->{'max_ht_size'}
149 174 73 if ($f & 128) { }
1 72 elsif ($f == 64 or $f == 0 or $f == 16) { }
72 0 elsif (($f & 192) == 64 or ($f & 240) == 0 or ($f & 240) == 16) { }
0 0 elsif (($f & 224) == 32) { }
152 0 174 unless $size
155 0 174 if ($index == 0)
164 148 26 if ($index <= @Protocol::HTTP2::HeaderCompression::stable) { }
0 26 elsif ($index > @Protocol::HTTP2::HeaderCompression::stable + @$ht) { }
191 0 1 unless $key_size
193 0 1 if ($key_size == 1)
199 0 1 if ($key =~ /[^a-z0-9\!\#\$\%\&\'\*\+\-\^\_\`]/ and not $key =~ /^\:/)
209 0 1 unless $value_size
215 1 0 if ($f == 64)
229 72 0 ($f & 192) == 64 ? :
231 0 72 unless $size
235 0 72 unless $value_size
239 72 0 if ($index <= @Protocol::HTTP2::HeaderCompression::stable) { }
0 0 elsif ($index > @Protocol::HTTP2::HeaderCompression::stable + @$ht) { }
258 72 0 if (($f & 192) == 64)
270 0 0 unless $size
273 0 0 if ($ht_size > $context->{'settings'}{&SETTINGS_HEADER_TABLE_SIZE})
283 0 0 if (@$eh)
305 0 75 if ($offset != $length)
322 0 78 if ($context->{'max_ht_size'} != $sht)
339 231 31 unless $ht->[$i][0] eq $header and $ht->[$i][1] eq $value
350 153 77 if (exists $Protocol::HTTP2::HeaderCompression::rstable{$header . ' ' . $value}) { }
76 1 elsif (exists $Protocol::HTTP2::HeaderCompression::rstable{$header . ' '}) { }