Branch Coverage

blib/lib/DateTime/Set.pm
Criterion Covered Total %
branch 124 166 74.7


line true false branch
29 12 7940 unless defined $_[0]
31 7851 89 if ref $_[0]
33 79 10 if $_[0] == 9**9**9
35 10 0 if $_[0] == -9**9**9
51 13 61 unless $dt
52 0 61 unless $dt_arg
53 2 59 if ($dt_arg->can('time_zone_long_name') and not $dt_arg->time_zone_long_name eq 'floating')
69 0 0 if ref $min
78 0 1 unless ref $callback eq 'CODE'
84 0 2 unless ref $_
98 0 1 unless ref $callback eq 'CODE'
104 0 2 unless ref $_
107 1 1 if $result
127 74 0 if ref $min
131 14 4 if (ref $min)
136 8 10 if (ref $max)
153 43 0 if ref $min
157 6 2 if (ref $min)
162 2 6 if (ref $max)
183 2 0 if ref $min
202 14 23 if keys %args
207 0 2 unless $param{'next'} or $param{'previous'}
209 30 7 if (not $param{'previous'}) { }
226 2 35 if (not $param{'next'}) { }
246 33 4 if $max->is_infinite
247 33 4 if $min->is_infinite
251 16 21 if $param{'span'}
283 0 113 unless UNIVERSAL::can($_, 'utc_rd_values')
321 202 1433 if $value->is_infinite
324 28 1405 unless (defined $freq)
336 0 1433 if ($previous >= $value)
350 1433 12 if $previous >= $value
364 2 2 if $value->is_infinite
367 1 1 unless (defined $freq)
379 0 2 if ($next <= $value)
393 2 0 if $next >= $value
403 10 30 if %args
405 15 25 if $span
414 12 1355 unless ref $self->{'set'}
416 39 1316 if (@_)
418 20 19 if ($self->{'set'}->_is_recurrence) { }
433 1313 3 if defined $head
441 15 111 unless ref $self->{'set'}
443 35 76 if (@_)
445 13 22 if ($self->{'set'}->_is_recurrence) { }
460 66 10 if defined $head
468 0 29 unless ref $self->{'set'}
470 9 20 if ($self->{'set'}->_is_recurrence)
476 0 20 if $self->contains($_[0])
486 0 0 unless defined $dt1
487 0 0 unless defined $dt2
490 0 0 if $dt2 - $delta >= $_[0]
497 0 4 unless ref $self->{'set'}
502 1 3 if %args
505 1 3 if $span
507 1 3 if $set->{'set'}->is_null
513 1 2 if $set->max->is_infinite or $set->min->is_infinite
518 0 2 if ($span)
520 0 0 if $next1 and $next1 > $next
524 0 2 if ($span)
526 0 0 if $last1 and $last1 < $last
529 3 0 if not $span or $span->contains($next)
540 0 65 if $set2->can('as_set')
542 1 64 unless $set2->can('union')
551 0 10 if $set2->can('as_set')
553 9 1 unless ($set2->can('union'))
555 3 6 if ($set1->{'set'}->_is_recurrence)
559 2 2 if $set1->current($_) == $_
571 0 30 if $set2->can('as_set')
573 29 1 unless ($set2->can('union'))
575 3 26 if ($set1->{'set'}->_is_recurrence)
579 2 1 unless $set1->current($_) == $_
592 0 4 if $set2->can('as_set')
594 0 4 unless $set2->can('union')
597 0 4 if $set2->isa('DateTime::Span') or $set2->isa('DateTime::SpanSet')
606 2 0 if (defined $set2) { }
608 0 2 if $set2->can('as_set')
610 2 0 unless $set2->can('union')
644 0 9 unless ref $self->{'set'}
649 1 8 if %args
652 1 8 if $span
655 5 4 unless $set->{'set'}->is_too_complex
658 3 1 if $set->max->is_infinite or $set->min->is_infinite