Branch Coverage

blib/lib/JSON/Validator/Util.pm
Criterion Covered Total %
branch 87 92 94.5


line true false branch
28 14 4 $class ? :
29 4 14 unless (@classes)
32 10 12 unless $class =~ /$skip_re/
40 5 17 unless my $text = Mojo::Loader::data_section($class, $file)
42 17 0 if $params->{'encoding'}
47 0 1 unless $params->{'confess'}
49 3 0 @$_ == 1 ? :
56 317 1000 if $ref eq 'HASH'
57 127 873 if $ref and not $blessed
58 18 855 unless defined $_[0]
59 41 3 if $blessed and "$_[0]" eq '1' || !"$_[0]"
61 193 621 if (is_type($_[0], 'NUM'))
62 50 143 unless $_[1]
91 102 if grep {($_->{'type'} // '') eq 'integer';} @{[] unless $_[1];}
72 21498 90477 if ($type eq 'BOOL')
78 1976 88501 if ($type eq 'NUM')
86 10994 77507 &blessed($_[0]) ? :
91 3 0 length $p ? :
9 3 ref $p ? :
92 3 9 if @$p and defined $p->[0] and not length $p->[0]
120 141 1996 if $_[0]{'type'}
121 16 1980 if $_[0]{'additionalProperties'}
122 19 1961 if $_[0]{'patternProperties'}
123 103 1858 if $_[0]{'properties'}
124 1 1857 if $_[0]{'propertyNames'}
125 2 1855 if $_[0]{'required'}
128 8 1847 if defined $_[0]{'maxProperties'} or defined $_[0]{'minProperties'}
129 2 1845 if $_[0]{'additionalItems'}
130 16 1829 if $_[0]{'items'}
131 13 1816 if $_[0]{'uniqueItems'}
134 16 1800 if defined $_[0]{'maxItems'} or defined $_[0]{'minItems'}
135 40 1760 if $_[0]{'pattern'}
138 29 1731 if defined $_[0]{'maxLength'} or defined $_[0]{'minLength'}
139 12 1719 if $_[0]{'multipleOf'}
142 33 1686 if defined $_[0]{'maximum'} or defined $_[0]{'minimum'}
143 17 1669 if exists $_[0]{'const'}
154 37 273 unless defined $_[1]
155 254 19 if $_[0] eq data_type($_[1], [{'type', $_[0]}])
165 9 35 unless (defined $p)
171 2 0 ref $data eq 'HASH' ? :
7 2 ref $data eq 'ARRAY' ? :
178 4 31 if $cb
180 26 9 if (ref $data eq 'HASH' and exists $data->{$p}) { }
2 7 elsif (ref $data eq 'ARRAY' and $p =~ /^\d+$/ and @$data > $p) { }
190 3 25 if ref $data eq 'HASH' and $tied = tied %$data
193 2 15 if $cb