Business-BR-Ids
view release on metacpan or search on metacpan
t/lib/IO/Capture.pm view on Meta::CPAN
sub open_s8 {
my $glob = shift;
$memory = '';
open $glob, ">", \$memory or die $!;
}
sub close_s8 {
my $glob = shift;
close $glob or die $!;
return $memory;
}
# this works anywhere
# but is uses a temp file
my $tmp_fn = 't/0.tmp';
sub slurp_tmp {
local $/;
open TMP, $tmp_fn or die $!;
my $tmp = <TMP>;
close TMP or die $!;
return $tmp
}
sub open_s6 {
my $glob = shift;
open $glob, ">$tmp_fn" or die;
}
sub close_s6 {
my $glob = shift;
close $glob or die $!;
my $memory = slurp_tmp;
unlink $tmp_fn or die $!;
return $memory
}
1;
__END__
=head1 NAME
IO::Capture - Capture the output sent to a glob
=head1 SYNOPSIS
use IO::Capture qw(open_s close_s);
local *STDOUT; # localize STDOUT
open_s *STDOUT;
# print to STDOUT: output is saved
my $out = close_s *STDOUT; # and returned here
=head1 DESCRIPTION
This is a very fragile code. This is for testing
warnings to STDERR in "t/001_dot.t".
( run in 1.980 second using v1.01-cache-2.11-cpan-364913b4093 )