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.01043';
4              
5             # ABSTRACT: Github v3 Users API
6              
7 16     16   25803 use Moo;
  16         11375  
  16         123  
8 16     16   7956 use Carp qw( croak );
  16         36  
  16         908  
9 16     16   8463 use Pithub::Users::Emails ();
  16         57  
  16         452  
10 16     16   8488 use Pithub::Users::Followers ();
  16         89  
  16         476  
11 16     16   8025 use Pithub::Users::Keys ();
  16         85  
  16         4599  
12             extends 'Pithub::Base';
13              
14              
15             sub emails {
16 1     1 1 453 return shift->_create_instance( Pithub::Users::Emails::, @_ );
17             }
18              
19              
20             sub followers {
21 9     9 1 2646 return shift->_create_instance( Pithub::Users::Followers::, @_ );
22             }
23              
24              
25             sub get {
26 9     9 1 24922 my ( $self, %args ) = @_;
27 9 100       41 if ( $args{user} ) {
28             return $self->request(
29             method => 'GET',
30 7         63 path => sprintf( '/users/%s', delete $args{user} ),
31             %args,
32             );
33             }
34 2         17 return $self->request(
35             method => 'GET',
36             path => '/user',
37             %args,
38             );
39             }
40              
41              
42             sub keys {
43 1     1 1 1253 return shift->_create_instance( Pithub::Users::Keys::, @_ );
44             }
45              
46              
47             sub update {
48 4     4 1 3280 my ( $self, %args ) = @_;
49             croak 'Missing key in parameters: data (hashref)'
50 4 100       55 unless ref $args{data} eq 'HASH';
51 3         19 return $self->request(
52             method => 'PATCH',
53             path => '/user',
54             %args,
55             );
56             }
57              
58             1;
59              
60             __END__