Skip Menu |

This queue is for tickets about the Apache-Test CPAN distribution.

Report information
The Basics
Id: 40133
Status: resolved
Priority: 0/
Queue: Apache-Test

People
Owner: Nobody in particular
Requestors: MARKSTOS [...] cpan.org
Cc: mpeters [...] cpan.org
AdminCc:

Bug Information
Severity: Important
Broken in: 1.30
Fixed in: (no value)



CC: mpeters [...] cpan.org
Subject: Apache::TestMM tries to create 't/TEST.PL' in the wrong place
Apache::Test maintainers, I help maintain CGI::Application::Dispatch, and it looks like it is now failing to install now when it gets to the part where Apache::TestMM is used. The bug report in our queue is here: http://rt.cpan.org/Ticket/Display.html?id=39793 It looks like that Apache::TestMM might be trying to create t/TEST.PL in the wrong location, or that we otherwise somehow using it wrong. Could you take a look and confirm whether it is an Apache::TestMM bug or not? Thanks! Mark
From looking at the test reports for CGI::Application::Dispatch, the issue appears to be somewhat Linux specific: http://bbbike.radzeit.de/~slaven/cpantestersmatrix.cgi?dist=CGI-Application-Dispatch+2.13 Reviewing the "UNKNOWN" test failures there will show this issue. Mark
Hi Mark, I'm sorry that I didn't pick up on this issue earlier. The link below has gone stale and is 404. I reviewed the latest release of CGI::Application::Dispatch and it looks like you removed the Makefile.PL. If there are any questions I can still answer to help, let me know. I've a lot of experience with the innards of Apache::Test. I also released Apache::Bootstrap recently which is aimed at making dual life Apache::* modules easy. It has some of the Apache::Test work in place there (generate_script etc is called internally). - Fred On Sat Nov 01 21:08:50 2008, MARKSTOS wrote: Show quoted text
> From looking at the test reports for CGI::Application::Dispatch, the > issue appears to be somewhat Linux specific: > > http://bbbike.radzeit.de/~slaven/cpantestersmatrix.cgi?dist=CGI- > Application-Dispatch+2.13 > > Reviewing the "UNKNOWN" test failures there will show this issue. > > Mark
Mark, I've reviewed the Makefile.PL for 2.15 http://cpansearch.perl.org/src/MARKSTOS/CGI-Application-Dispatch-2.15/Makefile.PL I also looked at the UNKNOWN results as you suggested. I think that perhaps t/TEST was not being generated because of this code: # Apache::TestMM::filter_args(); # Apache::TestMM::generate_script('t/TEST'); But it sounds like you may have tried that. This Apache::Test config is tricky, here is what I suggest. Take a look at this sub check_for_apache_test() from Apache::Bootstrap [2] And then look at this test target in the Apache::Dispatch Makefile.PL for the package MY; section [1]. If you use an approach like this, tests should be skipped if Apache::Test isn't present, and your t/TEST file should generate ok (I just reviewed that and tested it here). I'm going to mark this resolved since 2.16 isn't showing these issues, but please feel free to ping me or open up a new ticket if you try to do something like this again and are having issues. [1] sub test { my $self = shift; eval { require Test::More } or return <<EOF; test:: \t\@echo sorry, cannot run tests without Test::More EOF return $self->Apache::TestMM::test(@_) if $HAS_APACHE_TEST; return <<EOF test:: \t\@echo \t\@echo sorry, cannot run tests without a properly \t\@echo configured Apache-Test environment \t\@echo EOF } [2] sub check_for_apache_test { my ( $self, $at_min_ver ) = @_; return unless eval { require Apache::Test; if ( $Apache::Test::VERSION < ( $at_min_ver || 0 ) ) { warn "Apache::Test version is " . $Apache::Test::VERSION . ", minimum version required is $at_min_ver" . ", tests will be skipped\n"; die; } require Apache::TestMM; require Apache::TestRunPerl; 1; }; Apache::TestMM::filter_args(); no warnings; # silence '@Apache::TestMM::Argv used only once' warning my %args = @Apache::TestMM::Argv; return unless ( ( Apache::TestConfig->can('custom_config_path') and -f Apache::TestConfig->custom_config_path() ) or $args{apxs} or $args{httpd} or $ENV{APACHE_TEST_HTTPD} or $ENV{APACHE_TEST_APXS} ); Apache::TestRunPerl->generate_script(); return $Apache::Test::VERSION; }