File Coverage

blib/lib/Data/Seek/Exception/NodeUnknown.pm
Criterion Covered Total %
statement 3 15 20.0
branch n/a
condition 0 2 0.0
subroutine 1 2 50.0
pod n/a
total 4 19 21.0


line stmt bran cond sub pod time code
1             # ABSTRACT: Data::Seek Unknown Node Exception Class
2             package Data::Seek::Exception::NodeUnknown;
3              
4 5     5   1566 use Data::Object::Class;
  5         21211  
  5         25  
5              
6             extends 'Data::Seek::Exception';
7              
8             our $VERSION = '0.06'; # VERSION
9              
10             has 'criterion', is => 'ro';
11             has 'separator', is => 'ro';
12             has 'subject', is => 'ro';
13             has 'target', is => 'ro';
14              
15             has 'was_array', is => 'ro';
16             has 'was_ending', is => 'ro';
17             has 'was_hash', is => 'ro';
18             has 'was_match', is => 'ro';
19              
20             sub _build_message {
21 0     0     my $self = shift;
22              
23 0           my @subject = @{$self->subject};
  0            
24 0           my @target = @{$self->target};
  0            
25 0           my $ending = pop @subject;
26 0           my $criterion = $self->criterion;
27 0   0       my $separator = $self->separator // ' -> ';
28 0           my $subject = join $separator, @subject;
29 0           my $target = join $separator, @target;
30              
31 0           my $message = join ' ',
32             'ERROR MATCHING CRITERION (%s):',
33             'NO CHILD DATA/NODE (%s) FOUND AT (%s) WHILE SEEKING (%s)';
34              
35 0           return sprintf $message, $criterion, $ending, $subject, $target;
36             }
37              
38             1;
39              
40             __END__