Branch Coverage

blib/lib/POE/Wheel/FollowTail.pm
Criterion Covered Total %
branch 87 152 57.2


line true false branch
43 0 21 if (exists $INC{'Tk.pm'})
61 0 99 if @_ and ref $_[0] eq 'POE::Kernel'
64 0 99 unless defined $POE::Wheel::FollowTail::poe_kernel
66 0 99 unless $params{'Handle'} xor defined $params{'Filename'}
70 97 2 unless defined $driver
73 94 5 unless defined $filter
75 0 99 unless defined $params{'InputEvent'}
80 5 94 defined $params{'PollInterval'} ? :
87 0 99 if (exists $params{'SeekBack'}) { }
0 99 elsif (exists $params{'Seek'}) { }
89 0 0 if (exists $params{'Seek'})
116 7 92 if (defined $filename) { }
92 0 elsif (defined $handle) { }
118 4 3 if $handle
132 96 3 if (defined $handle)
136 93 3 if (-f $handle)
140 93 0 if ($seek < 0) { }
0 0 elsif ($seek > 0) { }
0 0 elsif (exists $params{'Seek'}) { }
0 0 elsif (exists $params{'SeekBack'}) { }
141 93 0 if (defined $end and $end < -$seek) { }
151 0 0 if ($seek > $end) { }
172 93 0 unless (defined $params{'SeekBack'} or defined $params{'Seek'})
175 0 1 unless @$raw_input
189 0 3 if (-d $$self[0])
196 0 3 if $params{'SeekBack'}
200 0 3 if (POE::Kernel::RUNNING_IN_HELL() and not -S $handle)
208 0 3 if defined $params{'PollInterval'}
261 21 2 if (defined(my $raw_input = $driver->get($$handle))) { }
281 2 0 if ($! or -S $$handle or -t $$handle) { }
0 0 elsif (defined $$event_idle) { }
283 2 0 if $$event_error
306 6 90 if (defined $$self[1]) { }
350 0 554 unless (defined $$handle and fileno $$handle)
352 0 0 if $$event_error
362 183 371 if (defined(my $raw_input = $driver->get($$handle)))
367 172 2028 unless @$next_rec
378 105 67 if defined $$state_read
383 0 371 if ($!)
385 0 0 if $$event_error
392 0 371 defined $$filename ? :
398 0 371 unless (@new_stat)
400 0 0 if $$event_error
415 371 0 unless (S_ISBLK($new_stat[2]) or S_ISCHR($new_stat[2]))
422 0 371 if ($new_stat[1] != $$last_stat[1] or $new_stat[0] != $$last_stat[0] or $new_stat[6] != $$last_stat[6] or $new_stat[3] != $$last_stat[3] or $new_stat[7] < $$last_stat[7]) { }
0 371 elsif (defined $$event_idle) { }
444 0 0 if $$event_reset
455 371 0 if defined $$state_read
491 11 23 if (not $$handle) { }
495 5 6 unless ($$handle)
496 5 0 if defined $$event_idle
497 5 0 if defined $$state_read
503 6 0 if $$event_reset
514 18 11 if (defined(my $raw_input = $driver->get($$handle)))
529 13 5 if defined $$state_read
534 0 11 if ($!)
536 0 0 if $$event_error
543 2 9 unless (@new_stat)
545 0 2 if ($! != 2)
546 0 0 if $$event_error
563 11 0 unless (S_ISBLK($new_stat[2]) or S_ISCHR($new_stat[2]))
570 3 8 if ($new_stat[1] != $$last_stat[1] or $new_stat[0] != $$last_stat[0] or $new_stat[6] != $$last_stat[6] or $new_stat[3] != $$last_stat[3] or $new_stat[7] < $$last_stat[7]) { }
2 6 elsif (defined $$event_idle) { }
594 3 0 if defined $$state_read
604 8 0 if defined $$state_read
614 0 8 if scalar @_ & 1
619 2 8 if ($name eq 'InputEvent') { }
2 6 elsif ($name eq 'ErrorEvent') { }
0 6 elsif ($name eq 'ResetEvent') { }
6 0 elsif ($name eq 'IdleEvent') { }
620 2 0 if (defined $event) { }
648 87 0 if defined $$self[0]
652 87 0 if ($$self[9])
679 1 17 if (-p $filename)
680 1 0 if open $handle, '+<', $filename
684 9 8 if open $handle, '<', $filename