/[webpac2]/trunk/t/1-lookup.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

Contents of /trunk/t/1-lookup.t

Parent Directory Parent Directory | Revision Log Revision Log


Revision 478 - (show annotations)
Sat May 13 13:38:53 2006 UTC (18 years ago) by dpavlin
File MIME type: application/x-troff
File size: 1368 byte(s)
 r616@llin:  dpavlin | 2006-05-13 15:40:49 +0200
 compare lookup_hash result

1 #!/usr/bin/perl -w
2
3 use strict;
4 use Test::More tests => 18;
5 use Test::Exception;
6 use blib;
7
8 use Data::Dumper;
9
10 BEGIN {
11 use_ok( 'WebPAC::Lookup' );
12 }
13
14 my $debug = shift @ARGV;
15
16 throws_ok { new WebPAC::Lookup( no_log => 1 ) } qr/lookup_file/, "new without lookup_file";
17
18 ok(my $lookup = new WebPAC::Lookup(
19 lookup_file => 'conf/lookup/example.pm',
20 filter => {
21 'upper' => sub { return uc(shift); },
22 },
23 ), "new");
24
25 ok(my $regex = $lookup->regex, "regex");
26 diag "regex: $regex";
27
28 my $rec = {
29 '000' => [ '001' ],
30 '800' => [ 'foo' ],
31 '900' => [ 'bar' ],
32 };
33
34 diag "testing WebPAC::Lookup own methods";
35
36 ok($lookup->add( $rec ), "add");
37
38 ok(my $l1 = $lookup->{_lookup_data}, "{_lookup_data}");
39 diag "lookup->{_lookup_data} = ",Dumper($lookup->{_lookup_data}) if ($debug);
40 ok(my $l2 = $lookup->lookup_hash, "lookup_hash");
41 diag "lookup->lookup_hash = ",Dumper($lookup->lookup_hash) if ($debug);
42
43 is_deeply( $l1, $l2, 'lookups same');
44
45 my $lookup_res = {
46 '800:foo' => [ 'bar' ],
47 '000:001' => [ '001' ],
48 '900:bar' => [ 'FOO', 'foo' ]
49 };
50
51 is_deeply($lookup_res, $lookup->{'_lookup_data'}, "lookup data");
52
53 foreach my $k (keys %{ $lookup_res }) {
54 ok(my @l = $lookup->lookup("lookup{$k}"), "lookup{$k}");
55
56 cmp_ok($#l, '==', $#{$lookup_res->{$k}}, "result size");
57
58 is_deeply($lookup_res->{$k}, \@l, "result values");
59 }
60
61 diag "testing WebPAC::Lookup inherited methods";

Properties

Name Value
svn:executable *

  ViewVC Help
Powered by ViewVC 1.1.26