comparison lib/Test/Nginx.pm @ 219:ce2e23daa1da

Tests: minimal win32 support.
author Maxim Dounin <mdounin@mdounin.ru>
date Fri, 01 Jun 2012 21:34:28 +0400
parents 5137f27935b4
children f6f60780f758
comparison
equal deleted inserted replaced
218:7f4a913d7504 219:ce2e23daa1da
37 'nginx-test-XXXXXXXXXX', 37 'nginx-test-XXXXXXXXXX',
38 TMPDIR => 1, 38 TMPDIR => 1,
39 CLEANUP => not $ENV{TEST_NGINX_LEAVE} 39 CLEANUP => not $ENV{TEST_NGINX_LEAVE}
40 ) 40 )
41 or die "Can't create temp directory: $!\n"; 41 or die "Can't create temp directory: $!\n";
42 $self->{_testdir} =~ s!\\!/!g if $^O eq 'MSWin32';
42 43
43 return $self; 44 return $self;
44 } 45 }
45 46
46 sub DESTROY { 47 sub DESTROY {
197 sub stop() { 198 sub stop() {
198 my ($self) = @_; 199 my ($self) = @_;
199 200
200 return $self unless $self->{_started}; 201 return $self unless $self->{_started};
201 202
202 kill 'QUIT', `cat $self->{_testdir}/nginx.pid`; 203 if ($^O eq 'MSWin32') {
204 my $testdir = $self->{_testdir};
205 my @globals = $self->{_test_globals} ?
206 () : ('-g', "pid $testdir/nginx.pid; "
207 . "error_log $testdir/error.log debug;");
208 exec($NGINX, '-c', "$testdir/nginx.conf", '-s', 'stop',
209 @globals)
210 or die "Unable to exec(): $!\n";
211
212 } else {
213 kill 'QUIT', `cat $self->{_testdir}/nginx.pid`;
214 }
215
203 wait; 216 wait;
204 217
205 $self->{_started} = 0; 218 $self->{_started} = 0;
206 219
207 return $self; 220 return $self;