X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=t%2F2-ZOOM.t;h=d64406838c8f12f98d3c3deae569dcfeb8d4a276;hb=87c72eaf97a3dbf51a93dab782c2909539addc48;hp=ab2a90b91128b161579f73ebcf1b4e8195a9976f;hpb=5c6af152d30864056ff0a54e4917c137a68765c3;p=ZOOM-Perl-moved-to-github.git diff --git a/t/2-ZOOM.t b/t/2-ZOOM.t index ab2a90b..d644068 100644 --- a/t/2-ZOOM.t +++ b/t/2-ZOOM.t @@ -1,32 +1,34 @@ -# $Id: 2-ZOOM.t,v 1.8 2005-10-31 15:02:41 mike Exp $ - # Before `make install' is performed this script should be runnable with # `make test'. After `make install' it should work as `perl 2-ZOOM.t' use strict; use warnings; -use Test::More tests => 21; +use Test::More tests => 23; BEGIN { use_ok('ZOOM') }; my $msg = ZOOM::diag_str(ZOOM::Error::INVALID_QUERY); ok($msg eq "Invalid query", "diagnostic string lookup works"); +$msg = ZOOM::diag_srw_str(27); +ok($msg eq "Empty term unsupported", "SRW diagnostic string lookup works"); + my $host = "no.such.host"; my $conn; eval { $conn = new ZOOM::Connection($host, 0) }; +# For some reason, Red Hat signals this as a TIMEOUT rather than a CONNECT ok($@ && $@->isa("ZOOM::Exception") && - $@->code() == ZOOM::Error::CONNECT && $@->addinfo() eq $host, - "connection to non-existent host '$host' fails"); + (($@->code() == ZOOM::Error::CONNECT && $@->addinfo() eq $host) || + ($@->code() == ZOOM::Error::TIMEOUT && $@->addinfo() eq "")), + "connection to non-existent host '$host' fails: \$\@=$@"); -$host = "indexdata.com/gils"; +$host = "z3950.indexdata.com/gils"; eval { $conn = new ZOOM::Connection($host, 0) }; ok(!$@, "connection to '$host'"); $conn->destroy(); ok(1, "destroyed connection"); -my $options = new ZOOM::Options(); -eval { $conn = create ZOOM::Connection($options) }; +eval { $conn = create ZOOM::Connection() }; ok(!$@, "unconnected connection object created"); eval { $conn->connect($host, 0) }; ok(!$@, "delayed connection to '$host'"); @@ -54,14 +56,15 @@ ok($@ && $@->isa("ZOOM::Exception") && my($xcode, $xmsg, $xinfo, $xset) = $conn->error_x(); ok($xcode == $@->code() && $xmsg eq $@->message() && $xinfo eq $@->addinfo() && - $xset eq "ZOOM", "error_x() consistent with exception"); + $xset eq $@->diagset(), "error_x() consistent with exception"); ok($conn->errcode() == $@->code(), "errcode() consistent with exception"); ok($conn->errmsg() eq $@->message(), "errmsg() consistent with exception"); ok($conn->addinfo() eq $@->addinfo(), "addinfo() consistent with exception"); -### No $conn->diagset() yet, due to lack of underlying support +ok($conn->diagset() eq $@->diagset(), + "diagset() consistent with exception"); $query = '@attr 1=4 minerals'; eval { $rs = $conn->search_pqf($query) }; @@ -75,7 +78,7 @@ my $data = $rec->render(); ok($data =~ /^245 +\$a ISOTOPIC DATES OF ROCKS AND MINERALS$/m, "rendered record has expected title"); my $raw = $rec->raw(); -ok($raw =~ /^00981n/, "raw record contains expected header"); +ok($raw =~ /^00966n/, "raw record contains expected header"); $rs->destroy(); ok(1, "destroyed result-set");