File Coverage

blib/lib/Pithub/Users.pm
Criterion Covered Total %
statement 25 25 100.0
branch 4 4 100.0
condition n/a
subroutine 10 10 100.0
pod 5 5 100.0
total 44 44 100.0


line stmt bran cond sub pod time code
1             package Pithub::Users;
2             our $AUTHORITY = 'cpan:PLU';
3             our $VERSION = '0.01041';
4              
5             # ABSTRACT: Github v3 Users API
6              
7 16     16   10975 use Moo;
  16         12621  
  16         93  
8 16     16   5989 use Carp qw( croak );
  16         46  
  16         808  
9 16     16   7348 use Pithub::Users::Emails ();
  16         50  
  16         387  
10 16     16   7206 use Pithub::Users::Followers ();
  16         45  
  16         365  
11 16     16   7133 use Pithub::Users::Keys ();
  16         46  
  16         3422  
12             extends 'Pithub::Base';
13              
14              
15             sub emails {
16 1     1 1 502 return shift->_create_instance( Pithub::Users::Emails::, @_ );
17             }
18              
19              
20             sub followers {
21 9     9 1 2302 return shift->_create_instance( Pithub::Users::Followers::, @_ );
22             }
23              
24              
25             sub get {
26 9     9 1 21669 my ( $self, %args ) = @_;
27 9 100       45 if ( $args{user} ) {
28             return $self->request(
29             method => 'GET',
30 7         70 path => sprintf( '/users/%s', delete $args{user} ),
31             %args,
32             );
33             }
34 2         11 return $self->request(
35             method => 'GET',
36             path => '/user',
37             %args,
38             );
39             }
40              
41              
42             sub keys {
43 1     1 1 1368 return shift->_create_instance( Pithub::Users::Keys::, @_ );
44             }
45              
46              
47             sub update {
48 4     4 1 3294 my ( $self, %args ) = @_;
49             croak 'Missing key in parameters: data (hashref)'
50 4 100       26 unless ref $args{data} eq 'HASH';
51 3         18 return $self->request(
52             method => 'PATCH',
53             path => '/user',
54             %args,
55             );
56             }
57              
58             1;
59              
60             __END__