summaryrefslogtreecommitdiffstats
path: root/t/role.t
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2012-03-07 03:00:03 -0600
committerJesse Luehrs <doy@tozt.net>2012-03-07 03:00:03 -0600
commitf9005e892729261fb9c10d370f161fa1f4fd7393 (patch)
tree550c710bec43f3310a9da442373c94f34e0073d4 /t/role.t
parente1b070276d8c8beb0dcc76bc2c2ac070564e0c24 (diff)
downloadterm-filter-f9005e892729261fb9c10d370f161fa1f4fd7393.tar.gz
term-filter-f9005e892729261fb9c10d370f161fa1f4fd7393.zip
few more tweaks to make these tests more reliable
Diffstat (limited to 't/role.t')
-rw-r--r--t/role.t9
1 files changed, 6 insertions, 3 deletions
diff --git a/t/role.t b/t/role.t
index 25cfec0..1c3c9b0 100644
--- a/t/role.t
+++ b/t/role.t
@@ -120,14 +120,17 @@ alarm 60;
}
sub full_read {
- my ($pty) = @_;
+ my ($fh) = @_;
- my $select = IO::Select->new($pty);
+ my $select = IO::Select->new($fh);
return if $select->has_exception(0.1);
+ 1 while !$select->can_read(1);
+
my $ret;
while ($select->can_read(1)) {
- my $new = $pty->read;
+ my $new;
+ sysread($fh, $new, 4096);
last unless defined($new) && length($new);
$ret .= $new;
return $ret if $select->has_exception(0.1);