File Coverage

blib/lib/JSV/Keyword/Draft4/AllOf.pm
Criterion Covered Total %
statement 18 18 100.0
branch n/a
condition n/a
subroutine 5 5 100.0
pod 0 1 0.0
total 23 24 95.8


line stmt bran cond sub pod time code
1             package JSV::Keyword::Draft4::AllOf;
2              
3 47     47   21822 use strict;
  47         52  
  47         1101  
4 47     47   139 use warnings;
  47         52  
  47         976  
5 47     47   131 use parent qw(JSV::Keyword);
  47         47  
  47         172  
6              
7 47     47   1955 use JSV::Keyword qw(:constants);
  47         48  
  47         9878  
8              
9             sub instance_type() { INSTANCE_TYPE_ANY(); }
10             sub keyword() { "allOf" }
11             sub keyword_priority() { 10; }
12              
13             sub validate {
14 43     43 0 48 my ($class, $context, $schema, $instance) = @_;
15              
16 43         101 my $all_of = $class->keyword_value($schema);
17              
18 43         111 for (my $i = 0, my $l = scalar(@$all_of); $i < $l; $i++) {
19 86         90 my $sub_schema = $all_of->[$i];
20             local $context->{current_schema_pointer} =
21 86         272 $context->{current_schema_pointer} . "/" . $class->keyword . "/" . $i;
22 86         163 $context->validate($sub_schema, $instance);
23             }
24             }
25              
26             1;