Condition Coverage

blib/lib/JQ/Lite/Filters.pm
Criterion Covered Total %
condition 145 220 65.9


and 3 conditions

line !l l&&!r l&&r condition
195 0 1 6 defined $catch_expr and length $catch_expr
262 0 0 9 $rhs_ok && @$rhs_values
270 1301 0 12 defined $add_lhs and defined $add_rhs
273 0 0 10 $ok && @$values
409 10 0 4 defined $foreach->{'extract_expr'} and length $foreach->{'extract_expr'}
748 0 0 3 ref $_ eq 'ARRAY' && @$_
757 0 0 1 ref $_ eq 'ARRAY' && @$_
1306 0 0 1 ref $_ eq 'ARRAY' && @$_
1359 1 1 8 defined $min and defined $max
2 7 1 defined $min and defined $max and $min > $max
1405 0 0 5 ref $_ eq "ARRAY" and @$_
1435 0 0 17 ref $_ eq "ARRAY" and @$_
1483 2 5 0 $count == $max_count and !defined($best_index) || $index < $best_index
1591 4 2 0 defined $expr and $expr eq ""
1601 4 2 0 defined $expr and $expr eq ""
1746 0 0 6 defined $depth and &looks_like_number($depth)
2092 2 1 1 defined $_ && defined $needle
2129 2 1 2 defined $_ && defined $needle

or 2 conditions

line l !l condition
56 15 0 $2 // ""
171 14 0 $try_expr // ""
172 14 0 $catch_expr // ""
1650 5 0 (JQ::Lite::Util::_traverse($a, $key_path))[0] // ""
1651 5 0 (JQ::Lite::Util::_traverse($b, $key_path))[0] // ""

or 3 conditions

line l !l&&r !l&&!r condition
122 0 2 171 $ch eq "'" or $ch eq "\""
450 3 8 0 $truthy or @cond_results
549 1 3 31 $has_wildcard_array || !$has_comparison
552 4 1 30 $use_streaming_eval ||= $cond =~ /^\s*(match|test)\s*\(/
599 3 1 0 not ref $_ or ref $_ eq "JSON::PP::Boolean"
637 3 0 1184 $part eq "keys_unsorted" or $part eq "keys_unsorted()"
706 0 1 2 $key_path eq '' || $key_path eq '.'
850 1 0 2 $count == 0 or not @$arr
1006 0 4 1051 $part eq "transpose()" or $part eq "transpose"
1084 0 3 1033 $part eq "merge_objects()" or $part eq "merge_objects"
1114 0 1 3 $raw_path eq '' || $raw_path eq '.'
1333 0 4 996 $part eq "ceil()" or $part eq "ceil"
1340 0 5 991 $part eq "floor()" or $part eq "floor"
1347 0 6 985 $part eq "round()" or $part eq "round"
1369 0 8 967 $part eq "tostring()" or $part eq "tostring"
1376 0 10 957 $part eq "tojson()" or $part eq "tojson"
1383 0 5 952 $part eq "fromjson()" or $part eq "fromjson"
1390 0 8 944 $part eq "to_number()" or $part eq "to_number"
1396 0 1 943 $part eq "tonumber()" or $part eq "tonumber"
1477 8 10 0 $values{$key} //= $item
1478 8 10 0 $first_index{$key} //= $i
1483 5 6 7 not defined $mode_key or $count > $max_count
0 0 5 !defined($best_index) || $index < $best_index
11 0 7 not defined $mode_key or $count > $max_count or $count == $max_count and !defined($best_index) || $index < $best_index
1682 0 3 855 $part eq "arrays()" or $part eq "arrays"
1691 0 3 852 $part eq "scalars()" or $part eq "scalars"
1693 2 2 3 not ref $_ or ref $_ eq "JSON::PP::Boolean"
1708 0 4 848 $part eq "objects()" or $part eq "objects"
1717 0 5 843 $part eq "flatten()" or $part eq "flatten"
1728 0 2 841 $part eq "flatten_all()" or $part eq "flatten_all"
1766 0 9 826 $part eq "type()" or $part eq "type"
1838 2 1 804 $part eq "compact()" or $part eq "compact"
1851 0 3 801 $part eq "titlecase()" or $part eq "titlecase"
1858 0 10 791 $part eq "upper()" or $part eq "upper"
1865 0 3 788 $part eq "ascii_upcase()" or $part eq "ascii_upcase"
1872 0 3 785 $part eq "ascii_downcase()" or $part eq "ascii_downcase"
1879 0 7 778 $part eq "lower()" or $part eq "lower"
1886 0 8 770 $part eq "trim()" or $part eq "trim"
1981 0 5 666 $part eq "explode()" or $part eq "explode"
1988 0 4 662 $part eq "implode()" or $part eq "implode"
2006 11 0 639 $part eq "\@json" or $part eq "\@json()"
2013 3 0 636 $part eq "\@csv" or $part eq "\@csv()"
2020 3 0 633 $part eq "\@tsv" or $part eq "\@tsv()"
2027 6 0 627 $part eq "\@base64" or $part eq "\@base64()"
2034 7 0 620 $part eq "\@base64d" or $part eq "\@base64d()"
2041 8 0 612 $part eq "\@uri" or $part eq "\@uri()"
2080 4 0 0 not ref $_ or ref $_ eq "JSON::PP::Boolean"
2117 5 0 0 not ref $_ or ref $_ eq "JSON::PP::Boolean"
2149 1 4 553 $part eq "paths()" or $part eq "paths"
2175 0 6 544 $part eq "leaf_paths()" or $part eq "leaf_paths"
2220 1 1 9 ref $_ eq 'ARRAY' && !@$_ || ref $_ eq 'HASH' && !%$_
2229 5 0 500 $part eq "not" or $part eq "not()"