Condition Coverage

blib/lib/POOF/DataType.pm
Criterion Covered Total %
condition 31 65 47.6


and 3 conditions

line !l l&&!r l&&r condition
187 0 0 23 ref $args eq 'HASH' and exists $$args{'type'}
0 0 23 ref $args eq 'HASH' and exists $$args{'type'} and $$args{'type'}
304 0 0 27 exists $$definition{'null'} and defined $$definition{'null'}
323 0 24 0 exists $$definition{'type'} and not exists {array => {default => [()], null => 0, orm => 0, ptype => 'ARRAY', type => 'array'}, binary => {default => '', null => 0, orm => 0, type => 'string'}, blob => {default => undef, null => 1, orm => 0, type => 'blob'}, boolean => {default => 0, max => 1, min => 0, null => 0, orm => 0, size => 1, type => 'integer'}, char => {default => '', null => 0, orm => 0, size => 1, type => 'string'}, code => {null => 1, orm => 0, ptype => 'CODE', type => 'code'}, double => {default => '', null => 0, orm => 0, type => 'string'}, enum => {default => undef, null => 1, options => [()], orm => 0, type => 'string'}, float => {default => '0.0', null => 0, orm => 0, regex => \undef, type => 'string'}, hash => {default => {}, null => 0, orm => 0, ptype => 'HASH', type => 'hash'}, integer => {default => 0, null => 0, orm => 0, regex => \undef, type => 'integer'}, long => {default => '', null => 0, orm => 0, type => 'string'}, numeric => {default => 0, null => 0, orm => 0, regex => \undef, type => 'string'}, string => {default => '', null => 0, orm => 0, type => 'string'}}->{$$definition{'type'}}
24 0 0 exists $$definition{'type'} and not exists {array => {default => [()], null => 0, orm => 0, ptype => 'ARRAY', type => 'array'}, binary => {default => '', null => 0, orm => 0, type => 'string'}, blob => {default => undef, null => 1, orm => 0, type => 'blob'}, boolean => {default => 0, max => 1, min => 0, null => 0, orm => 0, size => 1, type => 'integer'}, char => {default => '', null => 0, orm => 0, size => 1, type => 'string'}, code => {null => 1, orm => 0, ptype => 'CODE', type => 'code'}, double => {default => '', null => 0, orm => 0, type => 'string'}, enum => {default => undef, null => 1, options => [()], orm => 0, type => 'string'}, float => {default => '0.0', null => 0, orm => 0, regex => \undef, type => 'string'}, hash => {default => {}, null => 0, orm => 0, ptype => 'HASH', type => 'hash'}, integer => {default => 0, null => 0, orm => 0, regex => \undef, type => 'integer'}, long => {default => '', null => 0, orm => 0, type => 'string'}, numeric => {default => 0, null => 0, orm => 0, regex => \undef, type => 'string'}, string => {default => '', null => 0, orm => 0, type => 'string'}}->{$$definition{'type'}} and defined $dat
24 0 0 exists $$definition{'type'} and not exists {array => {default => [()], null => 0, orm => 0, ptype => 'ARRAY', type => 'array'}, binary => {default => '', null => 0, orm => 0, type => 'string'}, blob => {default => undef, null => 1, orm => 0, type => 'blob'}, boolean => {default => 0, max => 1, min => 0, null => 0, orm => 0, size => 1, type => 'integer'}, char => {default => '', null => 0, orm => 0, size => 1, type => 'string'}, code => {null => 1, orm => 0, ptype => 'CODE', type => 'code'}, double => {default => '', null => 0, orm => 0, type => 'string'}, enum => {default => undef, null => 1, options => [()], orm => 0, type => 'string'}, float => {default => '0.0', null => 0, orm => 0, regex => \undef, type => 'string'}, hash => {default => {}, null => 0, orm => 0, ptype => 'HASH', type => 'hash'}, integer => {default => 0, null => 0, orm => 0, regex => \undef, type => 'integer'}, long => {default => '', null => 0, orm => 0, type => 'string'}, numeric => {default => 0, null => 0, orm => 0, regex => \undef, type => 'string'}, string => {default => '', null => 0, orm => 0, type => 'string'}}->{$$definition{'type'}} and defined $dat and not $obj->_Relationship(ref $dat, $$definition{'type'}) =~ /^(?:self|child)$/
24 0 0 exists $$definition{'ptype'} and ref $dat ne $$definition{'ptype'}
348 0 21 3 defined $dat and $$definition{'type'} eq 'enum'
367 9 0 12 exists $$definition{'regex'} and defined $$definition{'regex'}
382 17 0 2 exists $$definition{'size'} and defined $$definition{'size'}
396 19 0 0 exists $$definition{'minsize'} and defined $$definition{'minsize'}
411 19 0 0 exists $$definition{'maxsize'} and defined $$definition{'maxsize'}
426 16 0 3 exists $$definition{'min'} and defined $$definition{'min'}
441 17 0 2 exists $$definition{'max'} and defined $$definition{'max'}
460 0 1 416 (caller 0)[0] eq ref $_[0] and (caller 1)[0] eq ref $_[0]

or 2 conditions

line l !l condition
384 2 0 $$definition{'size'} || 0
398 0 0 $$definition{'minsize'} || 0
413 0 0 $$definition{'maxsize'} || 0
428 1 2 $$definition{'min'} || 0
443 2 0 $$definition{'max'} || 0
467 5 20 @{[keys %{$$errors{$obj->_objectInstanceID};}];} || 0
473 2 0 $$errors{$obj->_objectInstanceID} || {}

or 3 conditions

line l !l&&r !l&&!r condition
296 25 2 0 $property eq 'value' || $property eq 'default'
323 0 0 24 exists $$definition{'type'} and not exists {array => {default => [()], null => 0, orm => 0, ptype => 'ARRAY', type => 'array'}, binary => {default => '', null => 0, orm => 0, type => 'string'}, blob => {default => undef, null => 1, orm => 0, type => 'blob'}, boolean => {default => 0, max => 1, min => 0, null => 0, orm => 0, size => 1, type => 'integer'}, char => {default => '', null => 0, orm => 0, size => 1, type => 'string'}, code => {null => 1, orm => 0, ptype => 'CODE', type => 'code'}, double => {default => '', null => 0, orm => 0, type => 'string'}, enum => {default => undef, null => 1, options => [()], orm => 0, type => 'string'}, float => {default => '0.0', null => 0, orm => 0, regex => \undef, type => 'string'}, hash => {default => {}, null => 0, orm => 0, ptype => 'HASH', type => 'hash'}, integer => {default => 0, null => 0, orm => 0, regex => \undef, type => 'integer'}, long => {default => '', null => 0, orm => 0, type => 'string'}, numeric => {default => 0, null => 0, orm => 0, regex => \undef, type => 'string'}, string => {default => '', null => 0, orm => 0, type => 'string'}}->{$$definition{'type'}} and defined $dat and not $obj->_Relationship(ref $dat, $$definition{'type'}) =~ /^(?:self|child)$/ or exists $$definition{'ptype'} and ref $dat ne $$definition{'ptype'}