1 |
#!/usr/bin/perl -w |
2 |
|
3 |
use strict; |
4 |
|
5 |
use Test::More tests => 13; |
6 |
use Test::Exception; |
7 |
use Cwd qw/abs_path/; |
8 |
use File::Temp qw/tempdir/; |
9 |
use Data::Dump; |
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 |
my $ds = { |
34 |
'Source' => { |
35 |
'name' => 'Izvor: ', |
36 |
'tag' => 'Source', |
37 |
'display' => [ 'foo' ], |
38 |
'search' => [ 'demo source '], |
39 |
}, |
40 |
'ID' => { |
41 |
'name' => 'ID', |
42 |
'tag' => 'IDths', |
43 |
'search' => [ 'bar' ], |
44 |
'lookup_key' => [ 'bar' ], |
45 |
}, |
46 |
'filename' => [ 'out/thes/001.html' ], |
47 |
'name' => 'filename', |
48 |
'tag' => 'filename' |
49 |
}; |
50 |
|
51 |
ok($est->add( id => 42, ds => $ds, type => 'search' ), "add"); |
52 |
|
53 |
ok(my $est_s = new WebPAC::Search::Estraier( %{ $config } ), "new WebPAC::Search::Estraier"); |
54 |
|
55 |
my $query = 'demo'; |
56 |
my $max = 1; |
57 |
|
58 |
ok(my @res = $est_s->search( |
59 |
phrase => $query, |
60 |
get_attr => [ qw/ID Source/ ], |
61 |
max => $max, |
62 |
), "search $query, max: $max"); |
63 |
|
64 |
cmp_ok(($#res + 1), '==', $max, "$max hits"); |
65 |
|
66 |
ok($est->master( action => 'nodeadd', name => 'webpac2test_link', label => 'test' ), "nodeadd"); |
67 |
|
68 |
ok($est->add_link( from => 'webpac2test', to => 'webpac2test_link', credit => 42 ), "add_link"); |
69 |
|
70 |
ok($est->master( action => 'nodedel', name => 'webpac2test' ), "nodedel"); |
71 |
ok($est->master( action => 'nodedel', name => 'webpac2test_link' ), "nodedel"); |
72 |
|