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   20 use strict;
  3         6  
  3         88  
3 3     3   18 use warnings;
  3         7  
  3         94  
4 3     3   17 use utf8;
  3         7  
  3         14  
5 3     3   92 use feature qw/state/;
  3         8  
  3         249  
6              
7 3     3   19 use parent 'WebService::Slack::WebApi::Base';
  3         6  
  3         15  
8              
9 3     3   193 use JSON::XS;
  3         6  
  3         271  
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   24 );
  3         7  
17              
18             # override
19 2     2 0 12 sub base_name { 'users.profile' }
20              
21             sub set {
22 1     1 0 609     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         1893     my ($self, $args, %extra) = $rule->validate(@_);
29              
30 1 50       132     $args->{profile} = encode_json $args->{profile} if exists $args->{profile};
31 1         8     return $self->request('set', { %$args, %extra });
32             }
33              
34             1;
35              
36