File Coverage

blib/lib/Catmandu/AlephX/Op/IllBorInfo.pm
Criterion Covered Total %
statement 9 20 45.0
branch 0 2 0.0
condition n/a
subroutine 3 5 60.0
pod 0 2 0.0
total 12 29 41.3


line stmt bran cond sub pod time code
1             package Catmandu::AlephX::Op::IllBorInfo;
2 1     1   91318 use Catmandu::Sane;
  1         160589  
  1         7  
3 1     1   263 use Catmandu::Util qw(:check);
  1         3  
  1         238  
4 1     1   6 use Moo;
  1         2  
  1         5  
5              
6             our $VERSION = "1.071";
7              
8             extends('Catmandu::AlephX::Op::BorAuth');
9             with('Catmandu::AlephX::Response');
10              
11             has z308 => (
12             is => 'ro',
13             lazy => 1,
14             isa => sub {
15             check_array_ref($_[0]);
16             },
17             default => sub {
18             [];
19             }
20             );
21              
22 0     0 0   sub op { 'ill-bor-info' }
23              
24             sub parse {
25 0     0 0   my($class,$str_ref) = @_;
26 0           my $xpath = xpath($str_ref);
27 0           my $op = op();
28              
29 0           my @keys = qw(z303 z304 z305 z308);
30 0           my %args = ();
31              
32 0           for my $key(@keys){
33 0           my($l) = $xpath->find("/$op/$key")->get_nodelist();
34 0 0         my $data = $l ? get_children($l,1) : {};
35 0           $args{$key} = $data;
36             }
37              
38             __PACKAGE__->new(
39 0           %args,
40             session_id => $xpath->findvalue("/$op/session-id"),
41             errors => $class->parse_errors($xpath),
42             content_ref => $str_ref
43             );
44              
45             }
46              
47             1;