X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F02.stdout.t;h=d7ed21222b649e07e247cfbe14fd408bf68e9629;hb=380acf654017b03f0ea0342bca243c509904f1bb;hp=5ce4e99eb647e85eff12efc890b8da88b1338462;hpb=7a4ac6b206281dbfd5356b8917e155724488d4d7;p=gitmo%2FMooseX-Daemonize.git diff --git a/t/02.stdout.t b/t/02.stdout.t index 5ce4e99..d7ed212 100644 --- a/t/02.stdout.t +++ b/t/02.stdout.t @@ -14,7 +14,8 @@ my $Test = Test::Builder->new; after start => sub { my ($self) = @_; - $self->output_ok(); + $self->output_ok() + if $self->is_daemon; }; sub output_ok { @@ -29,18 +30,29 @@ my $Test = Test::Builder->new; } package main; -use Cwd; +use strict; +use warnings; + +use File::Spec::Functions; +use File::Temp qw(tempdir); + +my $dir = tempdir( CLEANUP => 1 ); ## Try to make sure we are in the test directory -chdir 't' if ( Cwd::cwd() !~ m|/t$| ); -my $cwd = Cwd::cwd(); my $app = TestOutput->new( - pidbase => $cwd, - test_output => join( '/', $cwd, 'results' ), + pidbase => $dir, + test_output => catfile($dir, 'results'), ); daemonize_ok( $app, 'child forked okay' ); sleep(3); # give ourself a chance to produce some output -$app->stop( no_exit => 1 ); + +my $warnings = ""; +{ + local $SIG{__WARN__} = sub { $warnings .= $_[0]; warn @_ }; + $app->stop( no_exit => 1 ); +} + +is($warnings, "", "No warnings from stop"); check_test_output($app); unlink( $app->test_output );