r11525@llin: dpavlin | 2005-12-05 01:45:38 +0100
[webpac2] / t / 7-est.t
1 #!/usr/bin/perl -w
2
3 use strict;
4
5 use Test::More tests => 11;
6 use Test::Exception;
7 use Cwd qw/abs_path/;
8 use File::Temp qw/tempdir/;
9 use Data::Dumper;
10 use blib;
11
12 BEGIN {
13 use_ok( 'WebPAC::Output::Estraier' );
14 use_ok( 'WebPAC::Search::Estraier' );
15 use_ok( 'Log::Log4perl' );
16 }
17
18 Log::Log4perl::init('./conf/log.conf');
19 ok(my $log = Log::Log4perl->get_logger('WebPAC.test'), "get_logger");
20
21 my $config = {
22         masterurl => 'http://localhost:1978/',
23         user => 'admin',
24         passwd => 'admin',
25         database => 'webpac2test',
26         encoding => 'iso-8859-2',
27         log => $log,
28         debug => 0,
29 };
30
31 ok(my $est = new WebPAC::Output::Estraier( %{ $config } ), "new WebPAC::Output::Estraier");
32
33 ok(my $list = $est->est_master( action => 'nodelist' ), "nodelist");
34
35 like($list , qr/$config->{database}/, "found $config->{database}");
36
37 my $ds = {
38         'Source' => {
39                 'name' => 'Izvor: ',
40                 'tag' => 'Source',
41                 'display' => [ 'foo' ],
42                 'search' => [ 'demo source '],
43                 },
44         'ID' => {
45                 'name' => 'ID',
46                 'tag' => 'IDths',
47                 'search' => [ 'bar' ],
48                 'lookup_key' => [ 'bar' ],
49                 },
50         'filename' => [ 'out/thes/001.html' ],
51         'name' => 'filename',
52         'tag' => 'filename'
53 };
54
55 ok($est->add( id => 42, ds => $ds, type => 'search' ), "add");
56
57 ok($est = new WebPAC::Search::Estraier( %{ $config } ), "new WebPAC::Search::Estraier");
58
59 my $query = 'demo';
60 my $max = 1;
61
62 ok(my @res = $est->search(
63         phrase => $query,
64         get_attr => [ qw/ID Source/ ],
65         max => $max,
66 ), "search $query, max: $max");
67
68 cmp_ok(($#res + 1), '==', $max, "$max hits");
69
70 diag Dumper(\@res);
71