File Coverage

lib/Finance/Alpaca/Struct/TradeUpdate.pm
Criterion Covered Total %
statement 36 36 100.0
branch n/a
condition n/a
subroutine 12 12 100.0
pod n/a
total 48 48 100.0


line stmt bran cond sub pod time code
1             package Finance::Alpaca::Struct::TradeUpdate 0.9904 {
2 17     17   109 use strictures 2;
  17         119  
  17         610  
3 17     17   3317 use feature 'signatures';
  17         31  
  17         1028  
4 17     17   91 no warnings 'experimental::signatures';
  17         26  
  17         688  
5             #
6 17     17   83 use Type::Library 0.008 -base, -declare => qw[TradeUpdate];
  17         313  
  17         104  
7 17     17   7012 use Type::Utils;
  17         36  
  17         94  
8 17     17   21381 use Types::Standard qw[Enum Num Ref Str];
  17         69  
  17         133  
9 17     17   16452 use Types::TypeTiny 0.004 StringLike => { -as => "Stringable" };
  17         334  
  17         116  
10             class_type TradeUpdate, { class => __PACKAGE__ };
11             coerce( TradeUpdate, from Ref() => __PACKAGE__ . q[->new($_)] );
12             #
13 17     17   5357 use Moo;
  17         36  
  17         123  
14 17     17   5198 use Types::UUID;
  17         32  
  17         122  
15 17     17   4877 use lib './lib';
  17         37  
  17         105  
16 17     17   2384 use Finance::Alpaca::Types;
  17         31  
  17         119  
17 17     17   4706 use Finance::Alpaca::Struct::Order qw[Order];
  17         34  
  17         117  
18             has event => (
19             is => 'ro',
20             isa => Enum [
21             qw[
22             new fill partial_fill canceled expired done_for_day replaced
23             rejected pending_new stopped pending_cancel pending_replace
24             calculated suspended
25             order_replace_rejected order_cancel_rejected]
26             ],
27             required => 1
28             );
29             has order => ( is => 'ro', isa => Order, required => 1, coerce => 1 );
30             has timestamp => ( is => 'ro', isa => Timestamp, predicate => 1, coerce => 1 );
31             has [qw[position_qty price qty]] => ( is => 'ro', isa => Num, predicate => 1 );
32             }
33             1;
34             __END__