File Coverage

blib/lib/MARC/Validator/Filter/Plugin/Material.pm
Criterion Covered Total %
statement 28 28 100.0
branch 2 2 100.0
condition n/a
subroutine 8 8 100.0
pod 2 2 100.0
total 40 40 100.0


line stmt bran cond sub pod time code
1             package MARC::Validator::Filter::Plugin::Material;
2              
3 5     5   404733 use base qw(MARC::Validator::Filter::Abstract);
  5         13  
  5         3245  
4 5     5   65 use strict;
  5         13  
  5         174  
5 5     5   28 use warnings;
  5         21  
  5         285  
6              
7 5     5   30 use English;
  5         9  
  5         34  
8 5     5   5857 use MARC::Leader 0.08;
  5         58165  
  5         257  
9 5     5   3137 use MARC::Leader::Utils 0.02 qw(material_type);
  5         6419  
  5         117  
10              
11             our $VERSION = 0.01;
12              
13             sub name {
14 1     1 1 7 my $self = shift;
15              
16 1         5 return 'material';
17             }
18              
19             sub process {
20 7     7 1 26559 my ($self, $marc_record) = @_;
21              
22 7         21 my $leader_string = $marc_record->leader;
23 7         51 my $leader = eval {
24             MARC::Leader->new(
25 7         54 'verbose' => $self->{'verbose'},
26             )->parse($leader_string);
27             };
28 7 100       4866 if ($EVAL_ERROR) {
29 1         3 return;
30             }
31 6         25 my $material_type = material_type($leader);
32              
33 6         393 return 'material_'.$material_type;
34             }
35              
36             1;
37              
38             __END__