On Jan 20, 2004, at 11:20 PM, Stas Bekman wrote:
Does the patch below solve the problem?
Maybe, but it's not quite there yet:
Can't locate object method "chdir_t" via package "Apache::TestHarness" at lib/Apache/TestRun.pm line 648.
Sorry, David, I guess I was testing with the wrong version. Here is a new patch. It breaks quite a few tests in modperl-2.0 but it's because they rely on that chdir_t, and can be fixed to be relocatable. It's possible that there are other implications, but I believe they all can be fixed. But first let me know if that patch does the trick for you.
Index: lib/Apache/TestHarness.pm
===================================================================
RCS file: /home/cvs/httpd-test/perl-framework/Apache-Test/lib/Apache/TestHarness.pm,v
retrieving revision 1.12
diff -u -r1.12 TestHarness.pm
--- lib/Apache/TestHarness.pm 12 Sep 2003 02:20:27 -0000 1.12
+++ lib/Apache/TestHarness.pm 21 Jan 2004 20:36:44 -0000
@@ -6,16 +6,10 @@
use Test::Harness ();
use Apache::TestSort ();
use Apache::TestTrace;
-use File::Spec::Functions qw(catfile);
+use File::Spec::Functions qw(catfile catdir);
use File::Find qw(finddepth);
use File::Basename qw(dirname);
-sub chdir_t {
- chdir 't' if -d 't';
-#Apache::TestConfig->new takes care of @INC
-# inc_fixup();
-}
-
sub inc_fixup {
# use blib
unshift @INC, map "blib/$_", qw(lib arch);
@@ -101,14 +95,14 @@
my $args = shift;
my @tests = ();- chdir_t();
+ my $base = -d 't' ? catdir('t', '.') : '.'; my $ts = $args->{tests} || []; if (@$ts) {
for (@$ts) {
if (-d $_) {
- push(@tests, sort <$_/*.t>);
+ push(@tests, sort <$base/$_/*.t>);
}
else {
$_ .= ".t" unless /\.t$/;
@@ -118,7 +112,7 @@
}
else {
if ($args->{tdirs}) {
- push @tests, map { sort <$_/*.t> } @{ $args->{tdirs} };
+ push @tests, map { sort <$base/$_/*.t> } @{ $args->{tdirs} };
}
else {
finddepth(sub {
@@ -127,7 +121,7 @@
my $dotslash = catfile '.', "";
$t =~ s:^\Q$dotslash::;
push @tests, $t
- }, '.');
+ }, $base);
@tests = sort @tests;
}
}
Index: lib/Apache/TestRun.pm
===================================================================
RCS file:
/home/cvs/httpd-test/perl-framework/Apache-Test/lib/Apache/TestRun.pm,v
retrieving revision 1.143
diff -u -r1.143 TestRun.pm
--- lib/Apache/TestRun.pm 18 Jan 2004 08:34:29 -0000 1.143
+++ lib/Apache/TestRun.pm 21 Jan 2004 20:36:45 -0000
@@ -645,8 +645,6 @@my(@argv) = @_;
- Apache::TestHarness->chdir_t;
-
$self->getopts([EMAIL PROTECTED]); $self->pre_configure() if $self->can('pre_configure');
__________________________________________________________________ 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
