File Coverage

lib/Finance/Alpaca/Struct/Asset.pm
Criterion Covered Total %
statement 33 33 100.0
branch n/a
condition n/a
subroutine 11 11 100.0
pod n/a
total 44 44 100.0


line stmt bran cond sub pod time code
1             package Finance::Alpaca::Struct::Asset 0.9902 {
2 1     1   8 use strictures 2;
  1         8  
  1         42  
3 1     1   245 use feature 'signatures';
  1         2  
  1         78  
4 1     1   6 no warnings 'experimental::signatures';
  1         2  
  1         60  
5             #
6 1     1   7 use Type::Library 0.008 -base, -declare => qw[Asset];
  1         19  
  1         7  
7 1     1   442 use Type::Utils;
  1         2  
  1         7  
8 1     1   1495 use Types::Standard qw[Bool Enum Int Num Ref Str];
  1         2  
  1         7  
9 1     1   1370 use Types::TypeTiny 0.004 StringLike => { -as => "Stringable" };
  1         17  
  1         7  
10             class_type Asset, { class => __PACKAGE__ };
11             coerce( Asset, from Ref() => __PACKAGE__ . q[->new($_)] );
12             #
13 1     1   381 use Moo;
  1         2  
  1         6  
14 1     1   382 use Types::UUID;
  1         3  
  1         7  
15 1     1   354 use lib './lib';
  1         2  
  1         6  
16 1     1   141 use Finance::Alpaca::Types;
  1         1  
  1         8  
17             has id => ( is => 'ro', isa => Uuid, required => 1 );
18             has [qw[class symbol]] => ( is => 'ro', isa => Str, required => 1 );
19             has exchange =>
20             ( is => 'ro', isa => Enum [qw[AMEX ARCA BATS NYSE NASDAQ NYSEARCA OTC]], required => 1 );
21             has status => ( is => 'ro', isa => Enum [qw[active inactive]], required => 1 );
22             has [qw[easy_to_borrow fractionable marginable shortable tradable]] =>
23             ( is => 'ro', isa => Bool, required => 1, coerce => 1 );
24             }
25             1;
26             __END__