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   10684 use v5.12;
  4         13  
2 4     4   18 use strict;
  4         8  
  4         65  
3 4     4   17 use warnings;
  4         7  
  4         209  
4              
5              
6             our $AUTHORITY = 'cpan:TOBYINK';
7             our $VERSION = '0.007';
8              
9             use parent qw(Benchmark::Featureset::ParamCheck::Base::PVC);
10 4     4   20 use Params::ValidationCompiler 0.24 qw(validation_for);
  4         12  
  4         20  
11 4     4   189 use Moose::Util::TypeConstraints 2.2002;
  4         41  
  4         162  
12 4     4   22 use namespace::autoclean;
  4         65  
  4         30  
13 4     4   6123  
  4         10  
  4         26  
14             my $t = \&Moose::Util::TypeConstraints::find_or_parse_type_constraint;
15              
16             use constant long_name => 'Params::ValidationCompiler with Moose';
17 4     4   267 use constant short_name => 'PVC-Moose';
  4         8  
  4         201  
18 4     4   19  
  4         5  
  4         489  
19             state $check = validation_for(
20             params => {
21 118     118 0 419 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 107     107 0 407 { type => $t->('ArrayRef[HashRef]') },
32             { type => duck_type(Printable => [qw/ print close /]) },
33             ],
34             );
35             }
36              
37             1;