projects
/
irspy-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Include new Utils module.
[irspy-moved-to-github.git]
/
lib
/
ZOOM
/
IRSpy.pm
diff --git
a/lib/ZOOM/IRSpy.pm
b/lib/ZOOM/IRSpy.pm
index
15d1124
..
758b5bf
100644
(file)
--- a/
lib/ZOOM/IRSpy.pm
+++ b/
lib/ZOOM/IRSpy.pm
@@
-1,4
+1,4
@@
-# $Id: IRSpy.pm,v 1.37 2006-10-26 13:39:13 sondberg Exp $
+# $Id: IRSpy.pm,v 1.44 2006-10-30 15:04:33 mike Exp $
package ZOOM::IRSpy;
package ZOOM::IRSpy;
@@
-19,6
+19,7
@@
use Net::Z3950::ZOOM 1.13; # For the ZOOM version-check only
use ZOOM::IRSpy::Node;
use ZOOM::IRSpy::Connection;
use ZOOM::IRSpy::Record;
use ZOOM::IRSpy::Node;
use ZOOM::IRSpy::Connection;
use ZOOM::IRSpy::Record;
+use ZOOM::IRSpy::Utils;
our @ISA = qw();
our $VERSION = '0.02';
our @ISA = qw();
our $VERSION = '0.02';
@@
-85,7
+86,7
@@
sub new {
targets => undef, # filled in later
connections => undef, # filled in later
libxml => $libxml,
targets => undef, # filled in later
connections => undef, # filled in later
libxml => $libxml,
- irspy_to_zeerex_style => $xslt->parse_stylesheet($xsl_doc),
+ irspy_to_zeerex_style => $irspy_to_zeerex_style,
tests => [], # stack of tests currently being executed
}, $class;
$this->log("irspy", "starting up with database '$dbname'");
tests => [], # stack of tests currently being executed
}, $class;
$this->log("irspy", "starting up with database '$dbname'");
@@
-256,14
+257,21
@@
sub _rewrite_record {
$conn->log("irspy", "rewriting XML record");
my $rec = $this->_irspy_to_zeerex($conn);
$conn->log("irspy", "rewriting XML record");
my $rec = $this->_irspy_to_zeerex($conn);
- my $p = $this->{conn}->package();
+ _really_rewrite_record($this->{conn}, $rec);
+}
+
+
+sub _really_rewrite_record {
+ my($conn, $rec) = @_;
+
+ my $p = $conn->package();
$p->option(action => "specialUpdate");
my $xml = $rec->toString();
$p->option(record => $xml);
$p->send("update");
$p->destroy();
$p->option(action => "specialUpdate");
my $xml = $rec->toString();
$p->option(record => $xml);
$p->send("update");
$p->destroy();
- $p = $this->{conn}->package();
+ $p = $conn->package();
$p->send("commit");
$p->destroy();
if (0) {
$p->send("commit");
$p->destroy();
if (0) {
@@
-309,7
+317,7
@@
sub check {
$tname = "Main" if !defined $tname;
$this->{tree} = $this->_gather_tests($tname)
$tname = "Main" if !defined $tname;
$this->{tree} = $this->_gather_tests($tname)
- or die "No tests defined";
+ or die "No tests defined for '$tname'";
#$this->{tree}->print(0);
my $nskipped = 0;
#$this->{tree}->print(0);
my $nskipped = 0;
@@
-460,11
+468,15
@@
sub _gather_tests {
join(" -> ", @ancestors, $tname))
if grep { $_ eq $tname } @ancestors;
join(" -> ", @ancestors, $tname))
if grep { $_ eq $tname } @ancestors;
+ my $slashSeperatedTname = $tname;
+ $slashSeperatedTname =~ s/::/\//g;
+ my $fullName = "ZOOM/IRSpy/Test/$slashSeperatedTname.pm";
+
eval {
eval {
- my $slashSeperatedTname = $tname;
- $slashSeperatedTname =~ s/::/\//g;
- require "ZOOM/IRSpy/Test/$slashSeperatedTname.pm";
+ require $fullName;
+ $this->log("irspy", "successfully required '$fullName'");
}; if ($@) {
}; if ($@) {
+ $this->log("irspy", "couldn't require '$fullName': $@");
$this->log("warn", "can't load test '$tname': skipping",
$@ =~ /^Can.t locate/ ? () : " ($@)");
return undef;
$this->log("warn", "can't load test '$tname': skipping",
$@ =~ /^Can.t locate/ ? () : " ($@)");
return undef;
@@
-565,6
+577,7
@@
sub irspy_xpath_context {
my $root = $doc->getDocumentElement();
my $xc = XML::LibXML::XPathContext->new($root);
$xc->registerNs(e => 'http://explain.z3950.org/dtd/2.0/');
my $root = $doc->getDocumentElement();
my $xc = XML::LibXML::XPathContext->new($root);
$xc->registerNs(e => 'http://explain.z3950.org/dtd/2.0/');
+ $xc->registerNs(i => $irspy_ns);
return $xc;
}
return $xc;
}