X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=perl%2Ft%2F06_retrieval.t;h=480aeb01a5a90bf91302c50da7f71c61575fca1c;hb=f2f159d942dae64203f266941c76bc487e33714e;hp=edbdac488ec15e92428ed63a45d198955b4d0ce7;hpb=2f8d4d90ec5eba3725182f83c067e141db160495;p=idzebra-moved-to-github.git diff --git a/perl/t/06_retrieval.t b/perl/t/06_retrieval.t index edbdac4..480aeb0 100644 --- a/perl/t/06_retrieval.t +++ b/perl/t/06_retrieval.t @@ -1,6 +1,6 @@ #!perl # ============================================================================= -# $Id: 06_retrieval.t,v 1.1 2003-03-03 00:44:39 pop Exp $ +# $Id: 06_retrieval.t,v 1.6 2004-09-15 14:11:06 heikki Exp $ # # Perl API header # ============================================================================= @@ -14,13 +14,14 @@ BEGIN { use strict; use warnings; -use Test::More tests => 18; +use Test::More tests => 30; # ---------------------------------------------------------------------------- # Session opening and closing BEGIN { use IDZebra; - IDZebra::logFile("test.log"); + unlink("test06.log"); + IDZebra::logFile("test06.log"); use_ok('IDZebra::Session'); use_ok('pod'); } @@ -30,9 +31,32 @@ BEGIN { # Session opening and closing my $sess = IDZebra::Session->open(configFile => 'demo/zebra.cfg', groupName => 'demo2'); +ok($sess,"session"); + # ---------------------------------------------------------------------------- +# Insert some test data +my $ret; +my $sysno; +my $F; +my $filecount=0; +$sess->init; +$sess->begin_trans; +$sess->databases('demo1', 'demo2'); +$ret=$sess->end_trans; + +$sess->begin_trans; +for $F () +{ + ($ret,$sysno)=$sess->insert_record (file=>$F, recordType => 'grs.perl.pod'); + ok( $ret==0, "inserted $F"); + #print STDERR "Inserted $F ok. ret=$ret sys=$sysno\n"; + $filecount++; +} +$ret=$sess->end_trans; +ok($filecount>0,"Inserted files"); +is($ret->{inserted},$filecount, "Inserted all"); + # search -our $filecount = 6; my ($hits, $expected); @@ -43,7 +67,7 @@ my $rs1 = $sess->search(cqlmap => 'demo/cql.map', $expected = $filecount; $hits = $rs1->count; -ok(($hits == $expected), "CQL search - found $hits/$expected records"); +is($hits, $expected, "CQL search "); foreach my $rec ($rs1->records(from =>1, to =>5)) { @@ -67,6 +91,27 @@ ok (($rec1->{format} eq 'SUTRS'), "format: $rec1->{format}"); ok ((length($rec1->{buf}) > 0), "buf: ". length($rec1->{buf})." bytes"); # ---------------------------------------------------------------------------- -# Close session +# Close session, check for rs availability + +$sess=undef; + +eval { my ($rec2) = $rs1->records(from=>1,to=>1); }; + +ok (($@ ne ""), "Resultset is invalidated with session"); +# ---------------------------------------------------------------------------- +# Code from doc... +# foreach my $rec ($rs1->records()) { +# print STDERR "REC:$rec\n"; +# unless ($rec->errCode) { +# printf ("Pos:%d, Base: %s, sysno: %d, score %d format: %s\n%s\n\n", +# $rec->position, +# $rec->base, +# $rec->sysno, +# $rec->score, +# $rec->format, +# $rec->buf +# ); +# } +# } + -$sess->close;