Condition Coverage

lib/Data/Identifier.pm
Criterion Covered Total %
condition 74 192 38.5


and 3 conditions

line !l l&&!r l&&r condition
318 99 959 55 not ref $type and $type eq "from"
374 99 133 881 not ref $type and $type eq "ise"
381 874 0 7 not defined $type and $id eq "8be115d2-dc2f-4a98-91e1-a6e3075cbc31"
431 0 0 2 scalar @path_segments == 3 and $path_segments[0] eq ""
494 0 0 0 $type ne "ise" and $type ne "uuid"
529 41 792 6375 not $opts{'no_defaults'} and defined $self->{'id_cache'}
833 6375 0 not $opts{'no_defaults'} and defined $self->{'id_cache'} and defined $self->{'id_cache'}{'8be115d2-dc2f-4a98-91e1-a6e3075cbc31'}
538 0 0 3 defined $self->{'id_cache'} and defined $self->{'id_cache'}{'8be115d2-dc2f-4a98-91e1-a6e3075cbc31'}
549 0 224 692 not $opts{'no_defaults'} and defined $self->{'id_cache'}
224 204 488 not $opts{'no_defaults'} and defined $self->{'id_cache'} and defined $self->{'id_cache'}{'d08dc905-bbf6-4183-b219-67723c3c8374'}
569 1 1 915 not $opts{'no_defaults'} || defined $opts{'style'} and defined $self->{'id_cache'}
2 427 488 not $opts{'no_defaults'} || defined $opts{'style'} and defined $self->{'id_cache'} and defined $self->{'id_cache'}{'a8d1637d-af19-49e9-9ef8-6bc1fbcf6439'}
580 0 1 428 defined(my $uuid = $self->uuid("default", undef)) and $opts{'style'} eq "urn"
0 0 1 $enabled_oid and defined(my $oid = $self->oid("default", undef))
0 1 0 $enabled_oid and defined(my $oid = $self->oid("default", undef)) and $opts{'style'} eq "urn"
603 0 294 625 defined $self->{'id_cache'} and defined $self->{'id_cache'}{'f87a38cb-fd13-4e15-866c-e49901adbec5'}
637 6 0 122 $as eq "raw" and defined $opts{'rawtype'}
639 122 0 6 ref $as and eval { do { $as->isa(__PACKAGE__) } }
653 3 0 0 not $opts{'no_defaults'} and defined $self->{'id_cache'}
3 0 0 not $opts{'no_defaults'} and defined $self->{'id_cache'} and defined $self->{'id_cache'}{$type_uuid}
656 0 0 3 defined $self->{'id_cache'} and defined $self->{'id_cache'}{$type_uuid}
662 3 0 122 $as =~ /^[A-Z]/u || $as =~ /::/u and eval { do { $self->isa($as) } }
676 0 0 0 $as eq "Data::URIID::Result" and defined $opts{'extractor'}
0 0 0 $as eq "Data::URIID::Service" and defined $opts{'extractor'}
0 0 0 $as eq "SIRTX::Datecode" and eval { do { require SIRTX::Datecode; "SIRTX::Datecode"->VERSION(v0.03); 1 } }
0 0 0 $as eq "Data::URIID::Colour" and eval { do { require Data::URIID; require Data::URIID::Colour; "Data::URIID::Colour"->VERSION(v0.14); 1 } }
0 0 0 $as eq "Data::TagDB::Tag" and defined $opts{'db'}
0 0 0 $as eq "File::FStore::File" and defined $opts{'store'}
0 0 0 $as eq "Business::ISBN" and $self->type->eq("gtin")
733 0 0 0 defined $val and $val->is_valid
745 0 78 4 defined $e and not scalar eval { do { $e->isa(__PACKAGE__) } }
769 0 0 0 defined $e and not scalar eval { do { $e->isa(__PACKAGE__) } }
789 0 0 0 my($sa, $sb) = $self_id =~ /^([^0-9]*)([0-9]+)$/u and my($oa, $ob) = $other_id =~ /^([^0-9]*)([0-9]+)$/u
884 0 0 13 defined $displayname and length $displayname

or 2 conditions

line l !l condition
411 972 133 $well_known{'uri'} // 0
439 1105 0 $well_known_uuid // 0
80 0 $well_known{'oid'} // 0
484 0 0 $opts{'type'} // "uuid"
577 1 428 $opts{'style'} //= "urn"
862 3636 0 $self->can($type_name) || (next)
863 3342 294 $self->$f("default", undef) // (next)
868 154 755 $self->{'id_cache'}{$extra} // (next)
927 0 3 $self->{'id_cache'} //= {}

or 3 conditions

line l !l&&r !l&&!r condition
321 0 0 0 $id->isa("Data::URIID::Base") or $id->isa("Data::URIID::Colour")
0 0 0 $id->isa("Data::URIID::Base") or $id->isa("Data::URIID::Colour") or $id->isa("Data::URIID::Service")
0 0 0 $id->isa("File::FStore::File") or $id->isa("File::FStore::Adder")
0 0 0 $id->isa("File::FStore::File") or $id->isa("File::FStore::Adder") or $id->isa("File::FStore::Base")
334 0 0 0 $opts{'displayname'} //= sub { return $from->attribute("displayname", "default", undef); }
339 0 0 0 $opts{'displayname'} //= $id->displayname("default", undef, "no_defaults", 1)
343 0 0 0 $opts{'displayname'} //= sub { $from->displayname; }
428 1 1 0 defined $uuid_org_to_uuid{$ptype} or $ptype =~ /^[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/u
432 1 1 0 $uuid_org_to_uuid{$path_segments[1]} // $path_segments[1]
466 0 161 3 $self->{$key} //= $opts{$key}
569 0 1 916 $opts{'no_defaults'} || defined $opts{'style'}
591 1 0 0 $uuid_to_uriid_org{$type_uuid} // $type_uuid
621 22 0 0 $type == $well_known{'uuid'} or $type == $well_known{'oid'}
22 0 0 $type == $well_known{'uuid'} or $type == $well_known{'oid'} or $type == $well_known{'uri'}
625 0 0 0 $self->uuid(%opts) // $self->oid(%opts)
0 0 0 ($self->uuid(%opts) // $self->oid(%opts)) // $self->uri(%opts)
662 122 0 3 $as =~ /^[A-Z]/u || $as =~ /::/u
666 0 0 0 $opts{$_} //= $self->so_get($_, "default", undef)
671 0 0 0 $opts{$_} //= $so->so_get($_, "default", undef)
676 0 0 3 $as eq "uuid" or $as eq "oid"
0 0 3 $as eq "uuid" or $as eq "oid" or $as eq "uri"
0 3 0 $as eq "uuid" or $as eq "oid" or $as eq "uri" or $as eq "sid"
3 0 0 $as eq "uuid" or $as eq "oid" or $as eq "uri" or $as eq "sid" or $as eq "ise"
953 1 0 0 $class eq "registered" or $class eq ":all"