File Coverage

blib/lib/WebService/ValidSign/API/Account.pm
Criterion Covered Total %
statement 9 24 37.5
branch 0 2 0.0
condition n/a
subroutine 3 5 60.0
pod 0 2 0.0
total 12 33 36.3


line stmt bran cond sub pod time code
1              
2             our $VERSION = '0.004';
3             use Moo;
4 3     3   2330 use namespace::autoclean;
  3         6  
  3         15  
5 3     3   869  
  3         7  
  3         16  
6             # ABSTRACT: A REST API client for ValidSign
7              
8             use WebService::ValidSign::Object::Sender;
9 3     3   190  
  3         6  
  3         701  
10             has action_endpoint => (
11             is => 'ro',
12             default => 'account'
13             );
14              
15             my $self = shift;
16              
17 0     0 0   my $uri = $self->get_endpoint($self->action_endpoint);
18             my $request = HTTP::Request->new(
19 0           GET => $uri,
20 0           [
21             'Content-Type' => 'application/json',
22             Accept => 'application/json',
23             ]
24             );
25             return $self->call_api($request);
26              
27 0           }
28              
29             my ($self, %params) = @_;
30              
31             my $uri = $self->get_endpoint($self->action_endpoint, 'senders');
32 0     0 0   $uri->query_form(%params) if %params;
33              
34 0           my $request = HTTP::Request->new(
35 0 0         GET => $uri,
36             [
37 0           'Content-Type' => 'application/json',
38             Accept => 'application/json',
39             ]
40             );
41              
42             my $response = $self->call_api($request);
43             my @senders;
44             foreach (@{$response->{results}}) {
45 0           push(@senders, WebService::ValidSign::Object::Sender->new(%{$_}));
46 0           }
47 0            
  0            
48 0           return \@senders;
  0            
49             }
50              
51 0           with "WebService::ValidSign::API";
52              
53             __PACKAGE__->meta->make_immutable;
54              
55              
56             =pod
57              
58             =encoding UTF-8
59              
60             =head1 NAME
61              
62             WebService::ValidSign::API::Account - A REST API client for ValidSign
63              
64             =head1 VERSION
65              
66             version 0.004
67              
68             =head1 SYNOPSIS
69              
70             =head1 ATTRIBUTES
71              
72             =head1 METHODS
73              
74             =head1 AUTHOR
75              
76             Wesley Schwengle <waterkip@cpan.org>
77              
78             =head1 COPYRIGHT AND LICENSE
79              
80             This software is Copyright (c) 2019 by Wesley Schwengle.
81              
82             This is free software, licensed under:
83              
84             The (three-clause) BSD License
85              
86             =cut