2 |
|
|
3 |
use strict; |
use strict; |
4 |
|
|
5 |
use Test::More tests => 309; |
use Test::More tests => 322; |
6 |
use Test::Exception; |
use Test::Exception; |
7 |
use Cwd qw/abs_path/; |
use Cwd qw/abs_path/; |
8 |
use blib; |
use blib; |
194 |
cmp_ok( join('', suffix('xy', 'cd') ), 'eq', 'cdxy', 'suffix'); |
cmp_ok( join('', suffix('xy', 'cd') ), 'eq', 'cdxy', 'suffix'); |
195 |
cmp_ok( join('', surround('->', '<-', 'a','b','c') ), 'eq', '->a<-->b<-->c<-', 'surround'); |
cmp_ok( join('', surround('->', '<-', 'a','b','c') ), 'eq', '->a<-->b<-->c<-', 'surround'); |
196 |
|
|
197 |
|
# count |
198 |
|
my @el; |
199 |
|
for my $i ( 0 .. 10 ) { |
200 |
|
cmp_ok( count( @el ), '==', $i, "count($i)"); |
201 |
|
push @el, "element $i"; |
202 |
|
} |
203 |
|
|
204 |
# lookups |
# lookups |
205 |
|
|
206 |
throws_ok { _set_load_ds() } qr/CODE/, 'empty _set_load_ds()'; |
throws_ok { _set_load_row() } qr/CODE/, 'empty _set_load_row()'; |
207 |
|
|
208 |
ok(_set_load_ds(sub { |
ok(_set_load_row(sub { |
209 |
my ($database,$input,$mfn) = @_; |
my ($database,$input,$mfn) = @_; |
210 |
diag "load_ds( $database, $input, $mfn )"; |
diag "load_row( $database, $input, $mfn )"; |
211 |
cmp_ok( $#_, '==', 2, 'have 3 arguments'); |
cmp_ok( $#_, '==', 2, 'have 3 arguments'); |
212 |
ok($database, '_load_ds database'); |
ok($database, '_load_row database'); |
213 |
ok($input, '_load_ds input'); |
ok($input, '_load_row input'); |
214 |
ok($mfn, '_load_ds mfn'); |
ok($mfn, '_load_row mfn'); |
215 |
return { |
return { |
216 |
'900' => [{ x => '900x-' . $mfn , y => '900y-' . $mfn }], |
'900' => [{ x => '900x-' . $mfn , y => '900y-' . $mfn }], |
217 |
} |
} |
218 |
|
|
219 |
}), '_set_load_ds'); |
}), '_set_load_row'); |
220 |
|
|
221 |
my @v = qw/foo bar baz aaa bbb ccc ddd/; |
my @v = qw/foo bar baz aaa bbb ccc ddd/; |
222 |
|
|
240 |
|
|
241 |
my @lookup; |
my @lookup; |
242 |
|
|
243 |
ok(my @lookup = lookup( |
ok(@lookup = lookup( |
244 |
sub { |
sub { |
245 |
diag "in show"; |
diag "in show"; |
246 |
rec('900','x'); |
rec('900','x'); |
284 |
diag "lookup_hash1 = ", dump($lookup_hash1); |
diag "lookup_hash1 = ", dump($lookup_hash1); |
285 |
ok(_set_lookup( $lookup_hash1 ), '_set_lookup $lookup_hash1'); |
ok(_set_lookup( $lookup_hash1 ), '_set_lookup $lookup_hash1'); |
286 |
|
|
287 |
throws_ok { _set_load_ds() } qr/CODE/, 'empty _set_load_ds()'; |
throws_ok { _set_load_row() } qr/CODE/, 'empty _set_load_row()'; |
288 |
|
|
289 |
ok(_set_load_ds(sub { |
ok(_set_load_row(sub { |
290 |
my ($database,$input,$mfn) = @_; |
my ($database,$input,$mfn) = @_; |
291 |
diag "load_ds( $database, $input, $mfn )"; |
diag "load_row( $database, $input, $mfn )"; |
292 |
cmp_ok( $#_, '==', 2, 'have 3 arguments'); |
cmp_ok( $#_, '==', 2, 'have 3 arguments'); |
293 |
ok($database, 'database'); |
ok($database, 'database'); |
294 |
ok($input, 'input'); |
ok($input, 'input'); |
295 |
ok($mfn, 'mfn'); |
ok($mfn, 'mfn'); |
296 |
|
|
297 |
}), '_set_load_ds'); |
}), '_set_load_row'); |
298 |
|
|
299 |
|
|
300 |
# cmp_ok(lookup( |
# cmp_ok(lookup( |
732 |
[ '901', ' ', ' ', 'b', 'bar', 'c', 'baz' ], |
[ '901', ' ', ' ', 'b', 'bar', 'c', 'baz' ], |
733 |
], |
], |
734 |
); |
); |
735 |
|
|
736 |
|
test_s(qq{ marc_remove('*'); }); |
737 |
|
ok(! WebPAC::Normalize::_get_marc_fields(), 'marc_remove(*)'); |
738 |
|
|
739 |
test_rec_rules( |
test_rec_rules( |
740 |
'marc_duplicate', |
'marc_duplicate', |
741 |
{ '200' => [{ a => 42, b => 'bar', c => 'baz', d => 'bing', e => 'bong' }] }, |
{ '200' => [{ a => 42, b => 'bar', c => 'baz', d => 'bing', e => 'bong' }] }, |