Condition Coverage

blib/lib/IO/Socket/Forwarder.pm
Criterion Covered Total %
condition 0 121 0.0


and 3 conditions

line !l l&&!r l&&r condition
85 0 0 0 !$s1_in_closed && length $b1to2 < $io_buffer_size
86 0 0 0 $ssl1 and $wtr1
0 0 0 $ssl1 and $wtr1 and $s1->pending
91 0 0 0 !$s2_in_closed && length $b2to1 < $io_buffer_size
92 0 0 0 $ssl2 and $wtr2
0 0 0 $ssl2 and $wtr2 and $s2->pending
97 0 0 0 !$s1_out_closed && length $b2to1
98 0 0 0 !$s2_out_closed && length $b1to2
110 0 0 0 $wtr1 and not $ssl_wtw1
111 0 0 0 $wtr2 and not $ssl_wtw2
113 0 0 0 $wtw1 and not $ssl_wtr1
114 0 0 0 $wtw2 and not $ssl_wtr2
123 0 0 0 $wtr1 and vec $ssl_wtw1 ? $bitsw : $bitsr, $fn1, 1
127 0 0 0 $ssl1 and not defined $bytes
152 0 0 0 $wtr2 and vec $ssl_wtw2 ? $bitsw : $bitsr, $fn2, 1
156 0 0 0 $ssl2 and not defined $bytes
180 0 0 0 $wtw1 and vec $ssl_wtr1 ? $bitsr : $bitsw, $fn1, 1
184 0 0 0 $ssl1 and not defined $bytes
187 0 0 0 $s2_in_closed and not length $b2to1
214 0 0 0 $wtw2 and vec $ssl_wtr2 ? $bitsr : $bitsw, $fn2, 1
218 0 0 0 $ssl2 and not defined $bytes
221 0 0 0 $s1_in_closed and length $b1to2
250 0 0 0 $ssl1 and $close{'s1in'} || $close{'s1out'}
253 0 0 0 $ssl2 and $close{'s2in'} || $close{'s2out'}
256 0 0 0 $close{'s1in'} and not length $b1to2
259 0 0 0 $close{'s2in'} and not length $b2to1

or 2 conditions

line l !l condition
42 0 0 delete $opts{'io_buffer_size'} || 65536
43 0 0 delete $opts{'io_chunk_size'} || 16384
56 0 0 delete $opts{'buffer_1to2'} // ''
57 0 0 delete $opts{'buffer_2to1'} // ''
126 0 0 $bytes // ''
155 0 0 $bytes // ''
183 0 0 $bytes // ''
217 0 0 $bytes // ''

or 3 conditions

line l !l&&r !l&&!r condition
102 0 0 0 $wtr1 or $wtr2
0 0 0 $wtr1 or $wtr2 or $wtw1
0 0 0 $wtr1 or $wtr2 or $wtw1 or $wtw2
110 0 0 0 $wtr1 and not $ssl_wtw1 or $ssl_wtr1
111 0 0 0 $wtr2 and not $ssl_wtw2 or $ssl_wtr2
113 0 0 0 $wtw1 and not $ssl_wtr1 or $ssl_wtw1
114 0 0 0 $wtw2 and not $ssl_wtr2 or $ssl_wtw2
250 0 0 0 $close{'s1in'} || $close{'s1out'}
253 0 0 0 $close{'s2in'} || $close{'s2out'}