Branch Coverage

blib/lib/JSON/Schema/Draft201909/Vocabulary/Core.pm
Criterion Covered Total %
branch 41 54 75.9


line true false branch
34 0 439 unless assert_keyword_type($state, $schema, 'string')
37 8 431 if $uri eq '' or $uri eq '#'
38 2 429 if length $uri->fragment
42 225 204 $uri->is_abs ? :
56 863 0 if (my $canonical_uri = $state->{'document'}->path_to_canonical_uri($state->{'document_path'} . $state->{'schema_path'}))
71 0 27 unless assert_keyword_type($state, $schema, 'string')
75 3 24 if length $state->{'schema_path'}
78 0 24 if $schema->{'$schema'} ne 'https://json-schema.org/draft/2019-09/schema'
92 0 67 unless assert_keyword_type($state, $schema, 'string')
94 2 65 unless $schema->{'$anchor'} =~ /^[A-Za-z][A-Za-z0-9_:.-]*$/u
111 0 132 unless assert_keyword_type($state, $schema, 'boolean')
113 30 102 unless $schema->{'$recursiveAnchor'}
118 3 99 if length $state->{'schema_path'}
124 508 82 if not $schema->{'$recursiveAnchor'} or exists $state->{'recursive_anchor_uri'}
134 0 612 unless assert_keyword_type($state, $schema, 'string')
135 12 600 if not assert_uri_reference($state, $schema)
143 6 912 unless defined $subschema
159 0 157 unless assert_keyword_type($state, $schema, 'string')
160 0 157 if not assert_uri_reference($state, $schema)
168 0 118 unless defined $subschema
170 78 24 if (is_type('boolean', $subschema->{'$recursiveAnchor'}) and $subschema->{'$recursiveAnchor'})
174 0 78 unless defined $subschema
191 0 36 unless assert_keyword_type($state, $schema, 'object')
195 3 58 unless is_type('boolean', $schema->{'$vocabulary'}{$property})
201 1 35 if length $state->{'schema_path'}
204 1 34 if length $state->{'traversed_schema_path'} . $state->{'schema_path'}
214 0 63 if not assert_keyword_type($state, $schema, 'string')