Condition Coverage

blib/lib/File/KDBX/Group.pm
Criterion Covered Total %
condition 78 122 63.9


and 3 conditions

line !l l&&!r l&&r condition
73 604 227 12 @$entries and not &blessed($entries->[0])
95 315 1 1 $searching and not $group->effective_enable_searching
96 315 1 0 $auto_type and not $group->effective_enable_auto_type
144 938 281 7 @$groups and not &blessed($groups->[0])
237 154 0 0 $searching and not $group->effective_enable_searching
238 154 0 0 $auto_type and not $group->effective_enable_auto_type
266 0 4 3 $blessed and $object->isa("File::KDBX::Group")
267 0 0 4 $blessed and $object->isa("File::KDBX::Entry")
308 1 1 3 @{$self->groups;} == 0 && @{$self->entries;} == 0
323 0 3 2 $group && &Hash::Util::FieldHash::id($group) == &Hash::Util::FieldHash::id($self)
331 0 0 0 $group && &Hash::Util::FieldHash::id($group) == &Hash::Util::FieldHash::id($self)
339 0 0 0 $group && &Hash::Util::FieldHash::id($group) == &Hash::Util::FieldHash::id($self)
347 0 0 0 $group && &Hash::Util::FieldHash::id($group) == &Hash::Util::FieldHash::id($self)

or 2 conditions

line l !l condition
29 0 91 $_[0]{'custom_icon_uuid'} //= undef
32 3 85 $_[0]{'enable_auto_type'} //= undef
33 4 85 $_[0]{'enable_searching'} //= undef
34 0 83 $_[0]{'last_top_visible_entry'} //= undef
36 2 242 $_[0]{'previous_parent_group'} //= undef
39 609 83 $_[0]{'times'} //= scalar &$default($_[0])
41 6 83 $_[0]->times->{'last_modification_time'} //= scalar &$default($_[0])
42 0 83 $_[0]->times->{'creation_time'} //= scalar &$default($_[0])
43 6 83 $_[0]->times->{'last_access_time'} //= scalar &$default($_[0])
44 0 83 $_[0]->times->{'expiry_time'} //= scalar &$default($_[0])
47 0 83 $_[0]->times->{'location_changed'} //= scalar &$default($_[0])
72 759 84 $self->{'entries'} //= []
115 5 25 $entry // [%args]
119 30 0 $self->{'entries'} ||= []
133 1 3 $args{'signal'} // 1
143 1143 83 $self->{'groups'} //= []
156 0 454 $args{'inclusive'} // 1
157 10 444 $args{'algorithm'} || 'ids'
197 1 18 $group // [%args]
201 19 0 $self->{'groups'} ||= []
215 0 3 $args{'signal'} // 1
367 0 0 scalar @{[] unless $_[0]->lineage;} || -1

or 3 conditions

line l !l&&r !l&&!r condition
25 230 0 6 $_[0]{'name'} //= $default
26 137 0 18 $_[0]{'notes'} //= $default
27 153 0 90 $_[0]{'tags'} //= $default
28 24 82 0 $_[0]{'icon_id'} //= $default
30 136 0 18 $_[0]{'is_expanded'} //= $default
31 4 0 83 $_[0]{'default_auto_type_sequence'} //= $default
45 4 0 83 $_[0]->times->{'expires'} //= $default
46 0 0 83 $_[0]->times->{'usage_count'} //= $default
58 1 83 192 @_ or not defined $self->{'uuid'}
61 1 83 0 delete $args{'uuid'} // generate_uuid()
113 20 10 0 delete $args{'kdbx'} // eval { do { $self->kdbx } }
195 15 4 0 delete $args{'kdbx'} // eval { do { $self->kdbx } }
268 0 0 0 $self->remove_group($object, @_) || $self->remove_entry($object, @_)