File Coverage

lib/DR/TarantoolQueue/Worker/QueueList.pm
Criterion Covered Total %
statement 21 21 100.0
branch n/a
condition n/a
subroutine 7 7 100.0
pod n/a
total 28 28 100.0


line stmt bran cond sub pod time code
1 1     1   472 use utf8;
  1         3  
  1         8  
2 1     1   35 use strict;
  1         3  
  1         29  
3 1     1   7 use warnings;
  1         2  
  1         48  
4             package DR::TarantoolQueue::Worker::QueueList;
5 1     1   6 use Mouse::Role;
  1         2  
  1         8  
6              
7 1     1   431 use Mouse::Util::TypeConstraints;
  1         2  
  1         8  
8 1     1   135 use Scalar::Util 'blessed';
  1         3  
  1         225  
9              
10             subtype QueueList => as 'ArrayRef[DR::TarantoolQueue]';
11              
12             coerce QueueList => from 'DR::TarantoolQueue', via { [ $_ ] };
13             coerce QueueList => from 'Undef', via { [] };
14             coerce QueueList =>
15             from 'ArrayRef',
16             via {
17             require DR::TarantoolQueue;
18             [ map { blessed $_ ? $_ : DR::TarantoolQueue->new($_) } @$_ ]
19             };
20              
21 1     1   12 no Mouse::Util::TypeConstraints;
  1         3  
  1         6  
22              
23             has queue =>
24             isa => 'QueueList',
25             is => 'ro',
26             required => 1,
27             coerce => 1;
28              
29              
30             1
31             ;