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 592 226 12 @$entries and not &blessed($entries->[0])
95 310 1 1 $searching and not $group->effective_enable_searching
96 310 1 0 $auto_type and not $group->effective_enable_auto_type
144 919 281 7 @$groups and not &blessed($groups->[0])
237 152 0 0 $searching and not $group->effective_enable_searching
238 152 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 88 $_[0]{'custom_icon_uuid'} //= undef
32 3 82 $_[0]{'enable_auto_type'} //= undef
33 4 82 $_[0]{'enable_searching'} //= undef
34 0 80 $_[0]{'last_top_visible_entry'} //= undef
36 2 236 $_[0]{'previous_parent_group'} //= undef
39 588 80 $_[0]{'times'} //= scalar &$default($_[0])
41 6 80 $_[0]->times->{'last_modification_time'} //= scalar &$default($_[0])
42 0 80 $_[0]->times->{'creation_time'} //= scalar &$default($_[0])
43 6 80 $_[0]->times->{'last_access_time'} //= scalar &$default($_[0])
44 0 80 $_[0]->times->{'expiry_time'} //= scalar &$default($_[0])
47 0 80 $_[0]->times->{'location_changed'} //= scalar &$default($_[0])
72 749 81 $self->{'entries'} //= []
115 5 24 $entry // [%args]
119 29 0 $self->{'entries'} ||= []
133 1 3 $args{'signal'} // 1
143 1127 80 $self->{'groups'} //= []
156 0 444 $args{'inclusive'} // 1
157 10 434 $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 224 0 6 $_[0]{'name'} //= $default
26 131 0 18 $_[0]{'notes'} //= $default
27 150 0 87 $_[0]{'tags'} //= $default
28 24 79 0 $_[0]{'icon_id'} //= $default
30 130 0 18 $_[0]{'is_expanded'} //= $default
31 4 0 80 $_[0]{'default_auto_type_sequence'} //= $default
45 4 0 80 $_[0]->times->{'expires'} //= $default
46 0 0 80 $_[0]->times->{'usage_count'} //= $default
58 1 80 192 @_ or not defined $self->{'uuid'}
61 1 80 0 delete $args{'uuid'} // generate_uuid()
113 20 9 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, @_)