Run Info
Dialect http://json-schema.org/draft-04/schema#
Ran
Summary
implementation cases (148) tests (577)
errors failed skipped errors
valijson c++ 12 6 0 26
json-schema clojure 12 191 0 25
jsonschema go v5.1.1 0 0 0 0
ajv javascript 8.12.0 19 8 0 66
hyperjump-jsv javascript 1.1.2 0 0 9 0
jsonschema lua 0.9.9-0 15 16 0 56
fastjsonschema python 2.16.2 12 11 0 25
jsonschema python 4.17.3 7 0 0 15
json_schemer ruby 0.2.24 6 3 0 13
jsonschema rust 0 5 0 0
vscode-json-language-service typescript 5.1.3 0 33 0 0
total 83 273 9 226

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
additional items match schema
additional items do not match schema

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
all items match schema

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
empty array
fewer number of items present (1)
fewer number of items present (2)
equal number of items present
additional items are not permitted

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
items defaults to empty schema so everything is valid
ignores non-arrays

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
only the first item is validated

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
items defined in allOf are not examined

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
items defined in allOf are not examined

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
valid items
wrong type of second item

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
allows null elements

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
no additional properties is valid
an additional property is invalid
ignores arrays
ignores strings
ignores other non-objects
patternProperties are not additional properties

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
matching the pattern is valid
not matching the pattern is invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
no additional properties is valid
an additional valid property is valid
an additional invalid property is invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
an additional valid property is valid
an additional invalid property is invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
additional properties are allowed

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
properties defined in allOf are not examined

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
allows null values

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
allOf
mismatch second
mismatch first
wrong type

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
valid
mismatch base schema
mismatch first allOf
mismatch second allOf
mismatch both

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
valid
mismatch one

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
any data is valid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
any data is valid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
number is valid
string is invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
number is valid
string is invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
null is valid
anything non-null is invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
allOf: false, anyOf: false, oneOf: false
allOf: false, anyOf: false, oneOf: true
allOf: false, anyOf: true, oneOf: false
allOf: false, anyOf: true, oneOf: true
allOf: true, anyOf: false, oneOf: false
allOf: true, anyOf: false, oneOf: true
allOf: true, anyOf: true, oneOf: false
allOf: true, anyOf: true, oneOf: true

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
first anyOf valid
second anyOf valid
both anyOf valid
neither anyOf valid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
mismatch base schema
one anyOf valid
both anyOf invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
first anyOf valid (complex)
second anyOf valid (complex)
both anyOf valid (complex)
neither anyOf valid (complex)

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
string is valid
number is valid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
null is valid
anything non-null is invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
valid when property is specified
still valid when the invalid default is used

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
valid when property is specified
still valid when the invalid default is used

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
an explicit property value is checked against maximum (passing)
an explicit property value is checked against maximum (failing)
missing properties are not filled in with the default

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
valid definition schema
invalid definition schema

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
neither
nondependant
with dependency
missing dependency
ignores arrays
ignores strings
ignores other non-objects

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
neither
nondependants
with dependencies
missing dependency
missing other dependency
missing both dependencies

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
valid
no dependency
wrong type
wrong type other
wrong type both

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
valid object 1
valid object 2
valid object 3
invalid object 1
invalid object 2
invalid object 3
invalid object 4

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
one of the enum is valid
something else is invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
one of the enum is valid
something else is invalid
objects are deep compared
valid object matches
extra properties in object is invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
null is valid
number is valid
something else is invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
both properties are valid
wrong foo value
wrong bar value
missing optional property is valid
missing required property is invalid
missing all properties is invalid

test valijson c++ json-schema clojure jsonschema go ajv javascript hyperjump-jsv javascript jsonschema lua fastjsonschema python jsonschema python json_schemer ruby jsonschema rust vscode-json-language-service typescript
member 1 is valid
member 2 is valid
another string is invalid