X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F30.with_pid_file.t;h=8536c81867486ced6bc4f6bbdba97a3a52572bf6;hb=e7d94e6a7c67db5dd0d6986acb7e87d80d267e35;hp=2e6f718f9a2ee8e0da3efe328c4d60f7940ea744;hpb=fe0eeebc050311829e0f93a2d86018be78598d47;p=gitmo%2FMooseX-Daemonize.git diff --git a/t/30.with_pid_file.t b/t/30.with_pid_file.t index 2e6f718..8536c81 100644 --- a/t/30.with_pid_file.t +++ b/t/30.with_pid_file.t @@ -3,12 +3,15 @@ use strict; use warnings; -use Cwd; use File::Spec::Functions; -use Test::More no_plan => 1; -use Test::Exception; +use Test::More 'no_plan'; +use Test::Fatal; use Test::Moose; +use File::Temp qw(tempdir); + +my $dir = tempdir( CLEANUP => 1 ); + BEGIN { use_ok('MooseX::Daemonize::Core'); @@ -16,10 +19,9 @@ BEGIN { use constant DEBUG => 0; -my $CWD = Cwd::cwd; -my $PIDFILE = catfile($CWD, 'test-app.pid'); -$ENV{MX_DAEMON_STDOUT} = catfile($CWD, 'Out.txt'); -$ENV{MX_DAEMON_STDERR} = catfile($CWD, 'Err.txt'); +my $PIDFILE = catfile($dir, 'test-app.pid'); +$ENV{MX_DAEMON_STDOUT} = catfile($dir, 'Out.txt'); +$ENV{MX_DAEMON_STDERR} = catfile($dir, 'Err.txt'); { package MyFooDaemon; @@ -36,13 +38,13 @@ $ENV{MX_DAEMON_STDERR} = catfile($CWD, 'Err.txt'); # this tests our bad PID # cleanup functionality. - print "Our parent PID is " . $self->pidfile->pid . "\n"; + print "Our parent PID is " . $self->pidfile->pid . "\n" if ::DEBUG; $self->daemonize; return unless $self->is_daemon; # make it easy to find with ps - $0 = 'test-app'; + $0 = 'test-app-2'; $SIG{INT} = sub { print "Got INT! Oh Noes!"; $self->pidfile->remove; @@ -71,9 +73,11 @@ ok($d->has_pidfile, '... we have a pidfile value'); ok(!(-e $PIDFILE), '... the PID file does not exist yet'); -lives_ok { - $d->start; -} '... successfully daemonized from (' . $$ . ')'; +is( + exception { $d->start }, + undef, + '... successfully daemonized from (' . $$ . ')', +); my $p = $d->pidfile; isa_ok($p, 'MooseX::Daemonize::Pid::File');