Scan feature added, not documented yet
[idzebra-moved-to-github.git] / perl / t / 05_search.t
1 #!perl
2 # =============================================================================
3 # $Id: 05_search.t,v 1.2 2003-03-04 19:33:53 pop Exp $
4 #
5 # Perl API header
6 # =============================================================================
7 BEGIN {
8     if ($ENV{PERL_CORE}) {
9         chdir 't' if -d 't';
10     }
11     push (@INC,'demo','blib/lib','blib/arch');
12 }
13
14 use strict;
15 use warnings;
16
17 use Test::More tests => 7;
18
19 # ----------------------------------------------------------------------------
20 # Session opening and closing
21 BEGIN {
22     use IDZebra;
23     IDZebra::logFile("test.log");
24     use_ok('IDZebra::Session'); 
25     use_ok('pod');
26 }
27
28
29 # ----------------------------------------------------------------------------
30 # Session opening and closing
31 my $sess = IDZebra::Session->open(configFile => 'demo/zebra.cfg',
32                                   groupName => 'demo2');
33 isa_ok($sess,"IDZebra::Session");
34
35 # ----------------------------------------------------------------------------
36 # search
37 our $filecount = 8;
38
39 my ($hits, $expected);
40
41 # Search 1 databases
42 my $rs1 = $sess->search(cqlmap    => 'demo/cql.map',
43                         cql       => 'IDZebra',
44                         databases => [qw(demo1)]);
45
46 $expected = $filecount;
47 $hits = $rs1->count;
48 ok(($hits == $expected), "CQL search - found $hits/$expected records");
49
50
51 $sess->databases('demo1', 'demo2');
52 my @dblist = $sess->databases;
53 ok(($#dblist == 1), "Select multiple databases"); 
54
55
56 # Search 2 databases
57 my $rs2 = $sess->search(cqlmap    => 'demo/cql.map',
58                         cql       => 'IDZebra');
59 $expected = $filecount * 2;
60 $hits = $rs2->count;
61 ok(($hits == $expected), "CQL search - found $hits/$expected records");
62
63 # RPN search;
64 my $rs3 = $sess->search(cqlmap    => 'demo/cql.map',
65                         pqf       => '@attr 1=4 IDZebra');
66 $expected = $filecount * 2;
67 $hits = $rs2->count;
68 ok(($hits == $expected), "RPN search - found $hits/$expected records");
69
70
71 # More specific search
72
73
74 # ----------------------------------------------------------------------------
75 # Close session
76
77 $sess->close;