Stas Bekman wrote:
Steve Hay wrote:
Surely which tests get run should depend on which tests exist (*.t files), rather than which t/response/*.pm files exist?
It's a feature. *.t is autogenerated if t/response/*/*.pm is found. So if you want to create some module which is *not* a response handler, put it in t/lib or lib instead.
Ah. I didn't realise that.
Attached is a new test skeleton. I am able to reproduce the failure using the skeleton in the following way (the usual "perl Makefile.PL / make / make test" sequence won't work because of the hash_attack problem described above):
1. Extract tarball
2. Run "perl Makefile.PL -apxs C:\apache2\bin\apxs.bat" [or wherever your apxs is] to generate a t/TEST
3. Run "perl t/TEST t/modules/reload.t t/perl/api.t t/perl/ithreads.t" to explicitly run the tests that actually exist ;) This succeeds at this stage -- all tests OK.
4. Edit t/conf/httpd.conf as follows:
4a. Change the lines that look something like this:
<IfModule mod_perl.c> PerlRequire C:\Temp\bug-reporting-skeleton-mp2\t\conf\modperl_startup.pl </IfModule>
to something like this instead:
PerlSwitches -IC:\Temp\bug-reporting-skeleton-mp2\t\response PerlSwitches -IC:\Temp\bug-reporting-skeleton-mp2\t\lib PerlModule Apache2
4b. Insert the line:
PerlModule TestPerl::hash_attack
just before the lines:
<Location /TestPerl__hash_attack> SetHandler modperl PerlResponseHandler TestPerl::hash_attack </Location>
5. Run "perl t/TEST t/modules/reload.t t/perl/api.t t/perl/ithreads.t" again. This time, the ithreads.t test crashes the server.
Any chance you can make the failing tarball, which already includes all the above?
Do you mean a tarball which contains those instructions or a tarball of my skeleton tree in which those instructions have already been carried out?
I assume you mean the former, since latter wouldn't be very useful. Attached (hopefully) is a new tarball with a (simplified) HOW_TO_REPRODUCE file, and hash_attack.pm moved to t/lib/
Your t/conf/extra.conf.in has hardcoded path and you miss PerlModule Apache2. so it should be:
PerlSwitches [EMAIL PROTECTED]@ PerlSwitches [EMAIL PROTECTED]@/response PerlSwitches [EMAIL PROTECTED]@/lib PerlModule Apache2 PerlModule Apache::RequestRec PerlModule Apache::TestHandler PerlModule APR::Table PerlModule TestPerl::hash_attack
As expected, I get no problem with this setup. :(
-- __________________________________________________________________ Stas Bekman JAm_pH ------> Just Another mod_perl Hacker http://stason.org/ mod_perl Guide ---> http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
