/[webpac2]/trunk/t/6-unit.t
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/t/6-unit.t

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 474 by dpavlin, Sat May 13 12:08:05 2006 UTC revision 489 by dpavlin, Sun May 14 12:35:10 2006 UTC
# Line 2  Line 2 
2    
3  use strict;  use strict;
4    
5  use Test::More tests => 66;  use Test::More tests => 41;
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/;
9  use File::Slurp;  use File::Slurp;
10  use Data::Dumper;  use Data::Dumper;
11    use Time::HiRes qw/time/;
12  use blib;  use blib;
13    
14  my $debug = shift @ARGV;  my $debug = shift @ARGV;
# Line 26  $abs_path =~ s#/[^/]*$#/#; Line 27  $abs_path =~ s#/[^/]*$#/#;
27  diag "abs_path: $abs_path" if ($debug);  diag "abs_path: $abs_path" if ($debug);
28    
29  my $isis_file = "$abs_path../t/winisis/BIBL";  my $isis_file = "$abs_path../t/winisis/BIBL";
30  $isis_file = '/data/hidra/THS/THS';  #$isis_file = '/data/hidra/THS/THS';
31    $isis_file = '/data/isis_data/ffkk/';
32    
33  diag "isis_file: $isis_file" if ($debug);  diag "isis_file: $isis_file" if ($debug);
34    
35  my $normalize_set_pl = "$abs_path/data/normalize.pl";  my $normalize_set_pl = "$abs_path/data/normalize.pl";
36  my $lookup_file = "$abs_path../conf/lookup/isis.pm";  my $lookup_file = "$abs_path../conf/lookup/isis.pm";
37    
38    my ($t1,$t2) = (0,0);
39    
40  ok(my $lookup = new WebPAC::Lookup(  ok(my $lookup = new WebPAC::Lookup(
41          lookup_file => $lookup_file,          lookup_file => $lookup_file,
42  ), "new Lookup");  ), "new Lookup");
# Line 40  ok(my $lookup = new WebPAC::Lookup( Line 44  ok(my $lookup = new WebPAC::Lookup(
44  ok(my $isis = new WebPAC::Input(  ok(my $isis = new WebPAC::Input(
45          module => 'WebPAC::Input::ISIS',          module => 'WebPAC::Input::ISIS',
46          code_page => 'ISO-8859-2',      # application encoding          code_page => 'ISO-8859-2',      # application encoding
47          limit => 10,          limit => 100,
48            no_progress_bar => 1,
49  ), "new Input::ISIS");  ), "new Input::ISIS");
50    
51  ok(my $maxmfn = $isis->open(  ok(my $maxmfn = $isis->open(
# Line 61  ok(my $n = new WebPAC::Normalize::XML( Line 66  ok(my $n = new WebPAC::Normalize::XML(
66          db => $db,          db => $db,
67          lookup_regex => $lookup->regex,          lookup_regex => $lookup->regex,
68          lookup => $lookup,          lookup => $lookup,
69            no_progress_bar => 1,
70  ), "new Normalize::XML");  ), "new Normalize::XML");
71    
72  ok($n->open(  ok($n->open(
# Line 75  ok(my $out = new WebPAC::Output::TT( Line 81  ok(my $out = new WebPAC::Output::TT(
81          filters => { foo => sub { shift } },          filters => { foo => sub { shift } },
82  ), "new Output::TT");  ), "new Output::TT");
83    
84  while (my $row = $isis->fetch) {  diag " lookup => ",Dumper($lookup->lookup_hash) if ($debug);
85    
86    foreach my $pos ( 0 ... $isis->size ) {
87    
88            my $row = $isis->fetch || next;
89    
90          diag " row => ",Dumper($row) if ($debug);          diag " row $pos => ",Dumper($row) if ($debug);
91          set_rec( $row );  
92            my $t = time();
93    
94          ok(my $ds = $n->data_structure($row), "data_structure");          ok(my $ds = $n->data_structure($row), "data_structure");
95    
96          diag " ds => ",Dumper($ds) if ($debug);          $t1 += time() - $t;
97    
98            diag " ds $pos => ",Dumper($ds) if ($debug);
99    
100            $t = time();
101            my $ds2;
102    
103          # TODO move somewhere          # TODO move somewhere
104          {          {
105                  no strict 'subs';                  no strict 'subs';
106                  use WebPAC::Normalize::Set;                  use WebPAC::Normalize::Set;
                 diag " lookup => ",Dumper($lookup) if ($debug);  
107                  set_lookup( $lookup->lookup_hash );                  set_lookup( $lookup->lookup_hash );
108                    set_rec( $row );
109                  clean_ds();                  clean_ds();
110                  eval "$norm_pl";                  eval "$norm_pl";
111                  ok(! $@, $@ ? "error: $@" : "no error");                  ok(! $@, $@ ? "error: $@" : "no error");
112                  ok(my $ds2 = get_ds(), "get_ds");                  ok($ds2 = get_ds(), "get_ds");
113                  is_deeply( $ds, $ds2, 'ds same for xml and sets');          
   
                 diag " ds2 => ",Dumper($ds2) if ($debug);  
114          }          }
115    
116            $t2 += time() - $t;
117    
118            diag " ds2 $pos => ",Dumper($ds2) if ($debug);
119            is_deeply( $ds, $ds2, 'ds same for xml and sets');
120    
121          ok(my $html = $out->apply(          ok(my $html = $out->apply(
122                  template => 'html.tt',                  template => 'html.tt',
123                  data => $ds,                  data => $ds,
# Line 109  while (my $row = $isis->fetch) { Line 128  while (my $row = $isis->fetch) {
128          #diag $html;          #diag $html;
129    
130  };  };
131    
132    diag sprintf("timings: %.2fs vs %.2fs [%1.2f%%]\n", $t1, $t2, ($t1 / $t2) * 100);

Legend:
Removed from v.474  
changed lines
  Added in v.489

  ViewVC Help
Powered by ViewVC 1.1.26