Branch Coverage

blib/lib/JSON/Tiny/Subclassable.pm
Criterion Covered Total %
branch 58 114 50.8


line true false branch
17 4 0 unless eval { do { require Sub::Name; 'Sub::Name'->import('subname'); 1 } }
23 1 0 @_ > 1 ? :
1 4 @_ ? :
27 5 0 if @_ > 1
32 0 3 if @_ > 1
42 1 10 ref $_[0] ? :
44 11 3 if (exists $$opts{'j'})
49 0 3 if ref $d eq 'ARRAY' or ref $d eq 'HASH'
93 0 0 if $role eq 'Mojo::JSON'
104 0 5 unless $bytes
110 0 5 unless utf8::downgrade($bytes, 1)
118 0 5 unless $d_res
129 0 5 if (/\G\[/cg) { }
5 0 elsif (/\G\{/cg) { }
138 0 5 unless (/\G$WHITESPACE_RE\z/cg)
139 0 0 ref $ref eq 'ARRAY' ? :
147 0 5 if (not $res and my $e = $@)
159 1 1 if ($self->pretty)
182 2 2 if /\G$WHITESPACE_RE,/cg
185 2 0 if /\G$WHITESPACE_RE\]/cg
200 0 20 unless /\G$WHITESPACE_RE"/cg
207 0 20 unless /\G$WHITESPACE_RE:/cg
214 14 6 if /\G$WHITESPACE_RE,/cg
217 6 0 if /\G$WHITESPACE_RE\}/cg
235 0 20 unless (/\G"/cg)
236 0 0 if /\G[\x00-\x1F\\]/
242 20 0 if (index($str, '\\u') < 0)
253 0 0 if ($2) { }
260 0 0 if (($ord & 63488) == 55296)
263 0 0 unless ($ord & 64512) == 55296
267 0 0 unless $str =~ /\G\\u([Dd][C-Fc-f]..)/cg
290 0 24 if /\G"/cg
293 3 21 if /\G\[/cg
296 2 19 if /\G\{/cg
299 16 3 if /\G([-]?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?)/cg
303 1 2 if /\Gtrue/cg
306 1 1 if /\Gfalse/cg
309 1 0 if /\Gnull/cg
318 1 2 unless @{$_[0];}
320 0 2 unless exists $$self{'_indent'}
336 0 0 if (exists $$self{'_indent'})
343 0 0 defined $indent ? :
353 0 0 if (defined $indent) { }
356 0 0 unless @pairs
381 9 11 if (my $ref = ref $value)
384 3 6 if $ref eq 'ARRAY'
387 4 2 if $ref eq 'HASH'
390 0 0 $$value ? :
0 2 if $ref eq 'SCALAR'
391 1 1 $value ? :
2 0 if $ref eq 'JSON::Tiny::_Bool'
394 0 0 if (&Scalar::Util::blessed($value) and my $sub = $value->can('TO_JSON'))
400 1 10 unless defined $value
403 10 0 if B::svref_2object(\$value)->FLAGS & 12288
418 0 0 if (/\G\z/cg) { }
439 0 0 if $role eq 'Mojo::JSON::_Bool'
440 0 0 if $role =~ /^JSON::(?:PP::|XS::)?Boolean$/