File Coverage

blib/lib/WWW/SnipeIT/Users.pm
Criterion Covered Total %
statement 18 40 45.0
branch n/a
condition n/a
subroutine 6 8 75.0
pod n/a
total 24 48 50.0


line stmt bran cond sub pod time code
1             package WWW::SnipeIT::Users;
2 1     1   6 use Modern::Perl '2018';
  1         2  
  1         9  
3            
4 1     1   281 use Object::Pad;
  1         2  
  1         6  
5            
6 1     1   100 use HTTP::Request;
  1         1  
  1         17  
7 1     1   3 use LWP::UserAgent;
  1         1  
  1         15  
8 1     1   3 use JSON::XS;
  1         1  
  1         45  
9 1     1   3 use URI;
  1         1  
  1         87  
10            
11             class Users {
12            
13             field $endpoint :param;
14             field $header :param;
15            
16             #key=value
17 0     0     method getUsers (%params) {
  0            
  0            
  0            
18 0           my $uri = URI->new($endpoint."users");
19 0           while (my ($key, $value) = each %params) {
20 0           $uri->query_param($key => $value);
21             }
22 0           my $r = HTTP::Request->new('GET', $uri->as_string, $header);
23 0           my $ua = LWP::UserAgent->new();
24 0           my $res = $ua->request($r);
25 0           my $results = JSON::XS::decode_json($res->{_content});
26            
27 0           return $results;
28             }
29            
30 0     0     method getUsersAssets ($user_id) {
  0            
  0            
  0            
31 0           my $url = $endpoint."users/".$user_id."/assets";
32 0           my $r = HTTP::Request->new('GET', $url, $header);
33 0           my $ua = LWP::UserAgent->new();
34 0           my $res = $ua->request($r);
35 0           my $results = JSON::XS::decode_json($res->{_content});
36            
37 0           return $results;
38             }
39             }
40             1;