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   21 use strict;
  3         7  
  3         115  
3 3     3   16 use warnings;
  3         5  
  3         150  
4 3     3   18 use utf8;
  3         8  
  3         46  
5 3     3   140 use feature qw/state/;
  3         12  
  3         455  
6              
7 3     3   23 use parent 'WebService::Slack::WebApi::Base';
  3         6  
  3         19  
8              
9 3     3   398 use JSON;
  3         5  
  3         36  
10              
11             use WebService::Slack::WebApi::Generator (
12 3         41 get => {
13             include_labels => { isa => 'Bool', optional => 1 },
14             user => { isa => 'Str', optional => 1 },
15             },
16 3     3   621 );
  3         8  
17              
18             # override
19 2     2 0 10 sub base_name { 'users.profile' }
20              
21             sub set {
22 1     1 0 34 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         2331 my ($self, $args, %extra) = $rule->validate(@_);
29              
30 1 50       193 $args->{profile} = encode_json $args->{profile} if exists $args->{profile};
31 1         12 return $self->request('set', { %$args, %extra });
32             }
33              
34             1;
35