use strict;
use warnings;
-use Cwd;
use File::Spec::Functions;
use Test::More no_plan => 1;
use Test::Exception;
use Test::Moose;
+use File::Temp qw(tempdir);
+
+my $dir = tempdir( CLEANUP => 1 );
+
BEGIN {
use_ok('MooseX::Daemonize::Core');
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;
# 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;