File Coverage

blib/lib/Pithub/Users/Keys.pm
Criterion Covered Total %
statement 17 17 100.0
branch 6 6 100.0
condition n/a
subroutine 6 6 100.0
pod 4 4 100.0
total 33 33 100.0


line stmt bran cond sub pod time code
1             package Pithub::Users::Keys;
2             our $AUTHORITY = 'cpan:PLU';
3             our $VERSION = '0.01041';
4              
5             # ABSTRACT: Github v3 User Keys API
6              
7 16     16   110 use Moo;
  16         32  
  16         88  
8 16     16   5041 use Carp qw( croak );
  16         48  
  16         5018  
9             extends 'Pithub::Base';
10              
11              
12             sub create {
13 4     4 1 8521 my ( $self, %args ) = @_;
14             croak 'Missing key in parameters: data (hashref)'
15 4 100       34 unless ref $args{data} eq 'HASH';
16 3         25 return $self->request(
17             method => 'POST',
18             path => '/user/keys',
19             %args,
20             );
21             }
22              
23              
24             sub delete {
25 4     4 1 3257 my ( $self, %args ) = @_;
26 4 100       29 croak 'Missing key in parameters: key_id' unless $args{key_id};
27             return $self->request(
28             method => 'DELETE',
29 3         29 path => sprintf( '/user/keys/%s', delete $args{key_id} ),
30             %args,
31             );
32             }
33              
34              
35             sub get {
36 4     4 1 3257 my ( $self, %args ) = @_;
37 4 100       27 croak 'Missing key in parameters: key_id' unless $args{key_id};
38             return $self->request(
39             method => 'GET',
40 3         28 path => sprintf( '/user/keys/%s', delete $args{key_id} ),
41             %args,
42             );
43             }
44              
45              
46             sub list {
47 3     3 1 2567 my ( $self, %args ) = @_;
48 3         22 return $self->request(
49             method => 'GET',
50             path => '/user/keys',
51             %args,
52             );
53             }
54              
55             1;
56              
57             __END__