File Coverage

lib/Finance/Alpaca/Struct/Account.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::Account 0.9902 {
2 1     1   8 use strictures 2;
  1         7  
  1         41  
3 1     1   181 use feature 'signatures';
  1         3  
  1         63  
4 1     1   5 no warnings 'experimental::signatures';
  1         12  
  1         64  
5             #
6 1     1   6 use Type::Library 0.008 -base, -declare => qw[Account];
  1         16  
  1         7  
7 1     1   440 use Type::Utils;
  1         2  
  1         5  
8 1     1   1516 use Types::Standard qw[Bool Enum Int Num Ref Str];
  1         2  
  1         6  
9 1     1   1441 use Types::TypeTiny 0.004 StringLike => { -as => "Stringable" };
  1         16  
  1         6  
10             class_type Account, { class => __PACKAGE__ };
11             coerce( Account, from Ref() => __PACKAGE__ . q[->new($_)] );
12             #
13 1     1   348 use Moo;
  1         2  
  1         5  
14 1     1   323 use Types::UUID;
  1         2  
  1         13  
15 1     1   391 use lib './lib';
  1         2  
  1         6  
16 1     1   135 use Finance::Alpaca::Types;
  1         2  
  1         6  
17             has id => ( is => 'ro', isa => Uuid, required => 1 );
18             has [
19             qw[account_blocked pattern_day_trader shorting_enabled trade_suspended_by_user trading_blocked transfers_blocked]
20             ] => ( is => 'ro', isa => Bool, required => 1, coerce => 1 );
21             has account_number => ( is => 'ro', isa => Str, required => 1 );
22             has [
23             qw[buying_power cash daytrading_buying_power equity initial_margin last_equity last_maintenance_margin long_market_value maintenance_margin portfolio_value regt_buying_power short_market_value]
24             ] => ( is => 'ro', isa => Num, required => 1 );
25             has created_at => ( is => 'ro', isa => Timestamp, required => 1, coerce => 1 );
26             has currency => ( is => 'ro', isa => Str, required => 1 );
27             has [qw[daytrade_count multiplier sma]] => ( is => 'ro', isa => Int, required => 1 );
28             has status => (
29             is => 'ro',
30             isa => Enum [
31             qw[ACTIVE ACCOUNT_UPDATED APPROVAL_PENDING ONBOARDING REJECTED SUBMITTED SUBMISSION_FAILED]
32             ],
33             required => 1
34             );
35             #
36             }
37             1;
38             __END__