test excell file
[webpac2] / t / 7-est.t
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