File Coverage

lib/Catan/Asset/City.pm
Criterion Covered Total %
statement 29 30 96.6
branch 1 2 50.0
condition 1 3 33.3
subroutine 11 12 91.6
pod 0 4 0.0
total 42 51 82.3


line stmt bran cond sub pod time code
1             package Catan::Asset::City;
2             $Catan::Asset::City::VERSION = '0.03';
3 4     4   19 use strict;
  4     1   91  
  4         1272  
  1         788  
  1         1  
  1         23  
4 4     4   21 use warnings;
  4     1   7  
  4         97  
  1         5  
  1         3  
  1         23  
5 4     4   385 use Catan::Resource::Ore;
  4     1   6  
  4         129  
  1         5  
  1         1  
  1         29  
6 4     4   17 use Catan::Resource::Grain;
  4     1   8  
  4         601  
  1         6  
  1         2  
  1         382  
7              
8             sub new
9             {
10 5     5 0 12 my ($class, $location) = @_;
11              
12 5 50 33     15 die __PACKAGE__ . 'new requires a location argument'
13             unless $location && $location->isa('Catan::Map::Intersection');
14              
15 5         25 return bless {
16             location => $location,
17             code => 'C',
18             }, $class;
19             }
20              
21 0     0 0 0 sub code { $_[0]->{code} }
22 901     901 0 2438 sub location { $_[0]->{location} }
23              
24             sub cost
25             {
26             return [
27 6     6 0 31 Catan::Resource::Ore->new(-3),
28             Catan::Resource::Grain->new(-2),
29             ];
30             }
31             1;
32              
33             __END__