|
Lines 1-6
Link Here
|
| 1 |
use Modern::Perl; |
1 |
use Modern::Perl; |
| 2 |
|
2 |
|
| 3 |
use Test::More tests => 10; |
3 |
use Test::More tests => 11; |
| 4 |
|
4 |
|
| 5 |
use_ok("MARC::Field"); |
5 |
use_ok("MARC::Field"); |
| 6 |
use_ok("MARC::Record"); |
6 |
use_ok("MARC::Record"); |
|
Lines 11-16
sub new_record {
Link Here
|
| 11 |
$record->leader('03174nam a2200445 a 4500'); |
11 |
$record->leader('03174nam a2200445 a 4500'); |
| 12 |
my @fields = ( |
12 |
my @fields = ( |
| 13 |
MARC::Field->new( |
13 |
MARC::Field->new( |
|
|
14 |
'008', '120829t20132012nyu bk 001 0ceng', |
| 15 |
), |
| 16 |
MARC::Field->new( |
| 14 |
100, '1', ' ', |
17 |
100, '1', ' ', |
| 15 |
a => 'Knuth, Donald Ervin', |
18 |
a => 'Knuth, Donald Ervin', |
| 16 |
d => '1938', |
19 |
d => '1938', |
|
Lines 1693-1695
subtest 'delete_field' => sub {
Link Here
|
| 1693 |
is_deeply( \@fields_952, [], 'Delete all 952, 2 deleted' ); |
1696 |
is_deeply( \@fields_952, [], 'Delete all 952, 2 deleted' ); |
| 1694 |
}; |
1697 |
}; |
| 1695 |
}; |
1698 |
}; |
| 1696 |
- |
1699 |
|
|
|
1700 |
subtest 'field_equals' => sub { |
| 1701 |
plan tests => 2; |
| 1702 |
my $record = new_record; |
| 1703 |
subtest 'standard MARC fields' => sub { |
| 1704 |
plan tests => 2; |
| 1705 |
my $match = Koha::SimpleMARC::field_equals({ |
| 1706 |
record => $record, |
| 1707 |
value => 'Donald', |
| 1708 |
field => '100', |
| 1709 |
subfield => 'a', |
| 1710 |
}); |
| 1711 |
is_deeply( $match, [], '100$a not equal to "Donald"' ); |
| 1712 |
|
| 1713 |
$match = Koha::SimpleMARC::field_equals({ |
| 1714 |
record => $record, |
| 1715 |
value => 'Donald', |
| 1716 |
field => '100', |
| 1717 |
subfield => 'a', |
| 1718 |
is_regex => 1, |
| 1719 |
}); |
| 1720 |
is_deeply( $match, [1], 'first 100$a matches "Donald"'); |
| 1721 |
}; |
| 1722 |
|
| 1723 |
subtest 'control fields' => sub { |
| 1724 |
plan tests => 2; |
| 1725 |
my $match = Koha::SimpleMARC::field_equals({ |
| 1726 |
record => $record, |
| 1727 |
value => 'eng', |
| 1728 |
field => '008', |
| 1729 |
subfield => '', |
| 1730 |
}); |
| 1731 |
is_deeply( $match, [], '008 control field not equal to "Donald"' ); |
| 1732 |
|
| 1733 |
$match = Koha::SimpleMARC::field_equals({ |
| 1734 |
record => $record, |
| 1735 |
value => 'eng', |
| 1736 |
field => '008', |
| 1737 |
subfield => '', |
| 1738 |
is_regex => 1, |
| 1739 |
}); |
| 1740 |
is_deeply( $match, [1], 'first 008 control field matches "Donald"' ); |
| 1741 |
}; |
| 1742 |
}; |