Condition Coverage

blib/lib/VSO.pm
Criterion Covered Total %
condition 37 60 61.6


and 3 conditions

line !l l&&!r l&&r condition
43 0 22 0 $args{'extends'} and not ref $args{'extends'}
97 0 55 6 $$props{'required'} and not defined $value
55 2 4 $$props{'required'} and not defined $value and not $$props{'default'}
52 3 2 $$props{'default'} and not defined $value
117 52 0 0 $$props{'where'} and defined $value
146 0 0 0 $$props{'required'} and defined $original_value
154 25 2 14 $$props{'coerce'} && exists $$_coercions{$wanted_type}{$current_type}
344 18 0 0 not defined $$s{$name} and $$props{'default'}

or 2 conditions

line l !l condition
42 0 22 $args{'extends'} ||= []
72 16 17 $$meta{'field_names'} ||= [sort(keys %{$$meta{'fields'};})]
203 3 0 eval { do { ': ' . $$props{'isa'}->message($s) } } || ''
250 0 2 $$meta{'triggers'}{"before.$name"} ||= []
278 0 2 $$meta{'triggers'}{"after.$name"} ||= []
304 26 3 $properties{'isa'} ||= 'Any'
489 180 9 $args{'as'} ||= ''
518 182 0 $args{'where'} || sub { 1; }
179 3 $args{'message'} || sub { "Must be a valid '${name}'"; }

or 3 conditions

line l !l&&r !l&&!r condition
46 0 22 0 $$_meta{$caller} ||= _new_meta()
154 4 17 41 $wanted_type eq 'Any' or $current_type->isa($wanted_type)
245 2 4 0 exists $$meta{'fields'}{$name} or $class->can($name)
273 2 4 0 exists $$meta{'fields'}{$name} or $class->can($name)
473 4 0 0 defined @{"${class}::ISA";} or $INC{$file}
475 0 4 0 $INC{$file} ||= $file