validator refactor progress

This commit is contained in:
2026-03-03 00:13:37 -05:00
parent e14f53e7d9
commit 3898c43742
81 changed files with 6331 additions and 7934 deletions

View File

@ -1,14 +1,18 @@
[
{
"description": "anyOf",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
"database": {
"schemas": [
{
"type": "integer"
},
{
"minimum": 2
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
{
"type": "integer"
},
{
"minimum": 2
}
]
}
]
},
@ -37,15 +41,19 @@
},
{
"description": "anyOf with base schema",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "string",
"anyOf": [
"database": {
"schemas": [
{
"maxLength": 2
},
{
"minLength": 4
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "string",
"anyOf": [
{
"maxLength": 2
},
{
"minLength": 4
}
]
}
]
},
@ -69,11 +77,15 @@
},
{
"description": "anyOf with boolean schemas, all true",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
true,
true
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
true,
true
]
}
]
},
"tests": [
@ -86,11 +98,15 @@
},
{
"description": "anyOf with boolean schemas, some true",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
true,
false
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
true,
false
]
}
]
},
"tests": [
@ -103,11 +119,15 @@
},
{
"description": "anyOf with boolean schemas, all false",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
false,
false
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
false,
false
]
}
]
},
"tests": [
@ -120,27 +140,31 @@
},
{
"description": "anyOf complex types",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
"database": {
"schemas": [
{
"properties": {
"bar": {
"type": "integer"
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
{
"properties": {
"bar": {
"type": "integer"
}
},
"required": [
"bar"
]
},
{
"properties": {
"foo": {
"type": "string"
}
},
"required": [
"foo"
]
}
},
"required": [
"bar"
]
},
{
"properties": {
"foo": {
"type": "string"
}
},
"required": [
"foo"
]
}
]
@ -180,13 +204,17 @@
},
{
"description": "anyOf with one empty schema",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
"database": {
"schemas": [
{
"type": "number"
},
{}
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
{
"type": "number"
},
{}
]
}
]
},
"tests": [
@ -204,13 +232,17 @@
},
{
"description": "nested anyOf, to check validation semantics",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
{
"type": "null"
"anyOf": [
{
"type": "null"
}
]
}
]
}
@ -231,17 +263,21 @@
},
{
"description": "extensible: true allows extra properties in anyOf",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
"database": {
"schemas": [
{
"type": "integer"
},
{
"minimum": 2
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
{
"type": "integer"
},
{
"minimum": 2
}
],
"extensible": true
}
],
"extensible": true
]
},
"tests": [
{
@ -255,22 +291,26 @@
},
{
"description": "strict by default with anyOf properties",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
"database": {
"schemas": [
{
"properties": {
"foo": {
"const": 1
"$schema": "https://json-schema.org/draft/2020-12/schema",
"anyOf": [
{
"properties": {
"foo": {
"const": 1
}
}
},
{
"properties": {
"bar": {
"const": 2
}
}
}
}
},
{
"properties": {
"bar": {
"const": 2
}
}
]
}
]
},