File Coverage

blib/lib/MetaCPAN/Client/DownloadURL.pm
Criterion Covered Total %
statement 10 10 100.0
branch n/a
condition n/a
subroutine 4 4 100.0
pod n/a
total 14 14 100.0


line stmt bran cond sub pod time code
1 19     19   109 use strict;
  19         38  
  19         495  
2 19     19   80 use warnings;
  19         31  
  19         713  
3             package MetaCPAN::Client::DownloadURL;
4             # ABSTRACT: A Download URL data object
5             $MetaCPAN::Client::DownloadURL::VERSION = '2.030000';
6 19     19   104 use Moo;
  19         32  
  19         80  
7              
8             with 'MetaCPAN::Client::Role::Entity';
9              
10             my %known_fields = (
11             scalar => [qw< checksum_md5 checksum_sha256 date download_url status version >],
12             arrayref => [],
13             hashref => [],
14             );
15              
16             my @known_fields =
17             map { @{ $known_fields{$_} } } qw< scalar arrayref hashref >;
18              
19             foreach my $field (@known_fields) {
20             has $field => (
21             is => 'ro',
22             lazy => 1,
23             default => sub {
24             my $self = shift;
25             return $self->data->{$field};
26             },
27             );
28             }
29              
30 8     8   20 sub _known_fields { return \%known_fields }
31              
32             1;
33              
34             __END__