got 01.filecreate.t passing ...
[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         while (1) {
24             $Test->ok( $count++, "$count output_ok" );
25             sleep(1);
26         }
27
28     }
29     no Moose;
30 }
31
32 package main;
33 use Cwd;
34
35 ## Try to make sure we are in the test directory
36 chdir 't' if ( Cwd::cwd() !~ m|/t$| );
37 my $cwd = Cwd::cwd();
38 my $app = TestOutput->new(
39     pidbase     => $cwd,
40     test_output => join( '/', $cwd, 'results' ),
41 );
42 daemonize_ok( $app, 'child forked okay' );
43 sleep(5);    # give ourself a chance to produce some output
44 $app->stop( no_exit => 1 );
45
46 check_test_output($app);
47 unlink( $app->test_output );