File Coverage

blib/lib/Pithub/Gists/Comments.pm
Criterion Covered Total %
statement 26 26 100.0
branch 20 20 100.0
condition n/a
subroutine 7 7 100.0
pod 5 5 100.0
total 58 58 100.0


line stmt bran cond sub pod time code
1             package Pithub::Gists::Comments;
2             our $AUTHORITY = 'cpan:PLU';
3             our $VERSION = '0.01040';
4             # ABSTRACT: Github v3 Gist Comments API
5              
6 16     16   102 use Moo;
  16         28  
  16         78  
7 16     16   4399 use Carp qw( croak );
  16         34  
  16         6906  
8             extends 'Pithub::Base';
9              
10              
11             sub create {
12 6     6 1 8225 my ( $self, %args ) = @_;
13 6 100       27 croak 'Missing key in parameters: gist_id' unless $args{gist_id};
14 5 100       28 croak 'Missing key in parameters: data (hashref)' unless ref $args{data} eq 'HASH';
15             return $self->request(
16             method => 'POST',
17 3         31 path => sprintf( '/gists/%s/comments', delete $args{gist_id} ),
18             %args,
19             );
20             }
21              
22              
23             sub delete {
24 5     5 1 3287 my ( $self, %args ) = @_;
25 5 100       32 croak 'Missing key in parameters: gist_id' unless $args{gist_id};
26 4 100       18 croak 'Missing key in parameters: comment_id' unless $args{comment_id};
27             return $self->request(
28             method => 'DELETE',
29 3         25 path => sprintf( '/gists/%s/comments/%s', delete $args{gist_id}, delete $args{comment_id} ),
30             %args,
31             );
32             }
33              
34              
35             sub get {
36 4     4 1 2385 my ( $self, %args ) = @_;
37 4 100       33 croak 'Missing key in parameters: gist_id' unless $args{gist_id};
38 3 100       16 croak 'Missing key in parameters: comment_id' unless $args{comment_id};
39             return $self->request(
40             method => 'GET',
41 2         22 path => sprintf( '/gists/%s/comments/%s', delete $args{gist_id}, delete $args{comment_id} ),
42             %args,
43             );
44             }
45              
46              
47             sub list {
48 3     3 1 1819 my ( $self, %args ) = @_;
49 3 100       19 croak 'Missing key in parameters: gist_id' unless $args{gist_id};
50             return $self->request(
51             method => 'GET',
52 2         19 path => sprintf( '/gists/%s/comments', delete $args{gist_id} ),
53             %args,
54             );
55             }
56              
57              
58             sub update {
59 7     7 1 4483 my ( $self, %args ) = @_;
60 7 100       29 croak 'Missing key in parameters: gist_id' unless $args{gist_id};
61 6 100       21 croak 'Missing key in parameters: comment_id' unless $args{comment_id};
62 5 100       27 croak 'Missing key in parameters: data (hashref)' unless ref $args{data} eq 'HASH';
63             return $self->request(
64             method => 'PATCH',
65 3         26 path => sprintf( '/gists/%s/comments/%s', delete $args{gist_id}, delete $args{comment_id} ),
66             %args,
67             );
68             }
69              
70             1;
71              
72             __END__