Condition Coverage

blib/lib/Types/JSONSchema.pm
Criterion Covered Total %
condition 67 87 77.0


and 3 conditions

line !l l&&!r l&&r condition
1518 404 38 26 @tc and eval { do { $got->parent->strictly_equals(&JIf()) } }
1520 2 1 23 eval { do { $next->parent->strictly_equals(&JIf()) } } and $next->type_parameter->strictly_equals($got->type_parameter)
1630 4 0 0 @primatives == 1 and $primatives[0] == &JObject()
1665 413 7 1 &is_JFalse($schema->{'additionalItems'}) and not exists $schema->{'items'}
1722 30 0 6 @primatives == 1 and $primatives[0] == &JArray()
1771 51 0 3 @primatives == 1 and $primatives[0] == &JObject()
1783 6 0 0 @primatives == 1 and $primatives[0] == &JObject()
1826 31 0 1 @primatives == 1 and $primatives[0] == &JNumber()
1887 404 0 17 is_Str($schema->{'format'}) and exists $$formats{$schema->{'format'}}
1894 30 0 1 @primatives == 1 and $primatives[0] == &JString()
1932 8 0 1 @primatives == 1 and $primatives[0] == &JArray()
1986 27 0 2 @primatives == 1 and $primatives[0] == &JObject()

or 2 conditions

line l !l condition
1654 0 17 $H{'prefixItems'} ||= []
1716 22 14 $H{'items'} || undef
17 19 $H{'prefixItems'} || undef
0 36 $H{'unevaluatedItems'} || undef
7 29 $H{'contains'} || undef
0 36 $H{'minContains'} || undef
0 36 $H{'maxContains'} || undef
1736 22 53 $H{$k} ||= []
1765 45 9 $H{'properties'} || undef
8 46 $H{'patternProperties'} || undef
9 45 $H{'additionalProperties'} || undef
0 54 $H{'unevaluatedProperties'} || undef

or 3 conditions

line l !l&&r !l&&!r condition
1596 7 2 412 is_JObject($schema->{'not'}) or &is_JBoolean($schema->{'not'})
1604 6 3 412 is_JObject($schema->{'if'}) or &is_JBoolean($schema->{'if'})
1653 9 2 393 is_JObject($schema->{'items'}) or &is_JBoolean($schema->{'items'})
1665 5 7 408 is_JObject($schema->{'additionalItems'}) or &is_JBoolean($schema->{'additionalItems'})
1680 5 2 414 is_JObject($schema->{'contains'}) or &is_JBoolean($schema->{'contains'})
1701 0 0 421 is_JObject($schema->{'unevaluatedItems'}) or &is_JBoolean($schema->{'unevaluatedItems'})
1744 5 4 412 is_JObject($schema->{'additionalProperties'}) or &is_JBoolean($schema->{'additionalProperties'})
1751 0 0 421 is_JObject($schema->{'unevaluatedProperties'}) or &is_JBoolean($schema->{'unevaluatedProperties'})
1780 4 2 415 is_JObject($schema->{'propertyNames'}) or &is_JBoolean($schema->{'propertyNames'})