Condition Coverage

blib/lib/Schedule/Activity.pm
Criterion Covered Total %
condition 88 136 64.7


and 3 conditions

line !l l&&!r l&&r condition
43 55 0 0 $self->{'valid'} and not $force
64 1 2 0 defined $msga->{'attributes'} and not is_hashref($msga->{'attributes'})
68 0 1 0 defined $msga->{'message'}{'alternates'} and not is_arrayref($msga->{'message'}{'alternates'})
86 304 100 1 defined $node->{'finish'} and not defined $config{'node'}{$node->{'finish'}}
138 129 699 2137 defined $x and $x eq "+"
186 198 2 3 $actions{$action}{'tmavg'} == 0 and defined $reach{'min'}{$actions{$action}}{$actions{$action}}
256 0 18839 167141 $node and $node ne $conclusion
268 0 0 18839 $node and $node eq $conclusion
308 167 438 391 $excess > 0 and $excess > $slack
309 438 157 10 $excess < 0 and -$excess > $buffer
366 111 65 0 exists $valueOp{$goal{'attribute'}{$k}{'op'}} and not defined $goal{'attribute'}{$k}{'value'}
396 31195 0 0 $self->{'PNA'} and $k =~ /^\Q$self->{'PNA'}\E/
426 145 0 1 not %best and $lasterr
438 22 0 22 is_hashref($activities->[$j][2]) && defined $activities->[$j][2]{'goal'}
22 22 22 $j < $activities->$#* and not is_hashref($activities->[$j][2]) && defined $activities->[$j][2]{'goal'}
457 16988 0 146 $opt{'goal'} and %{$opt{'goal'};}

or 2 conditions

line l !l condition
25 55 0 $opt{'configuration'} // {}
0 55 $opt{'unsafe'} // 0
44 55 0 $self->{'config'} //= {}
84 304 101 $node->{'next'} // []
88 29 26 $config{'annotations'} //= {}
212 2 50 $base{'messages'} // {}
243 185980 0 $msg->{'attributes'} // {}
251 0 377 ($opt{'tensionslack'} // $opt{'tension'}) // "0.5"
0 377 ($opt{'tensionbuffer'} // $opt{'tension'}) // "0.85659008"
287 401 18474 $opt{'retries'} //= 10
288 36 0 $opt{'error'} // "scheduling retries exhausted"
301 0 0 $path{'error'} // "Retries exhausted"
326 173489 0 $res[$i][1]{'tmavg'} // 0
365 176 0 $goal{'attribute'}{$k}{'op'} // ""
369 146 0 $goal{'cycles'} // 10
394 31195 0 $schedule{'attributes'}{$k} // {}
396 0 0 $attr{'y'} // 0
397 31195 0 $attr{'avg'} // 0
398 3481 27714 $cmp{'weight'} // 1
404 0 0 $attr{'xy'} // []
458 0 16988 $opt{'tmoffset'} // 0
486 0 14169 $self->{'config'}{'messages'} // {}
487 14169 0 $mobj // {}

or 3 conditions

line l !l&&r !l&&!r condition
18 0 55 0 is_ref($ref) || $ref
37 131830 79 0 $self->{'attr'} //= "Schedule::Activity::Attributes"->new
119 143 9 3308 not defined $x or $x > $y
140 129 569 130 not defined $x or $y eq "+"
698 80 50 not defined $x or $y eq "+" or $x < $y
171 99 99 203 exists $activities{$builtNode->{$_}} || exists $finishes{$builtNode->{$_}}
251 18462 0 377 $opt{'tensionslack'} // $opt{'tension'}
18462 0 377 $opt{'tensionbuffer'} // $opt{'tension'}
263 147398 110 0 $node->nextrandom("not", $conclusion, "tm", $tm, "attr", $opt{'attr'}{'attr'}) // $node->nextrandom("tm", $tm, "attr", $opt{'attr'}{'attr'})
265 904 0 0 $node->nextrandom("not", $conclusion, "tm", $tm, "attr", $opt{'attr'}{'attr'}) // $node->nextrandom("tm", $tm, "attr", $opt{'attr'}{'attr'})
300 18462 0 377 $opt{'tensionslack'} // $opt{'tension'}
18462 0 377 $opt{'tensionbuffer'} // $opt{'tension'}
453 22 0 17138 $opt{'unsafe'} // $self->{'unsafe'}
550 9 0 0 $activities[-1][0] ||= $tm