patch stuff up for releasing
[gitmo/MooseX-Daemonize.git] / t / 02.stdout.t
1 use Test::More no_plan => 1;
2 use Test::Builder;
3 use Test::MooseX::Daemonize;
4 use MooseX::Daemonize;
5
6 my $Test = Test::Builder->new;
7
8 {
9
10     package TestOutput;
11     use Moose;
12     with qw(MooseX::Daemonize);
13     with qw(Test::MooseX::Daemonize::Testable);    # setup our test environment
14
15     after start => sub {
16         my ($self) = @_;
17         $self->output_ok();
18     };
19
20     sub output_ok {
21         my ($self) = @_;
22         my $count = 1;
23         for ( 0 .. 3 ) {
24             $Test->ok( $count++, "$count output_ok" );
25             sleep(1);
26         }
27     }
28     no Moose;
29 }
30
31 package main;
32 use Cwd;
33
34 ## Try to make sure we are in the test directory
35 chdir 't' if ( Cwd::cwd() !~ m|/t$| );
36 my $cwd = Cwd::cwd();
37 my $app = TestOutput->new(
38     pidbase     => $cwd,
39     test_output => join( '/', $cwd, 'results' ),
40 );
41 daemonize_ok( $app, 'child forked okay' );
42 sleep(3);    # give ourself a chance to produce some output
43 $app->stop( no_exit => 1 );
44
45 check_test_output($app);
46 unlink( $app->test_output );
47 exit;