X-Git-Url: http://git.indexdata.com/?p=irspy-moved-to-github.git;a=blobdiff_plain;f=lib%2FZOOM%2FIRSpy%2FTest%2FSearch%2FBib1.pm;h=1b1cfbc570aa6f760f1aac17dad356cb31b5ea8e;hp=be0f3300ef77588822300b6def8de75bd4a3b29a;hb=137f1b39b9d03be7681af968dc04c9a5dafacebe;hpb=d5ee4e01862e73f3e955550653f2e4605c02b542 diff --git a/lib/ZOOM/IRSpy/Test/Search/Bib1.pm b/lib/ZOOM/IRSpy/Test/Search/Bib1.pm index be0f330..1b1cfbc 100644 --- a/lib/ZOOM/IRSpy/Test/Search/Bib1.pm +++ b/lib/ZOOM/IRSpy/Test/Search/Bib1.pm @@ -1,4 +1,4 @@ -# $Id: Bib1.pm,v 1.1 2006-09-26 13:12:28 sondberg Exp $ +# $Id: Bib1.pm,v 1.4 2006-10-02 13:02:10 sondberg Exp $ # See the "Main" test package for documentation @@ -10,7 +10,7 @@ use warnings; use Data::Dumper; use ZOOM::IRSpy::Test; -our @ISA = @ISA = qw(ZOOM::IRSpy::Test); +our @ISA = qw(ZOOM::IRSpy::Test); our @Bib1_Attr = qw(1 2 3 4 5 6 7 8 9); @@ -20,10 +20,13 @@ sub run { my $pod = $irspy->pod(); $pod->callback(ZOOM::Event::RECV_SEARCH, \&found); + $pod->callback("exception", \&error_handler); + $pod->callback(ZOOM::Event::ZEND, \&continue); foreach my $attr (@Bib1_Attr) { $pod->search_pqf('@attr 1=' . $attr . ' water' ); - my $err = $pod->wait({'irspy' => $irspy, 'attr' => $attr}); + $irspy->{'handle'}->{'attr'} = $attr; + my $err = $pod->wait($irspy); } return 0; @@ -31,8 +34,8 @@ sub run { sub found { - my($conn, $href, $rs, $event) = @_; - my $irspy = $href->{'irspy'}; + my($conn, $irspy, $rs, $event) = @_; + my $href = $irspy->{'handle'}; my $attr = $href->{'attr'}; my $n = $rs->size(); my $rec = $irspy->record($conn); @@ -48,4 +51,26 @@ sub found { } +sub continue { + my ($conn, $irspy, $rs, $event) = @_; + + print "ZEND\n"; +} + + + +sub error_handler { maybe_connected(@_, 0) } + +sub maybe_connected { + my($conn, $irspy, $rs, $event, $ok) = @_; + + $irspy->log("irspy_test", $conn->option("host"), + ($ok ? "" : " not"), " connected"); + my $rec = $irspy->record($conn); + $rec->append_entry("irspy:status", "" . + $irspy->isodate(time()) . ""); + $conn->option(pod_omit => 1) if !$ok; + return 0; +} + 1;