Subject: | Test failing while installing DBD::JDBC 0.71 on SunOS |
Hello Gennis,
I'm trying to install DBD::JDBC 0.71 on a Solaris machine, and I get one
test unit failing:
poleggim@kappa1 ~/.cpan/build/DBD-JDBC-0.71-ZXOzcX:
$ prove -v t/03_hsqldb.t
t/03_hsqldb.t ..
1..22
ok 1 - server started
Exception in thread "main" java.lang.NoClassDefFoundError:
com/vizdom/dbd/jdbc/Server
not ok 2 - connected
ok 3 # skip Connection failed
....
# Failed test 'connected'
# at t/03_hsqldb.t line 34.
It looks like the customary classpath problem, indeed this
$ export
CLASSPATH=./dbd_jdbc.jar:./t/hsqldb/hsqldb-1.8.0.2.jar:./t/hsqldb/log4j-1.2.13.jar
solves the problem. Then it goes through, but an (unlucky?) "exit 1" at
the end spoils the fun:
ok 22 - disconnect
# Looks like your test exited with 1 just after 22.
Dubious, test returned 1 (wstat 256, 0x100)
All 22 subtests passed
I attach a patch which fixes both the problems (not tested on Windows).
Cheers,
Marco E.
Subject: | 03_hsqldb.t.patch |
*** 03_hsqldb.t.orig Wed Jun 24 10:12:24 2009
--- 03_hsqldb.t Wed Jun 24 11:02:04 2009
***************
*** 9,14 ****
--- 9,24 ----
$| = 1;
BEGIN {
+ my $sep = ($^O =~ /win32/i) ? ';' : ':';
+ my @cpath = split(/$sep/, $ENV{CLASSPATH});
+ push(@cpath,
+ qw{
+ dbd_jdbc.jar
+ t/hsqldb/hsqldb-1.8.0.2.jar
+ t/hsqldb/log4j-1.2.13.jar
+ }
+ );
+ $ENV{CLASSPATH} = join($sep, @cpath);
$test_count = 22;
plan tests => $test_count;
}
***************
*** 99,106 ****
ok($dbh->disconnect(), "disconnect");
}; ## end skip block
- exit 1;
-
sub remaining {
$test_count - $test_builder->current_test;
}
--- 109,114 ----