/[webpac2]/trunk/t/2-input.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/2-input.t

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

revision 797 by dpavlin, Sun Feb 4 13:28:30 2007 UTC revision 820 by dpavlin, Wed Apr 11 12:22:31 2007 UTC
# Line 1  Line 1 
1  #!/usr/bin/perl -w  #!/usr/bin/perl -w
2    
3  use Test::More tests => 108;  use Test::More tests => 111;
4  use Test::Exception;  use Test::Exception;
5  use Cwd qw/abs_path/;  use Cwd qw/abs_path/;
6  use blib;  use blib;
# Line 134  $WebPAC::Input::Test::rec = { Line 134  $WebPAC::Input::Test::rec = {
134    
135  $WebPAC::Input::Test::size = 42;  $WebPAC::Input::Test::size = 42;
136    
137  ok($input->open( path => "$abs_path/modify_isis/LIBRI", ), "open modify_isis (plain)");  ok($input->open( path => "/fake/path", ), "open modify_isis (plain)");
138    
139  cmp_ok($input->size, '==', 42, 'size');  cmp_ok($input->size, '==', 42, 'size');
140    
# Line 143  ok(my $rec_p = $input->fetch, 'fetch'); Line 143  ok(my $rec_p = $input->fetch, 'fetch');
143  # modify_records  # modify_records
144    
145  ok($input->open(  ok($input->open(
146          path => "$abs_path/modify_isis/LIBRI",          path => "/another/fake/path",
147          modify_records => {          modify_records => {
148                  200 => {                  200 => {
149                          '*' => { '^c' => '. ' },                          '*' => { '^c' => '. ' },
150                          '^f' => { ' : ' => ' / ' },                          '^f' => { ' : ' => ' / ' },
151                  }                  }
152          },          },
153  ), "open modify_isis (with modify_records)");  ), "open (with modify_records)");
154    
155  # seek  # seek
156  throws_ok { $input->seek } qr/without/, 'seek without position';  throws_ok { $input->seek } qr/without/, 'seek without position';
# Line 165  cmp_ok( Line 165  cmp_ok(
165          'modify 200'          'modify 200'
166  );  );
167    
168    # modify_file
169    
170    my $modify_file = "$abs_path/conf/modify/test.pl";
171    
172    ok($input->open(
173            path => "/and/another/fake/path",
174            modify_file => $modify_file,
175    ), "open (with modify_file $modify_file)");
176    
177    my $f = $WebPAC::Input::Test::filter_coderef;
178    ok(ref($f) eq 'CODE', 'filter_coderef');
179    
180    diag "regexps = ", dump($input->modify_file_regexps( $modify_file )) if ($debug);
181    
182    sub test_filter {
183            my ($field, $from, $to) = @_;
184            cmp_ok( $f->( $from, $field, 1 ), 'eq', $to, "filter $field |$from| -> |$to|" );
185    }
186    
187    test_filter(200,
188            '^a foo ; bar = baz : zzz',
189            '^a foo^kbar^dbaz : zzz',
190    );
191    
192    # empty subfield removal
193    test_filter(901,
194            '^a^efoo',
195            '^efoo',
196    );

Legend:
Removed from v.797  
changed lines
  Added in v.820

  ViewVC Help
Powered by ViewVC 1.1.26