You are viewing a plain text version of this content. The canonical link for it is here.
Posted to apreq-cvs@httpd.apache.org by jo...@apache.org on 2003/04/18 16:50:12 UTC

cvs commit: httpd-apreq/t/apreq big_input.t cookie.t inherit.t request.t

joes        2003/04/18 07:50:11

  Modified:    t/apreq  big_input.t cookie.t inherit.t request.t
  Log:
  s/::/__/ to sync with latest Apache::Test uris.
  
  Revision  Changes    Path
  1.2       +1 -1      httpd-apreq/t/apreq/big_input.t
  
  Index: big_input.t
  ===================================================================
  RCS file: /home/cvs/httpd-apreq/t/apreq/big_input.t,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- big_input.t	5 Apr 2002 19:42:20 -0000	1.1
  +++ big_input.t	18 Apr 2003 14:50:10 -0000	1.2
  @@ -8,7 +8,7 @@
   use Apache::TestUtil;
   use Apache::TestRequest qw(GET_BODY POST_BODY);
   
  -my $location = "/TestApReq::big_input";
  +my $location = "/TestApReq__big_input";
   
   my @key_len = (5, 100, 305);
   my @key_num = (5, 15, 26);
  
  
  
  1.2       +1 -1      httpd-apreq/t/apreq/cookie.t
  
  Index: cookie.t
  ===================================================================
  RCS file: /home/cvs/httpd-apreq/t/apreq/cookie.t,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- cookie.t	5 Apr 2002 19:42:20 -0000	1.1
  +++ cookie.t	18 Apr 2003 14:50:10 -0000	1.2
  @@ -9,7 +9,7 @@
   
   plan tests => 1;
   
  -my $location = "/TestApReq::cookie";
  +my $location = "/TestApReq__cookie";
   
   {
       # basic param() test
  
  
  
  1.2       +1 -1      httpd-apreq/t/apreq/inherit.t
  
  Index: inherit.t
  ===================================================================
  RCS file: /home/cvs/httpd-apreq/t/apreq/inherit.t,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- inherit.t	5 Apr 2003 23:29:37 -0000	1.1
  +++ inherit.t	18 Apr 2003 14:50:10 -0000	1.2
  @@ -7,7 +7,7 @@
   use Apache::TestRequest qw(GET_BODY UPLOAD_BODY);
   
   plan tests => 1;
  -my $location = "/TestApReq::inherit";
  +my $location = "/TestApReq__inherit";
   ok t_cmp(<< 'VALUE', GET_BODY($location), "inheritance");
   method => GET
   VALUE
  
  
  
  1.2       +1 -1      httpd-apreq/t/apreq/request.t
  
  Index: request.t
  ===================================================================
  RCS file: /home/cvs/httpd-apreq/t/apreq/request.t,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- request.t	5 Apr 2002 19:42:20 -0000	1.1
  +++ request.t	18 Apr 2003 14:50:10 -0000	1.2
  @@ -8,7 +8,7 @@
   
   plan tests => 2;
   
  -my $location = "/TestApReq::request";
  +my $location = "/TestApReq__request";
   #print GET_BODY $location;
   
   {
  
  
  

Re: Win32 test changes

Posted by Stas Bekman <st...@stason.org>.
Randy Kobes wrote:
> On Wed, 23 Apr 2003, Stas Bekman wrote:
> 
> 
>>Randy Kobes wrote:
> 
> [ .. ]
> 
>>>That's right - the current cvs Apache-Test picks up the system's
>>>mod_perl.so fine. Maybe this is too much hand-holding, but the
>>>patch I had also makes some typical guesses about what
>>>$ENV{APACHE} could be set to, and sets it if it finds a 1.3
>>>version, or otherwise prompts the user for it (Win32 users
>>>typically may not be familiar with environment variables, even
>>>the PATH, judging by a lot of messages I get). Without this, if
>>>one doesn't set $ENV{APACHE} on Win32, a 2.0 Apache is used, if
>>>found. Would this be OK to leave in? Having to pick up a 1.3
>>>Apache on Win32 without $ENV{APACHE} set is such a special case
>>>that it's probably not worth working into Apache-Test, and yet
>>>libapreq is a really important package, so this special treatment
>>>might be justified in this case ...
>>
>>You are talking about apreq1 specific patch, right?
>>
>>So now you only need this in the apreq distro:
>>
>>TEST.PL.win32
>>-------------
>>#!perl -w
>>use strict;
>>$ENV{APACHE} = "MYAPACHE";
>>use Apache::TestRunPerl();
>>Apache::TestRunPerl->new->run(@ARGV);
> 
> 
> That's exactly right - the only difference I was thinking
> of now between the TEST.PL.win32 and TEST.PL is the
> addition of 
>    $ENV{APACHE} = "MYAPACHE";
> which Makefile.PL fills in, so that this can get propagated
> to Apache-Test. The stuff I had earlier about overriding
> one of the methods of Apache::TestRunPerl isn't needed now.

So this thing can be added directly to TEST.PL with the OS check:

$ENV{APACHE} = "MYAPACHE" if $^O eq 'MSWin32';

>>btw, you can't use this line with perl < 5.8.0:
> 
> 
>>use warnings FATAL => 'all';
> 
> 
> This seemed to work OK for me with perl-5.6.1 (???).

Ah, yes, I have confused with a new NONFATAL flag added in 5.8.0. But don't 
forget that the 'warnings' pragma was added in 5.6 and apreq has to compile 
with 5.005_03. Apache::Test provides a special workaround for older versions, 
see: Apache/Test5005compat.pm



__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


Re: Win32 test changes

Posted by Randy Kobes <ra...@theoryx5.uwinnipeg.ca>.
On Wed, 23 Apr 2003, Stas Bekman wrote:

> Randy Kobes wrote:
[ .. ]
> > 
> > That's right - the current cvs Apache-Test picks up the system's
> > mod_perl.so fine. Maybe this is too much hand-holding, but the
> > patch I had also makes some typical guesses about what
> > $ENV{APACHE} could be set to, and sets it if it finds a 1.3
> > version, or otherwise prompts the user for it (Win32 users
> > typically may not be familiar with environment variables, even
> > the PATH, judging by a lot of messages I get). Without this, if
> > one doesn't set $ENV{APACHE} on Win32, a 2.0 Apache is used, if
> > found. Would this be OK to leave in? Having to pick up a 1.3
> > Apache on Win32 without $ENV{APACHE} set is such a special case
> > that it's probably not worth working into Apache-Test, and yet
> > libapreq is a really important package, so this special treatment
> > might be justified in this case ...
> 
> You are talking about apreq1 specific patch, right?
> 
> So now you only need this in the apreq distro:
> 
> TEST.PL.win32
> -------------
> #!perl -w
> use strict;
> $ENV{APACHE} = "MYAPACHE";
> use Apache::TestRunPerl();
> Apache::TestRunPerl->new->run(@ARGV);

That's exactly right - the only difference I was thinking
of now between the TEST.PL.win32 and TEST.PL is the
addition of 
   $ENV{APACHE} = "MYAPACHE";
which Makefile.PL fills in, so that this can get propagated
to Apache-Test. The stuff I had earlier about overriding
one of the methods of Apache::TestRunPerl isn't needed now.

> btw, you can't use this line with perl < 5.8.0:

> use warnings FATAL => 'all';

This seemed to work OK for me with perl-5.6.1 (???).

-- 
best regards,
randy


Re: Win32 test changes

Posted by Stas Bekman <st...@stason.org>.
Randy Kobes wrote:
> On Wed, 23 Apr 2003, Stas Bekman wrote:
> 
> 
>>Joe Schaefer wrote:
>>
>>>Randy Kobes <ra...@theoryx5.uwinnipeg.ca> writes:
>>>
>>>
>>>>I've attached a diff for the httpd-apreq Makefile.PL which
>>>>implements for Win32 the new Apache-Test tests. The main thing
>>>>that's done here is to find Apache.exe and subsequently
>>>>set $ENV{APACHE}. The changes I think don't affect non-Win32
>>>>systems - if they're OK, I can commit them.
>>>
>>>+1.
>>
>>So I believe this is not needed anymore (Randy, please
>>confirm). Just update Apache::Test to the current cvs version.
> 
> 
> That's right - the current cvs Apache-Test picks up the system's
> mod_perl.so fine. Maybe this is too much hand-holding, but the
> patch I had also makes some typical guesses about what
> $ENV{APACHE} could be set to, and sets it if it finds a 1.3
> version, or otherwise prompts the user for it (Win32 users
> typically may not be familiar with environment variables, even
> the PATH, judging by a lot of messages I get). Without this, if
> one doesn't set $ENV{APACHE} on Win32, a 2.0 Apache is used, if
> found. Would this be OK to leave in? Having to pick up a 1.3
> Apache on Win32 without $ENV{APACHE} set is such a special case
> that it's probably not worth working into Apache-Test, and yet
> libapreq is a really important package, so this special treatment
> might be justified in this case ...

You are talking about apreq1 specific patch, right?

So now you only need this in the apreq distro:

TEST.PL.win32
-------------
#!perl -w
use strict;
$ENV{APACHE} = "MYAPACHE";
use Apache::TestRunPerl();
Apache::TestRunPerl->new->run(@ARGV);


btw, you can't use this line with perl < 5.8.0:

use warnings FATAL => 'all';

__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


Re: Win32 test changes

Posted by Randy Kobes <ra...@theoryx5.uwinnipeg.ca>.
On Wed, 23 Apr 2003, Stas Bekman wrote:

> Joe Schaefer wrote:
> > Randy Kobes <ra...@theoryx5.uwinnipeg.ca> writes:
> > 
> >>I've attached a diff for the httpd-apreq Makefile.PL which
> >>implements for Win32 the new Apache-Test tests. The main thing
> >>that's done here is to find Apache.exe and subsequently
> >>set $ENV{APACHE}. The changes I think don't affect non-Win32
> >>systems - if they're OK, I can commit them.
> > 
> > +1.
> 
> So I believe this is not needed anymore (Randy, please
> confirm). Just update Apache::Test to the current cvs version.

That's right - the current cvs Apache-Test picks up the system's
mod_perl.so fine. Maybe this is too much hand-holding, but the
patch I had also makes some typical guesses about what
$ENV{APACHE} could be set to, and sets it if it finds a 1.3
version, or otherwise prompts the user for it (Win32 users
typically may not be familiar with environment variables, even
the PATH, judging by a lot of messages I get). Without this, if
one doesn't set $ENV{APACHE} on Win32, a 2.0 Apache is used, if
found. Would this be OK to leave in? Having to pick up a 1.3
Apache on Win32 without $ENV{APACHE} set is such a special case
that it's probably not worth working into Apache-Test, and yet
libapreq is a really important package, so this special treatment
might be justified in this case ...

-- 
best regards, 
randy


Re: Win32 test changes

Posted by Stas Bekman <st...@stason.org>.
Joe Schaefer wrote:
> Randy Kobes <ra...@theoryx5.uwinnipeg.ca> writes:
> 
> 
>>I've attached a diff for the httpd-apreq Makefile.PL which
>>implements for Win32 the new Apache-Test tests. The main thing
>>that's done here is to find Apache.exe and subsequently
>>set $ENV{APACHE}. The changes I think don't affect non-Win32
>>systems - if they're OK, I can commit them.
> 
> 
> +1.

So I believe this is not needed anymore (Randy, please confirm). Just update 
Apache::Test to the current cvs version.

I've just tested on linux:

/home/stas/perl/blead-ithread/bin/perl Makefile.PL \
-apxs /home/stas/httpd/1.3/bin/apxs
make && make test
apreq/cookie.......ok
apreq/inherit......ok
apreq/request......ok
All tests successful.
Files=4, Tests=25,  4 wallclock secs ( 3.50 cusr +  0.37 csys =  3.87 CPU)

__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


Re: Win32 test changes

Posted by Joe Schaefer <jo...@sunstarsys.com>.
Randy Kobes <ra...@theoryx5.uwinnipeg.ca> writes:

> I've attached a diff for the httpd-apreq Makefile.PL which
> implements for Win32 the new Apache-Test tests. The main thing
> that's done here is to find Apache.exe and subsequently
> set $ENV{APACHE}. The changes I think don't affect non-Win32
> systems - if they're OK, I can commit them.

+1.

-- 
Joe Schaefer

Win32 test changes

Posted by Randy Kobes <ra...@theoryx5.uwinnipeg.ca>.
I've attached a diff for the httpd-apreq Makefile.PL which
implements for Win32 the new Apache-Test tests. The main thing
that's done here is to find Apache.exe and subsequently
set $ENV{APACHE}. The changes I think don't affect non-Win32
systems - if they're OK, I can commit them.

One problem I'm having (this is more to do with Apache-Test) is
that, in searching for modules to load from the system's Apache
httpd.conf, mod_perl.so is skipped. This is what one wants for
the mod_perl tests (as one wants to test the built mod_perl), but
for 3rd party modules like this, one needs to load mod_perl.so.
I think this is just a problem on Win32, as Unix users don't
seem to find this. I couldn't find out where the problem lies.
A workaround I've used for the httpd-apreq tests is to have
a TEST.PL.win32 such as
===========================================================
#!perl
use strict;
$ENV{APACHE} = "MYAPACHE";
use warnings FATAL => 'all';
use Apache::TestRunPerl();

package MyTest;
our @ISA = qw(Apache::TestRunPerl);
sub pre_configure {
}

MyTest->new->run(@ARGV);
==========================================================
(where MYAPACHE is set equal to the Apache.exe found in 
Makefile.PL), and then use this file for generating t/TEST. 
Doing so, all tests pass (perl-5.6.1, apache-1.3.27). 

This isn't ideal, but would this be OK until the problem
with not loading mod_perl.so for 3rd party modules on
Win32 is fixed?

-- 
best regards,
randy