2 |
|
|
3 |
use strict; |
use strict; |
4 |
|
|
5 |
use Test::More tests => 6; |
use Test::More tests => 11; |
6 |
use Test::Exception; |
use Test::Exception; |
7 |
use Cwd qw/abs_path/; |
use Cwd qw/abs_path/; |
8 |
use File::Temp qw/tempdir/; |
use File::Temp qw/tempdir/; |
10 |
use blib; |
use blib; |
11 |
|
|
12 |
BEGIN { |
BEGIN { |
13 |
|
use_ok( 'WebPAC::Output::Estraier' ); |
14 |
use_ok( 'WebPAC::Search::Estraier' ); |
use_ok( 'WebPAC::Search::Estraier' ); |
15 |
use_ok( 'Log::Log4perl' ); |
use_ok( 'Log::Log4perl' ); |
16 |
} |
} |
18 |
Log::Log4perl::init('./conf/log.conf'); |
Log::Log4perl::init('./conf/log.conf'); |
19 |
ok(my $log = Log::Log4perl->get_logger('WebPAC.test'), "get_logger"); |
ok(my $log = Log::Log4perl->get_logger('WebPAC.test'), "get_logger"); |
20 |
|
|
21 |
ok(my $est = new WebPAC::Search::Estraier( |
my $config = { |
22 |
url => 'http://localhost:1978/node/webpac2', |
masterurl => 'http://localhost:1978/', |
23 |
user => 'admin', |
user => 'admin', |
24 |
passwd => 'admin', |
passwd => 'admin', |
25 |
|
database => 'webpac2test', |
26 |
encoding => 'iso-8859-2', |
encoding => 'iso-8859-2', |
27 |
log => $log, |
log => $log, |
28 |
), "new"); |
debug => 0, |
29 |
|
}; |
30 |
|
|
31 |
my $query = 'ivan'; |
ok(my $est = new WebPAC::Output::Estraier( %{ $config } ), "new WebPAC::Output::Estraier"); |
32 |
my $max = 10; |
|
33 |
|
ok(my $list = $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( |
ok(my @res = $est->search( |
63 |
query => $query, |
phrase => $query, |
64 |
|
get_attr => [ qw/ID Source/ ], |
65 |
max => $max, |
max => $max, |
|
attr => [ qw/PersonalName TitleProper/ ], |
|
66 |
), "search $query, max: $max"); |
), "search $query, max: $max"); |
67 |
|
|
68 |
cmp_ok(($#res + 1), '==', $max, "$max hits"); |
cmp_ok(($#res + 1), '==', $max, "$max hits"); |