File Coverage

blib/lib/Net/Stripe/Plan.pm
Criterion Covered Total %
statement 12 15 80.0
branch 0 2 0.0
condition n/a
subroutine 4 5 80.0
pod n/a
total 16 22 72.7


line stmt bran cond sub pod time code
1             package Net::Stripe::Plan;
2             $Net::Stripe::Plan::VERSION = '0.40_005'; # TRIAL
3              
4 2     2   14 $Net::Stripe::Plan::VERSION = '0.40005';use Moose;
  2         4  
  2         15  
5 2     2   11815 use Moose::Util::TypeConstraints qw(subtype as where message);
  2         4  
  2         17  
6 2     2   1378 use Kavorka;
  2         4  
  2         16  
7             extends 'Net::Stripe::Resource';
8              
9             # ABSTRACT: represent a Plan object from Stripe
10              
11             subtype 'StatementDescriptor',
12             as 'Str',
13             where { !defined($_) || $_ =~ /^[^<>"']{0,15}$/ },
14             message { "The statement descriptor you provided '$_' must be 15 characters or less and not contain <>\"'." };
15              
16             has 'id' => (is => 'ro', isa => 'Maybe[Str]', required => 1);
17             has 'amount' => (is => 'ro', isa => 'Maybe[Int]', required => 1);
18             has 'currency' => (is => 'ro', isa => 'Maybe[Str]', required => 1);
19             has 'interval' => (is => 'ro', isa => 'Maybe[Str]', required => 1);
20             has 'interval_count' => (is => 'ro', isa => 'Maybe[Int]', required => 0);
21             has 'name' => (is => 'ro', isa => 'Maybe[Str]');
22             has 'trial_period_days' => (is => 'ro', isa => 'Maybe[Int]');
23             has 'statement_descriptor' => (is => 'ro', isa => 'Maybe[StatementDescriptor]', required => 0);
24             has 'metadata' => (is => 'ro', isa => 'Maybe[HashRef]');
25             has 'product' => (is => 'ro', isa => 'Maybe[StripeProductId|Str]');
26              
27 2 0   2   4217 method form_fields {
  2     0   4  
  2         297  
  0            
  0            
28 0           return $self->form_fields_for(
29             qw/id amount currency interval interval_count name statement_descriptor
30             trial_period_days metadata product/
31             );
32             }
33              
34             __PACKAGE__->meta->make_immutable;
35             1;
36              
37             __END__
38              
39             =pod
40              
41             =head1 NAME
42              
43             Net::Stripe::Plan - represent a Plan object from Stripe
44              
45             =head1 VERSION
46              
47             version 0.40_005
48              
49             =head1 ATTRIBUTES
50              
51             =head2 amount
52              
53             Reader: amount
54              
55             Type: Maybe[Int]
56              
57             This attribute is required.
58              
59             =head2 boolean_attributes
60              
61             Reader: boolean_attributes
62              
63             Type: ArrayRef[Str]
64              
65             =head2 currency
66              
67             Reader: currency
68              
69             Type: Maybe[Str]
70              
71             This attribute is required.
72              
73             =head2 id
74              
75             Reader: id
76              
77             Type: Maybe[Str]
78              
79             This attribute is required.
80              
81             =head2 interval
82              
83             Reader: interval
84              
85             Type: Maybe[Str]
86              
87             This attribute is required.
88              
89             =head2 interval_count
90              
91             Reader: interval_count
92              
93             Type: Maybe[Int]
94              
95             =head2 metadata
96              
97             Reader: metadata
98              
99             Type: Maybe[HashRef]
100              
101             =head2 name
102              
103             Reader: name
104              
105             Type: Maybe[Str]
106              
107             =head2 product
108              
109             Reader: product
110              
111             Type: Maybe[Str|StripeProductId]
112              
113             =head2 statement_descriptor
114              
115             Reader: statement_descriptor
116              
117             Type: Maybe[StatementDescriptor]
118              
119             =head2 trial_period_days
120              
121             Reader: trial_period_days
122              
123             Type: Maybe[Int]
124              
125             =head1 AUTHORS
126              
127             =over 4
128              
129             =item *
130              
131             Luke Closs
132              
133             =item *
134              
135             Rusty Conover
136              
137             =back
138              
139             =head1 COPYRIGHT AND LICENSE
140              
141             This software is copyright (c) 2015 by Prime Radiant, Inc., (c) copyright 2014 Lucky Dinosaur LLC.
142              
143             This is free software; you can redistribute it and/or modify it under
144             the same terms as the Perl 5 programming language system itself.
145              
146             =cut