File Coverage

blib/lib/WebService/SendGrid/Newsletter/Lists.pm
Criterion Covered Total %
statement 32 32 100.0
branch 2 2 100.0
condition n/a
subroutine 10 10 100.0
pod 6 6 100.0
total 50 50 100.0


line stmt bran cond sub pod time code
1 6     6   30 use strict;
  6         13  
  6         239  
2 6     6   29 use warnings;
  6         11  
  6         244  
3             package WebService::SendGrid::Newsletter::Lists;
4              
5 6     6   3418 use WebService::SendGrid::Newsletter::Lists::Email;
  6         17  
  6         172  
6 6     6   33 use parent 'WebService::SendGrid::Newsletter::Base';
  6         12  
  6         27  
7              
8              
9             sub new {
10 3     3 1 10 my ($class, %args) = @_;
11              
12 3         8 my $self = {};
13 3         7 bless($self, $class);
14              
15 3         19 $self->{sgn} = $args{sgn};
16              
17 3         10 return $self;
18             }
19              
20              
21             sub add {
22 5     5 1 18 my ($self, %args) = @_;
23              
24 5         34 $self->_check_required_args([ qw( list ) ], %args);
25              
26 4         24 return $self->{sgn}->_send_request('lists/add', %args);
27             }
28              
29              
30             sub get {
31 2     2 1 5 my ($self, %args) = @_;
32              
33 2         10 return $self->{sgn}->_send_request('lists/get', %args);
34             }
35              
36              
37             sub edit {
38 1     1 1 4 my ($self, %args) = @_;
39              
40 1         7 $self->_check_required_args([ qw( list newlist ) ], %args);
41              
42 1         11 return $self->{sgn}->_send_request('lists/edit', %args);
43             }
44              
45              
46             sub delete {
47 4     4 1 13 my ($self, %args) = @_;
48              
49 4         24 $self->_check_required_args([ qw( list ) ], %args);
50              
51 3         17 return $self->{sgn}->_send_request('lists/delete', %args);
52             }
53              
54              
55             sub email {
56 3     3 1 8 my ($self) = @_;
57            
58 3 100       12 if (!defined $self->{email}) {
59             $self->{email} = WebService::SendGrid::Newsletter::Lists::Email->new(
60             sgn => $self->{sgn}
61 2         24 );
62             }
63            
64 3         20 return $self->{email};
65             }
66              
67             1;
68              
69             __END__