File Coverage

blib/lib/WWW/Gitea/Label.pm
Criterion Covered Total %
statement 6 21 28.5
branch n/a
condition n/a
subroutine 2 10 20.0
pod 8 8 100.0
total 16 39 41.0


line stmt bran cond sub pod time code
1             package WWW::Gitea::Label;
2              
3             # ABSTRACT: Gitea label entity
4              
5 3     3   73 use Moo;
  3         25  
  3         16  
6 3     3   1026 use namespace::clean;
  3         6  
  3         28  
7              
8              
9             has _client => (
10             is => 'ro',
11             required => 1,
12             weak_ref => 1,
13             init_arg => 'client',
14             );
15              
16             has data => (
17             is => 'rw',
18             required => 1,
19             );
20              
21              
22             has owner => ( is => 'ro' );
23             has repo => ( is => 'ro' );
24              
25              
26 0     0 1   sub id { $_[0]->data->{id} }
27 0     0 1   sub name { $_[0]->data->{name} }
28 0     0 1   sub color { $_[0]->data->{color} }
29 0     0 1   sub description { $_[0]->data->{description} }
30 0     0 1   sub url { $_[0]->data->{url} }
31              
32              
33             sub refresh {
34 0     0 1   my ($self) = @_;
35 0           my $fresh = $self->_client->labels->get($self->owner, $self->repo, $self->id);
36 0           $self->data($fresh->data);
37 0           return $self;
38             }
39              
40              
41             sub edit {
42 0     0 1   my ($self, %args) = @_;
43 0           my $fresh = $self->_client->labels->edit(
44             $self->owner, $self->repo, $self->id, %args);
45 0           $self->data($fresh->data);
46 0           return $self;
47             }
48              
49              
50             sub delete {
51 0     0 1   my ($self) = @_;
52 0           return $self->_client->labels->delete($self->owner, $self->repo, $self->id);
53             }
54              
55              
56              
57             1;
58              
59             __END__