File Coverage

blib/lib/Catmandu/Fix/issn.pm
Criterion Covered Total %
statement 14 14 100.0
branch n/a
condition n/a
subroutine 5 5 100.0
pod 0 1 0.0
total 19 20 95.0


line stmt bran cond sub pod time code
1              
2             our $VERSION = '0.15';
3              
4             use Catmandu::Sane;
5 1     1   88293 use Business::ISSN;
  1         157825  
  1         6  
6 1     1   665 use Moo;
  1         1211  
  1         36  
7 1     1   6 use Catmandu::Fix::Has;
  1         2  
  1         6  
8 1     1   692  
  1         738  
  1         6  
9             has path => (fix_arg => 1);
10              
11             with 'Catmandu::Fix::SimpleGetValue';
12              
13             my ($self, $var) = @_;
14             "${var} = Business::ISSN->new(${var})->as_string if is_value(${var}) && length(${var});";
15 5     5 0 12903 }
16 5         21  
17             =head1 NAME
18              
19             Catmandu::Fix::issn - normalize the issn value for a given key
20              
21             =head1 SYNOPSIS
22              
23             # Normalize the ISSN value of issn_field.
24             # e.g. issn_field => '1553667x'
25              
26             issn(issn_field) # issn_field => '1553-667X'
27              
28             =head1 SEE ALSO
29              
30             L<Catmandu::Fix>
31              
32             =cut
33              
34             1;