Shut up another test
Tomas Doran [Sun, 22 Jan 2012 10:37:08 +0000 (10:37 +0000)]
t/aggregate/psgi_file.t

index 7327d4a..a06b221 100644 (file)
@@ -6,6 +6,7 @@ use lib "$FindBin::Bin/../lib";
 use File::Temp qw/ tempdir /;
 use TestApp;
 use File::Spec;
+use Carp qw/croak/;
 
 my $home = tempdir( CLEANUP => 1 );
 my $path = File::Spec->catfile($home, 'testapp.psgi');
@@ -19,11 +20,26 @@ use TestApp;
 TestApp->psgi_app;
 };
 close($psgi);
+
+my ($saved_stdout, $saved_stderr);
+open( $saved_stdout, '>&'. STDOUT->fileno )
+            or croak("Can't dup stdout: $!");
+open( $saved_stderr, '>&'. STDERR->fileno )
+            or croak("Can't dup stderr: $!");
+open( STDOUT, '+>', undef )
+            or croak("Can't reopen stdout to /dev/null");
+open( STDERR, '+>', undef )
+            or croak("Can't reopen stdout to /dev/null");
 # Check we wrote out something that compiles
 system($^X, '-I', "$FindBin::Bin/../lib", '-c', $path)
     ? fail('.psgi does not compile')
     : pass('.psgi compiles');
 
+open( STDOUT, '>&'. fileno($saved_stdout) )
+            or croak("Can't restore stdout: $!");
+open( STDERR, '>&'. fileno($saved_stderr) )
+            or croak("Can't restore stderr: $!");
+
 # NOTE - YOU *CANNOT* do something like:
 #my $psgi_ref = require $path;
 # otherwise this test passes!