File Coverage

blib/lib/Amazon/S3/Lite/Credentials.pm
Criterion Covered Total %
statement 15 17 88.2
branch 2 4 50.0
condition n/a
subroutine 6 8 75.0
pod 0 5 0.0
total 23 34 67.6


line stmt bran cond sub pod time code
1             ########################################################################
2             # Simple immutable credentials object — used when caller passes
3             # raw key/secret/token rather than a credentials object
4             ########################################################################
5             package Amazon::S3::Lite::Credentials;
6              
7 2     2   13 use strict;
  2         2  
  2         54  
8 2     2   6 use warnings;
  2         3  
  2         72  
9              
10 2     2   6 use Carp qw(croak);
  2         3  
  2         347  
11              
12             our $VERSION = '1.0.1';
13              
14             sub new {
15 12     12 0 46 my ( $class, %args ) = @_;
16              
17             croak 'aws_access_key_id is required'
18 12 50       25 if !$args{aws_access_key_id};
19              
20             croak 'aws_secret_access_key is required'
21 12 50       20 if !$args{aws_secret_access_key};
22              
23             return bless {
24             aws_access_key_id => $args{aws_access_key_id},
25             aws_secret_access_key => $args{aws_secret_access_key},
26             token => $args{token},
27 12         58 }, $class;
28             }
29              
30 1     1 0 6 sub aws_access_key_id { return $_[0]->{aws_access_key_id} }
31 0     0 0 0 sub aws_secret_access_key { return $_[0]->{aws_secret_access_key} }
32 1     1 0 4 sub token { return $_[0]->{token} }
33 0     0 0   sub session_token { return $_[0]->{token} }
34              
35             1;