File Coverage

blib/lib/Benchmark/Featureset/ParamCheck/Implementation/PVC/Moose.pm
Criterion Covered Total %
statement 28 28 100.0
branch n/a
condition n/a
subroutine 11 11 100.0
pod 0 2 0.0
total 39 41 95.1


line stmt bran cond sub pod time code
1 4     4   11838 use v5.12;
  4         16  
2 4     4   22 use strict;
  4         9  
  4         81  
3 4     4   28 use warnings;
  4         9  
  4         251  
4              
5              
6             our $AUTHORITY = 'cpan:TOBYINK';
7             our $VERSION = '0.006';
8              
9             use parent qw(Benchmark::Featureset::ParamCheck::Base::PVC);
10 4     4   22 use Params::ValidationCompiler 0.24 qw(validation_for);
  4         7  
  4         36  
11 4     4   213 use Moose::Util::TypeConstraints 2.2002;
  4         56  
  4         200  
12 4     4   30 use namespace::autoclean;
  4         77  
  4         43  
13 4     4   7393  
  4         10  
  4         35  
14             my $t = \&Moose::Util::TypeConstraints::find_or_parse_type_constraint;
15              
16             use constant long_name => 'Params::ValidationCompiler with Moose';
17 4     4   300 use constant short_name => 'PVC-Moose';
  4         9  
  4         257  
18 4     4   23  
  4         10  
  4         545  
19             state $check = validation_for(
20             params => {
21 58     58 0 205 integer => { type => $t->('Int') },
22             hashes => { type => $t->('ArrayRef[HashRef]') },
23             object => { type => duck_type(Printable => [qw/ print close /]) },
24             },
25             );
26             }
27              
28             state $check = validation_for(
29             params => [
30             { type => $t->('Int') },
31 47     47 0 188 { type => $t->('ArrayRef[HashRef]') },
32             { type => duck_type(Printable => [qw/ print close /]) },
33             ],
34             );
35             }
36              
37             1;