r1303@llin: dpavlin | 2007-06-26 19:46:53 +0200
[webpac2] / t / 6-unit.t
index 5658ce6..6e226b3 100755 (executable)
@@ -2,7 +2,7 @@
 
 use strict;
 
-use Test::More tests => 24;
+use Test::More tests => 31;
 use Test::Exception;
 use Cwd qw/abs_path/;
 use File::Temp qw/tempdir/;
@@ -13,11 +13,13 @@ use blib;
 
 my $debug = shift @ARGV;
 
+#
+# FIXME add lookup testing!
+#
+
 BEGIN {
-use_ok( 'WebPAC::Lookup' );
 use_ok( 'WebPAC::Input' );
 use_ok( 'WebPAC::Store' );
-use_ok( 'WebPAC::Lookup::Normalize' );
 use_ok( 'WebPAC::Normalize' );
 use_ok( 'WebPAC::Output::TT' );
 }
@@ -35,10 +37,6 @@ diag "isis_file: $isis_file" if ($debug);
 my $normalize_set_pl = "$abs_path/data/normalize.pl";
 my $lookup_file = "$abs_path../conf/lookup/isis.pm";
 
-ok(my $lookup = new WebPAC::Lookup(
-       lookup_file => $lookup_file,
-), "new Lookup");
-
 ok(my $isis = new WebPAC::Input(
        module => 'WebPAC::Input::ISIS',
        code_page => 'ISO-8859-2',      # application encoding
@@ -48,8 +46,12 @@ ok(my $isis = new WebPAC::Input(
 
 ok(my $maxmfn = $isis->open(
        path => $isis_file,
-       code_page => '852',             # database encoding
-       lookup => $lookup,
+       code_page => 'cp852',           # database encoding
+       lookup_coderef => sub {
+               my $rec = shift || return;
+               ok($rec, 'lookup_coderef has rec');
+               ok(defined($rec->{'000'}->[0]), 'have mfn');
+       },
 ), "Input::ISIS->open");
 
 ok(my $path = tempdir( CLEANUP => 1 ), "path");
@@ -66,8 +68,6 @@ ok(my $out = new WebPAC::Output::TT(
        filters => { foo => sub { shift } },
 ), "new Output::TT");
 
-diag " lookup => ",Dumper($lookup->lookup_hash) if ($debug);
-
 my $t_norm = 0;
 
 foreach my $pos ( 0 ... $isis->size ) {
@@ -78,7 +78,6 @@ foreach my $pos ( 0 ... $isis->size ) {
 
        my $t = time();
        ok( my $ds = WebPAC::Normalize::data_structure(
-               lookup => $lookup->lookup_hash,
                row => $row,
                rules => $norm_pl,
        ), "Set data_structure");