File Coverage

blib/lib/WebService/Mattermost/V4/API/Object/Role/UpdatedAt.pm
Criterion Covered Total %
statement 8 10 80.0
branch n/a
condition n/a
subroutine 3 4 75.0
pod n/a
total 11 14 78.5


line stmt bran cond sub pod time code
1             package WebService::Mattermost::V4::API::Object::Role::UpdatedAt;
2              
3             # ABSTRACT: Adds an "updated_at" field to an object.
4              
5 7     7   3706 use Moo::Role;
  7         17  
  7         108  
6 7     7   2996 use Types::Standard qw(InstanceOf Int Maybe);
  7         13  
  7         45  
7              
8             ################################################################################
9              
10             has update_at => (is => 'ro', isa => Maybe[Int], lazy => 1, builder => 1);
11             has updated_at => (is => 'ro', isa => Maybe[InstanceOf['DateTime']], lazy => 1, builder => 1);
12              
13             ################################################################################
14              
15             sub _build_update_at {
16 0     0   0     my $self = shift;
17              
18 0         0     return $self->raw_data->{update_at};
19             }
20              
21             sub _build_updated_at {
22 1     1   1183     my $self = shift;
23              
24 1         8     return $self->_from_epoch($self->raw_data->{update_at});
25             }
26              
27             ################################################################################
28              
29             1;
30              
31             __END__
32            
33             =pod
34            
35             =encoding UTF-8
36            
37             =head1 NAME
38            
39             WebService::Mattermost::V4::API::Object::Role::UpdatedAt - Adds an "updated_at" field to an object.
40            
41             =head1 VERSION
42            
43             version 0.26
44            
45             =head1 DESCRIPTION
46            
47             Attach common timestamps to a v4::Object object.
48            
49             =head2 ATTRIBUTES
50            
51             =over 4
52            
53             =item C<update_at>
54            
55             UNIX timestamp.
56            
57             =item C<updated_at>
58            
59             C<DateTime> object.
60            
61             =back
62            
63             =head1 AUTHOR
64            
65             Mike Jones <mike@netsplit.org.uk>
66            
67             =head1 COPYRIGHT AND LICENSE
68            
69             This software is Copyright (c) 2020 by Mike Jones.
70            
71             This is free software, licensed under:
72            
73             The MIT (X11) License
74            
75             =cut
76