File Coverage

blib/lib/WebService/Slack/WebApi/Users/Profile.pm
Criterion Covered Total %
statement 26 26 100.0
branch 1 2 50.0
condition n/a
subroutine 9 9 100.0
pod 0 2 0.0
total 36 39 92.3


line stmt bran cond sub pod time code
1             package WebService::Slack::WebApi::Users::Profile;
2 3     3   23 use strict;
  3         6  
  3         89  
3 3     3   15 use warnings;
  3         6  
  3         66  
4 3     3   15 use utf8;
  3         6  
  3         13  
5 3     3   92 use feature qw/state/;
  3         8  
  3         259  
6              
7 3     3   19 use parent 'WebService::Slack::WebApi::Base';
  3         7  
  3         24  
8              
9 3     3   222 use JSON;
  3         7  
  3         39  
10              
11             use WebService::Slack::WebApi::Generator (
12 3         32 get => {
13             include_labels => { isa => 'Bool', optional => 1 },
14             user => { isa => 'Str', optional => 1 },
15             },
16 3     3   467 );
  3         6  
17              
18             # override
19 2     2 0 11 sub base_name { 'users.profile' }
20              
21             sub set {
22 1     1 0 24 state $rule = Data::Validator->new(
23             name => { isa => 'Str', optional => 1 },
24             profile => { isa => 'HashRef', optional => 1 },
25             user => { isa => 'Str', optional => 1 },
26             value => { isa => 'Str', optional => 1 },
27             )->with('Method', 'AllowExtra');
28 1         1779 my ($self, $args, %extra) = $rule->validate(@_);
29              
30 1 50       149 $args->{profile} = encode_json $args->{profile} if exists $args->{profile};
31 1         8 return $self->request('set', { %$args, %extra });
32             }
33              
34             1;
35