| line | % | coverage | condition |
| 1054 | 100 | | $params->{'schema'} || $params->{'members'} |
| 1055 | 100 | | $params->{'args'} || $params->{'input'} |
| 1081 | 100 | | $params->{'description'} || 'validate_strict' |
| 1084 | 25 | | $schema->{'members'} and $schema->{'description'} || $schema->{'error_msg'} |
| 1094 | 100 | | ref $args ne "HASH" and ref $args ne "ARRAY" |
| 100 | | exists $params->{'args'} and not defined $args |
| 1097 | 33 | | $error_msg || "${schema_description}: args must be a hash or array reference" |
| 1180 | 100 | | defined $value && defined $rules->{'type'} && !ref($rules->{'type'}) && lc $rules->{'type'} eq 'stringref' |
| 1188 | 100 | | $rules->{'transform'} and defined $value |
| 1195 | 75 | | defined $rules->{'type'} and not ref $rules->{'type'} and lc $rules->{'type'} eq "void" |
| 1213 | 100 | | ref $args eq "HASH" and not exists $args->{$key} |
| 100 | | ref $rules eq "HASH" and $is_optional |
| 1250 | 100 | | ref $rules eq "HASH" and ref $rules->{'type'} eq "ARRAY" |
| 1262 | 100 | | defined(my $min = $rules->{'min'} // $rules->{'minimum'}) and defined(my $max = $rules->{'max'}) |
| 100 | | $rules->{'min'} // $rules->{'minimum'} |
| 1269 | 100 | | $rules->{'memberof'} or $rules->{'enum'} or $rules->{'values'} |
| 1270 | 67 | | $rules->{'min'} // $rules->{'minimum'} |
| 1281 | 100 | | A | B | C | D | E | F | dec |
|---|
| 0 | X | X | X | X | X | 0 | | 1 | 0 | X | X | X | X | 0 | | 1 | 1 | 0 | X | X | X | 0 | | 1 | 1 | 1 | 0 | X | X | 0 | | 1 | 1 | 1 | 1 | 0 | X | 0 | | 1 | 1 | 1 | 1 | 1 | 0 | 0 | | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| ref $rule_value eq "CODE" and $rule_name ne "validate" and $rule_name ne "callback" and $rule_name ne "validator" and $rule_name ne "transform" and $rule_name ne "optional" |
| 1291 | 100 | | &Scalar::Util::blessed($rule_value) and $rule_value->can("as_string") |
| 1295 | 100 | | $rule_name eq "matches" or $rule_name eq "regex" |
| 100 | | $rule_name eq "memberof" or $rule_name eq "enum" or $rule_name eq "values" |
| 100 | | $rule_name eq "validate" or $rule_name eq "validator" |
| 100 | | $rule_name eq "min" or $rule_name eq "minimum" |
| 1298 | 100 | | $type eq "number" or $type eq "float" |
| 100 | | $type eq "number" or $type eq "float" or $type eq "num" or $type eq "double" |
| 100 | | $type eq "boolean" or $type eq "bool" |
| 100 | | $type eq "string" or $type eq "str" |
| 100 | | $type eq "integer" or $type eq "int" |
| 1302 | 25 | | ref $value eq "" or defined $value and length $value |
| 1309 | 100 | | not &Scalar::Util::looks_like_number($value) or $value - $value != 0 or $value != int $value |
| 1408 | 67 | | exists $custom_types->{$type}{'min'} or exists $custom_types->{$type}{'minimum'} |
| 1409 | 33 | | $custom_types->{$type}{'min'} // $custom_types->{$type}{'minimum'} |
| 1412 | 100 | | $type eq "string" or $type eq "str" or $type eq "stringref" |
| 100 | | $type eq "integer" or $type eq "number" or $type eq "float" |
| 1450 | 67 | | $type eq "integer" and $value == 1 |
| 100 | | $type eq "integer" and $value == 0 |
| 1478 | 75 | | $type eq "string" or $type eq "str" or $type eq "stringref" |
| 100 | | $type eq "integer" or $type eq "number" or $type eq "float" |
| 1513 | 67 | | $type eq "integer" and $value == -1 |
| 67 | | $type eq "integer" and $value == 0 |
| 1538 | 67 | | $rules->{'type'} eq "arrayref" or $rules->{'type'} eq "ArrayRef" |
| 1560 | 67 | | $rules->{'type'} eq "arrayref" or $rules->{'type'} eq "ArrayRef" |
| 1580 | 50 | | $rules->{'type'} // "" |
| 1592 | 50 | | $rules->{'type'} // "" |
| 1636 | 67 | | $rules->{'type'} eq "arrayref" or $rules->{'type'} eq "ArrayRef" |
| 1639 | 67 | | $custom_type and $custom_type->{'type'} |
| 1643 | 100 | | $custom_type and $custom_type->{'transform'} |
| 1651 | 100 | | $type eq "number" or $rule_value eq "float" |
| 67 | | $type eq "string" or $type eq "Str" |
| 1657 | 67 | | ref $member or $member =~ /\D/ |
| 1662 | 67 | | ref $member or not $member =~ /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)$/ |
| 1696 | 100 | | $value < 0 or $value > 2147483647 |
| 1704 | 67 | | $rules->{'type'} eq "arrayref" or $rules->{'type'} eq "ArrayRef" |
| 1713 | 67 | | ref $rule_value eq 'HASH' && !exists $rule_value->{'type'} |
| 1754 | 33 | | "${rule_description}: Parameter '${key}': 'validate' only supports coderef, not " . ref($rule_value) // $rule_value |
| 1826 | 67 | | not ref $validator or ref $validator ne "CODE" |
| 1919 | 75 | | ref $rules eq "HASH" and exists $rules->{'default'} and not exists $result{$key} |
| 1924 | 75 | | ref $rules eq "HASH" and $rules->{'schema'} and ref $result{$key} eq "HASH" |
| 1967 | 67 | | $rel->{'description'} || 'Cannot specify both ' . join(' and ', @present) |
| 1982 | 67 | | $rel->{'description'} || 'Must specify at least one of: ' . join(', ', @params) |
| 1999 | 33 | | $rel->{'description'} || "When $if_param is specified, $then_param is required" |
| 2015 | 67 | | $rel->{'description'} || "$param requires $requires to be specified" |
| 2031 | 100 | | _param_defined($args, $if_param) and $args->{$if_param} |
| 2052 | 67 | | $rel->{'description'} || "When $if_param is specified, $then_param must be $operator $value (got $actual)" |
| 2073 | 67 | | $rel->{'description'} || "When $if_param equals '${equals}', $then_param is required" |
| 2086 | 67 | | $rules->{'error_msg'} || join('', @default_parts) |
| 2103 | 100 | | $type eq 'integer' || $type eq 'number' || $type eq 'float' |
| 2104 | 100 | | !$is_numeric && defined $case_sensitive && !$case_sensitive |
| 2113 | 67 | | defined $entry and not defined $entry->[0] |
| 2145 | 67 | | exists $args->{$param} && defined $args->{$param} |