File Coverage

blib/lib/Cfn/Resource/AWS/IAM/Policy.pm
Criterion Covered Total %
statement 20 20 100.0
branch n/a
condition n/a
subroutine 7 7 100.0
pod 0 3 0.0
total 27 30 90.0


line stmt bran cond sub pod time code
1             # AWS::IAM::Policy generated from spec 5.3.0
2 6     6   3553 use Moose::Util::TypeConstraints;
  6         13  
  6         57  
3              
4             coerce 'Cfn::Resource::Properties::AWS::IAM::Policy',
5             from 'HashRef',
6             via { Cfn::Resource::Properties::AWS::IAM::Policy->new( %$_ ) };
7              
8             package Cfn::Resource::AWS::IAM::Policy {
9 6     6   11605 use Moose;
  6         13  
  6         41  
10             extends 'Cfn::Resource';
11             has Properties => (isa => 'Cfn::Resource::Properties::AWS::IAM::Policy', is => 'rw', coerce => 1);
12            
13             sub AttributeList {
14 1     1 0 4 [ ]
15             }
16             sub supported_regions {
17 1     1 0 1076 [ 'ap-east-1','ap-northeast-1','ap-northeast-2','ap-northeast-3','ap-south-1','ap-southeast-1','ap-southeast-2','ca-central-1','cn-north-1','cn-northwest-1','eu-central-1','eu-north-1','eu-west-1','eu-west-2','eu-west-3','me-south-1','sa-east-1','us-east-1','us-east-2','us-gov-east-1','us-gov-west-1','us-west-1','us-west-2' ]
18             }
19             sub addStatement {
20 1     1 0 4 my ($self, @args) = @_;
21 1         7 require Moose::Util::TypeConstraints;
22 1         2 my @statements = map { Moose::Util::TypeConstraints::find_type_constraint('Cfn::Value')->coerce($_) } @args;
  1         3  
23 1         817 push @{ $self->Properties->PolicyDocument->Value->{Statement}->Value }, @statements;
  1         25  
24             }
25            
26             }
27              
28              
29              
30             package Cfn::Resource::Properties::AWS::IAM::Policy {
31 6     6   38711 use Moose;
  6         16  
  6         27  
32 6     6   34145 use MooseX::StrictConstructor;
  6         19586  
  6         50  
33             extends 'Cfn::Resource::Properties';
34            
35             has Groups => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
36             has PolicyDocument => (isa => 'Cfn::Value::Json|Cfn::DynamicValue', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
37             has PolicyName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
38             has Roles => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
39             has Users => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
40             }
41              
42             1;