File Coverage

blib/lib/Evo/Promise/Util.pm
Criterion Covered Total %
statement 38 38 100.0
branch 17 26 65.3
condition 4 6 66.6
subroutine 8 8 100.0
pod 0 3 0.0
total 67 81 82.7


line stmt bran cond sub pod time code
1             package Evo::Promise::Util;
2 6     6   2612 use Evo '-Export *; List::Util first; Carp croak; /::Const *';
  6         15  
  6         50  
3              
4 5 50   5 0 33 sub is_locked_in ($parent, $child) : Export {
  5 50       46  
  5         11  
  5         10  
  5         8  
5 5 50       21 croak unless defined wantarray;
6 5     4   64 first { $_ == $child } $parent->d_children->@*;
  4         42  
7 6     6   47 }
  6         12  
  6         35  
8              
9 15 50   15 0 79 sub is_fulfilled_with ($v, $p) : Export {
  15 50       50  
  15         30  
  15         25  
  15         28  
10 15 50       41 croak unless defined wantarray;
11 15 100 66     115 return unless $p->d_settled && $p->state eq FULFILLED;
12 14         40 my $dv = $p->d_v;
13              
14 14 100       77 return defined $dv ? $v eq $dv : !defined $v;
15 6     6   1248 }
  6         14  
  6         267  
16              
17 13 50   13 0 61 sub is_rejected_with ($v, $p) : Export {
  13 50       35  
  13         31  
  13         24  
  13         19  
18 13 50       33 croak unless defined wantarray;
19 13 100 66     114 return unless $p->d_settled && $p->state eq REJECTED;
20 11         34 my $dv = $p->d_v;
21 11 100       64 return defined $dv ? $v eq $dv : !defined $v;
22 6     6   1047 }
  6         14  
  6         23  
23              
24              
25             1;
26              
27             __END__