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,12 +1,16 @@
[
{
"description": "simple enum validation",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
1,
2,
3
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
1,
2,
3
]
}
]
},
"tests": [
@ -24,20 +28,24 @@
},
{
"description": "heterogeneous enum validation",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
6,
"foo",
[],
true,
"database": {
"schemas": [
{
"foo": 12
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
6,
"foo",
[],
true,
{
"foo": 12
}
],
"properties": {
"foo": {}
}
}
],
"properties": {
"foo": {}
}
]
},
"tests": [
{
@ -76,11 +84,15 @@
},
{
"description": "heterogeneous enum-with-null validation",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
6,
null
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
6,
null
]
}
]
},
"tests": [
@ -103,23 +115,27 @@
},
{
"description": "enums in properties",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"foo": {
"enum": [
"foo"
]
},
"bar": {
"enum": [
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"foo": {
"enum": [
"foo"
]
},
"bar": {
"enum": [
"bar"
]
}
},
"required": [
"bar"
]
}
},
"required": [
"bar"
]
},
"tests": [
@ -170,11 +186,15 @@
},
{
"description": "enum with escaped characters",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
"foo\nbar",
"foo\rbar"
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
"foo\nbar",
"foo\rbar"
]
}
]
},
"tests": [
@ -197,10 +217,14 @@
},
{
"description": "enum with false does not match 0",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
false
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
false
]
}
]
},
"tests": [
@ -223,12 +247,16 @@
},
{
"description": "enum with [false] does not match [0]",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
[
false
]
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
[
false
]
]
}
]
},
"tests": [
@ -257,10 +285,14 @@
},
{
"description": "enum with true does not match 1",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
true
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
true
]
}
]
},
"tests": [
@ -283,12 +315,16 @@
},
{
"description": "enum with [true] does not match [1]",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
[
true
]
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
[
true
]
]
}
]
},
"tests": [
@ -317,10 +353,14 @@
},
{
"description": "enum with 0 does not match false",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
0
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
0
]
}
]
},
"tests": [
@ -343,12 +383,16 @@
},
{
"description": "enum with [0] does not match [false]",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
[
0
]
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
[
0
]
]
}
]
},
"tests": [
@ -377,10 +421,14 @@
},
{
"description": "enum with 1 does not match true",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
1
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
1
]
}
]
},
"tests": [
@ -403,12 +451,16 @@
},
{
"description": "enum with [1] does not match [true]",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
[
1
]
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
[
1
]
]
}
]
},
"tests": [
@ -437,10 +489,14 @@
},
{
"description": "nul characters in strings",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
"hello\u0000there"
"database": {
"schemas": [
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
"hello\u0000there"
]
}
]
},
"tests": [
@ -458,14 +514,18 @@
},
{
"description": "extensible: true allows extra properties in enum object match",
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
"database": {
"schemas": [
{
"foo": 1
"$schema": "https://json-schema.org/draft/2020-12/schema",
"enum": [
{
"foo": 1
}
],
"extensible": true
}
],
"extensible": true
]
},
"tests": [
{