Branch Coverage

blib/lib/ACME/2026.pm
Criterion Covered Total %
branch 69 204 33.8


line true false branch
203 1 0 defined $opts{'title'} ? :
0 1 $opts{'autosave'} ? :
211 0 1 unless defined $path and length $path
215 0 1 if $@
220 0 1 if exists $opts{'title'}
221 0 0 $opts{'autosave'} ? :
0 1 if exists $opts{'autosave'}
231 0 1 unless defined $path and length $path
247 2 0 if (@args % 2 == 1) { }
255 0 2 unless defined $title and length $title
267 2 0 defined $opts{'list'} ? :
1 1 defined $opts{'priority'} ? :
273 0 2 if (defined $opts{'note'}) { }
288 0 0 unless $item
294 0 0 unless exists $attrs{$key}
299 0 0 if (exists $attrs{'tags'} or exists $attrs{'tag'})
304 0 0 unless $changed
319 0 0 unless defined $items->[$idx]{'id'} and $items->[$idx]{'id'} == $id
338 0 0 unless defined $note and length $note
341 0 0 unless $item
368 0 3 unless $plan->{'items'}
370 2 1 if (defined $filters{'status'})
375 0 3 if (defined $filters{'list'})
376 0 0 if defined $_->{'list'}
380 0 3 if defined $filters{'tag'}
381 0 3 if (defined $filters{'tags'})
382 0 0 if (ref $filters{'tags'} eq 'ARRAY') { }
389 0 3 if (@tags)
391 0 0 unless $_->{'tags'}
394 0 0 unless defined $tag and length $tag
395 0 0 if ($item_tags{$tag})
404 0 3 if (defined $filters{'priority'})
405 0 0 if defined $_->{'priority'}
408 0 3 if (defined $filters{'min_priority'})
409 0 0 if defined $_->{'priority'}
412 0 3 if (defined $filters{'max_priority'})
413 0 0 if defined $_->{'priority'}
416 0 3 if (defined $filters{'due_before'})
417 0 0 if defined $_->{'due'}
420 0 3 if (defined $filters{'due_after'})
421 0 0 if defined $_->{'due'}
424 0 3 if (defined $filters{'sort'})
444 2 0 if exists $stats{$item->{'status'}}
448 1 0 $stats{'total'} ? :
460 0 1 unless $item
464 1 0 if (defined $opts{'note'}) { }
475 0 1 if @_ == 1 and ref $_[0] eq "HASH"
483 0 2 unless defined $plan->{'title'} and length $plan->{'title'}
484 0 2 unless ref $plan->{'items'} eq "ARRAY"
485 0 2 $plan->{'autosave'} ? :
489 0 4 unless ref $item eq "HASH"
490 4 0 if defined $item->{'id'} and $item->{'id'} > $max_id
497 0 4 unless ref $item eq "HASH"
498 0 4 unless (defined $item->{'id'})
504 4 0 defined $item->{'priority'} ? :
505 4 0 defined $item->{'list'} ? :
506 0 4 unless defined $item->{'created_at'}
507 0 4 unless defined $item->{'updated_at'}
510 0 2 if $next_id > $plan->{'next_id'}
511 0 2 unless defined $plan->{'created_at'}
512 0 2 unless defined $plan->{'updated_at'}
519 0 7 if not defined $status or $status eq ""
520 4 0 if $status eq "todo" or $status eq "done" or $status eq "skipped"
528 6 0 if (defined $tags)
529 6 0 if (ref $tags eq 'ARRAY') { }
536 0 6 if defined $tag
538 6 0 if defined $_
544 0 4 unless defined $notes
545 4 0 if (ref $notes eq "ARRAY")
548 2 0 if (ref $note eq 'HASH') { }
561 0 12 unless ref $plan eq "HASH"
566 0 3 unless defined $id
567 0 3 unless $plan->{'items'}
568 0 3 unless defined $item->{'id'}
569 3 0 if $item->{'id'} == $id
576 0 1 unless defined $note and length $note
590 3 0 unless $plan->{'autosave'}
596 0 0 unless defined $sort and length $sort
600 0 0 if ($sort eq "due")
602 0 0 $desc ? :
0 0 defined $ACME::2026::a->{'due'} ? :
603 0 0 $desc ? :
0 0 defined $ACME::2026::b->{'due'} ? :
605 0 0 $desc ? :
609 0 0 if ($sort eq "priority")
611 0 0 defined $ACME::2026::a->{'priority'} ? :
612 0 0 defined $ACME::2026::b->{'priority'} ? :
614 0 0 $desc ? :
618 0 0 if ($sort eq "created")
621 0 0 $desc ? :
625 0 0 if ($sort eq "updated")
628 0 0 $desc ? :
632 0 0 if ($sort eq "title")
635 0 0 $desc ? :
646 3 0 unless @unknown
656 0 1 unless open my $fh, "<", $path
664 0 1 unless print {$fh;} $content
665 0 1 unless close $fh
666 0 1 unless rename $tmp, $path
671 0 1 unless defined $path and length $path
672 1 0 if ($path =~ m([/\\]))
674 1 0 length $path ? :