json-schema-utils 0.9.2__tar.gz → 0.9.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/.gitignore +1 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/BACKLOG.md +20 -3
- json_schema_utils-0.9.4/JSTS.md +429 -0
- {json_schema_utils-0.9.2/json_schema_utils.egg-info → json_schema_utils-0.9.4}/PKG-INFO +10 -7
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/README.md +9 -6
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4/json_schema_utils.egg-info}/PKG-INFO +10 -7
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/json_schema_utils.egg-info/SOURCES.txt +3 -1
- json_schema_utils-0.9.4/jsts_status.sh +113 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/jsutils/convert.py +184 -22
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/jsutils/inline.py +13 -50
- json_schema_utils-0.9.4/jsutils/resolver.py +79 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/jsutils/schemas.py +7 -30
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/jsutils/scripts.py +102 -66
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/jsutils/stats.py +83 -8
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/jsutils/utils.py +7 -1
- json_schema_utils-0.9.4/jsutils/vocab.py +206 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/pyproject.toml +1 -1
- json_schema_utils-0.9.2/JSTS.md +0 -297
- json_schema_utils-0.9.2/jsts_status.sh +0 -72
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/CONVERT.md +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/LICENSE +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/MANIFEST.in +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/Makefile +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/json_schema_utils.egg-info/dependency_links.txt +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/json_schema_utils.egg-info/entry_points.txt +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/json_schema_utils.egg-info/requires.txt +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/json_schema_utils.egg-info/top_level.txt +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/jsutils/__init__.py +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/jsutils/recurse.py +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/jsutils/restruct.py +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/jsutils/simplify.py +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/jsutils/types.py +0 -0
- {json_schema_utils-0.9.2 → json_schema_utils-0.9.4}/setup.cfg +0 -0
|
@@ -2,7 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
## JSU schema compilation with JMC backend
|
|
4
4
|
|
|
5
|
-
- [x]
|
|
5
|
+
- [x] reduce verbosity about `$vocabulary`
|
|
6
|
+
- [ ] format: uri or uri-reference (RFC3986), uri-template (RFC6570)
|
|
7
|
+
- [ ] format: iri or iri-reference (RFC3987)
|
|
8
|
+
- [ ] format: regex see [Section 6.4](https://datatracker.ietf.org/doc/html/draft-bhutton-json-schema-01#name-regular-expressions) for restrictions
|
|
9
|
+
- [ ] format: email (RFC5321), idn-email (RFC6531)
|
|
10
|
+
- [ ] format: hostname (RFC1123) with punycode (RFC5890), idn-hostname (add RFC5890)
|
|
11
|
+
- [ ] format rely on extensions (color, rel jsonpt…) [wip]
|
|
6
12
|
- [ ] convert merge `allOf` before proceeding when possible
|
|
7
13
|
- [ ] simpler remove `tests/string_03.simpler.json` redundant `$ref` on merge
|
|
8
14
|
- [ ] improve `unevaluatedItems` support (wip)
|
|
@@ -14,8 +20,6 @@
|
|
|
14
20
|
- [ ] move typing out to simplify the generated code
|
|
15
21
|
- [ ] get 100% on _draft2019-09_
|
|
16
22
|
- [ ] get 100% on _draft2020-12_
|
|
17
|
-
- [ ] add `.in` support with constraints
|
|
18
|
-
- [ ] tests with all languages, not just Python
|
|
19
23
|
- [ ] list compiler current limitations
|
|
20
24
|
- [ ] run some optional tests, eg _format_
|
|
21
25
|
- [ ] put typing result in "$type" instead of "type" to help with fixing?
|
|
@@ -44,3 +48,16 @@
|
|
|
44
48
|
- [x] improve support for `unevaluatedProperties` on common use cases
|
|
45
49
|
- [x] show default values on `--help`
|
|
46
50
|
- [x] simpler possibly remove all-types lists
|
|
51
|
+
- [x] add `--runtime` option to show runtime directory
|
|
52
|
+
- [x] tests with more languages: bowtie with C, JS, java, perl
|
|
53
|
+
- [x] convert handle `not` by switching to `oneOf`
|
|
54
|
+
- [x] convert fix missing escaping on string constants
|
|
55
|
+
- [x] fix unintentional override of jmc options on forwarding
|
|
56
|
+
- [x] refactor resolver stuff to reuse it for vocabularies
|
|
57
|
+
- [x] support for $vocabulary by removing disactivated keywords
|
|
58
|
+
- [x] make test runner report failures with status
|
|
59
|
+
- [x] add `--format` to test runner
|
|
60
|
+
- [x] compiler: set format default depending on vocabularies
|
|
61
|
+
- [x] fix regex `[a|A]`… to `[aA]` to possibly `/a/i`
|
|
62
|
+
- [x] fix regex with useless or missing parentheses
|
|
63
|
+
- [x] stats: detect regex fixes `^foo|bla$`, `[x|X]`…
|
|
@@ -0,0 +1,429 @@
|
|
|
1
|
+
# JSON Schema Test Suite Report
|
|
2
|
+
|
|
3
|
+
Versions:
|
|
4
|
+
|
|
5
|
+
- JSTS: `e819f329268130e0ed5bbc87b071c83d8e02a68a`
|
|
6
|
+
- JSU: `0.9.3 (backend jmc 2.0b42)` (Python backend)
|
|
7
|
+
|
|
8
|
+
Note about `format` with the Python backend:
|
|
9
|
+
|
|
10
|
+
- still searching for a good _hostname_ validator.
|
|
11
|
+
- checking for _emacscript regex_ intricacies will only ever work with JavaScript.
|
|
12
|
+
- draft3 allows time without a timezone, whereas later drafts do not
|
|
13
|
+
|
|
14
|
+
## Results for _draft2020-12_
|
|
15
|
+
|
|
16
|
+
Main test suite:
|
|
17
|
+
|
|
18
|
+
- `additionalProperties.json`: errors=0 cases=9/9 (100.0%) tests=21/21 (100.0%, 0 fails)
|
|
19
|
+
- `allOf.json`: errors=0 cases=12/12 (100.0%) tests=30/30 (100.0%, 0 fails)
|
|
20
|
+
- `anchor.json`: errors=0 cases=3/4 (75.0%) tests=7/8 (87.5%, 1 fails)
|
|
21
|
+
- `anyOf.json`: errors=0 cases=8/8 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
22
|
+
- `boolean_schema.json`: errors=0 cases=2/2 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
23
|
+
- `const.json`: errors=0 cases=17/17 (100.0%) tests=54/54 (100.0%, 0 fails)
|
|
24
|
+
- `contains.json`: errors=0 cases=7/7 (100.0%) tests=21/21 (100.0%, 0 fails)
|
|
25
|
+
- `content.json`: errors=0 cases=4/4 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
26
|
+
- `default.json`: errors=0 cases=3/3 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
27
|
+
- `defs.json`: errors=0 cases=0/1 (0.0%) tests=1/2 (50.0%, 1 fails)
|
|
28
|
+
- `dependentRequired.json`: errors=0 cases=4/4 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
29
|
+
- `dependentSchemas.json`: errors=0 cases=4/4 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
30
|
+
- `dynamicRef.json`: errors=0 cases=7/21 (33.3%) tests=26/44 (59.1%, 18 fails)
|
|
31
|
+
- `enum.json`: errors=0 cases=15/15 (100.0%) tests=51/51 (100.0%, 0 fails)
|
|
32
|
+
- `exclusiveMaximum.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
33
|
+
- `exclusiveMinimum.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
34
|
+
- `format.json`: errors=0 cases=19/19 (100.0%) tests=133/133 (100.0%, 0 fails)
|
|
35
|
+
- `if-then-else.json`: errors=0 cases=12/12 (100.0%) tests=30/30 (100.0%, 0 fails)
|
|
36
|
+
- `infinite-loop-detection.json`: errors=0 cases=1/1 (100.0%) tests=2/2 (100.0%, 0 fails)
|
|
37
|
+
- `items.json`: errors=0 cases=10/10 (100.0%) tests=29/29 (100.0%, 0 fails)
|
|
38
|
+
- `maxContains.json`: errors=0 cases=5/5 (100.0%) tests=14/14 (100.0%, 0 fails)
|
|
39
|
+
- `maximum.json`: errors=0 cases=2/2 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
40
|
+
- `maxItems.json`: errors=0 cases=2/2 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
41
|
+
- `maxLength.json`: errors=0 cases=2/2 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
42
|
+
- `maxProperties.json`: errors=0 cases=3/3 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
43
|
+
- `minContains.json`: errors=0 cases=8/8 (100.0%) tests=28/28 (100.0%, 0 fails)
|
|
44
|
+
- `minimum.json`: errors=0 cases=2/2 (100.0%) tests=11/11 (100.0%, 0 fails)
|
|
45
|
+
- `minItems.json`: errors=0 cases=2/2 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
46
|
+
- `minLength.json`: errors=0 cases=2/2 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
47
|
+
- `minProperties.json`: errors=0 cases=2/2 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
48
|
+
- `multipleOf.json`: errors=0 cases=5/5 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
49
|
+
- `not.json`: errors=0 cases=9/9 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
50
|
+
- `oneOf.json`: errors=0 cases=11/11 (100.0%) tests=27/27 (100.0%, 0 fails)
|
|
51
|
+
- `pattern.json`: errors=0 cases=2/3 (66.7%) tests=11/12 (91.7%, 1 fails)
|
|
52
|
+
- `patternProperties.json`: errors=0 cases=6/6 (100.0%) tests=25/25 (100.0%, 0 fails)
|
|
53
|
+
- `prefixItems.json`: errors=0 cases=4/4 (100.0%) tests=11/11 (100.0%, 0 fails)
|
|
54
|
+
- `properties.json`: errors=0 cases=6/6 (100.0%) tests=28/28 (100.0%, 0 fails)
|
|
55
|
+
- `propertyNames.json`: errors=0 cases=6/6 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
56
|
+
- `ref.json`: errors=0 cases=32/36 (88.9%) tests=75/79 (94.9%, 4 fails)
|
|
57
|
+
- `refRemote.json`: errors=0 cases=14/15 (93.3%) tests=30/31 (96.8%, 1 fails)
|
|
58
|
+
- `required.json`: errors=0 cases=5/5 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
59
|
+
- `type.json`: errors=0 cases=11/11 (100.0%) tests=80/80 (100.0%, 0 fails)
|
|
60
|
+
- `unevaluatedItems.json`: errors=0 cases=16/29 (55.2%) tests=53/71 (74.6%, 18 fails)
|
|
61
|
+
- `unevaluatedProperties.json`: errors=0 cases=34/42 (81.0%) tests=115/125 (92.0%, 10 fails)
|
|
62
|
+
- `uniqueItems.json`: errors=0 cases=6/6 (100.0%) tests=69/69 (100.0%, 0 fails)
|
|
63
|
+
- `vocabulary.json`: errors=0 cases=2/2 (100.0%) tests=5/5 (100.0%, 0 fails)
|
|
64
|
+
- summary: files=46 errors=0 cases=337/381 (88.5%) tests=1235/1290 (95.7%, 55 fails)
|
|
65
|
+
|
|
66
|
+
Format tests:
|
|
67
|
+
|
|
68
|
+
- `format/date.json`: errors=0 cases=1/1 (100.0%) tests=48/48 (100.0%, 0 fails)
|
|
69
|
+
- `format/date-time.json`: errors=0 cases=1/1 (100.0%) tests=29/29 (100.0%, 0 fails)
|
|
70
|
+
- `format/duration.json`: errors=0 cases=1/1 (100.0%) tests=42/42 (100.0%, 0 fails)
|
|
71
|
+
- `format/ecmascript-regex.json`: errors=0 cases=0/1 (0.0%) tests=0/1 (0.0%, 1 fails)
|
|
72
|
+
- `format/email.json`: errors=0 cases=0/1 (0.0%) tests=23/27 (85.2%, 4 fails)
|
|
73
|
+
- `format/hostname.json`: errors=1 cases=0/2 (0.0%) tests=37/61 (60.7%, 24 fails)
|
|
74
|
+
- `format/idn-email.json`: errors=0 cases=0/1 (0.0%) tests=8/9 (88.9%, 1 fails)
|
|
75
|
+
- `format/idn-hostname.json`: errors=1 cases=0/2 (0.0%) tests=53/77 (68.8%, 24 fails)
|
|
76
|
+
- `format/ipv4.json`: errors=0 cases=1/1 (100.0%) tests=33/33 (100.0%, 0 fails)
|
|
77
|
+
- `format/ipv6.json`: errors=0 cases=1/1 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
78
|
+
- `format/iri.json`: errors=0 cases=0/1 (0.0%) tests=13/15 (86.7%, 2 fails)
|
|
79
|
+
- `format/iri-reference.json`: errors=0 cases=0/1 (0.0%) tests=8/13 (61.5%, 5 fails)
|
|
80
|
+
- `format/json-pointer.json`: errors=0 cases=1/1 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
81
|
+
- `format/regex.json`: errors=0 cases=1/1 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
82
|
+
- `format/relative-json-pointer.json`: errors=0 cases=1/1 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
83
|
+
- `format/time.json`: errors=0 cases=1/1 (100.0%) tests=47/47 (100.0%, 0 fails)
|
|
84
|
+
- `format/unknown.json`: errors=0 cases=1/1 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
85
|
+
- `format/uri.json`: errors=0 cases=0/1 (0.0%) tests=33/44 (75.0%, 11 fails)
|
|
86
|
+
- `format/uri-reference.json`: errors=0 cases=0/1 (0.0%) tests=11/17 (64.7%, 6 fails)
|
|
87
|
+
- `format/uri-template.json`: errors=0 cases=0/1 (0.0%) tests=8/10 (80.0%, 2 fails)
|
|
88
|
+
- `format/uuid.json`: errors=0 cases=1/1 (100.0%) tests=22/22 (100.0%, 0 fails)
|
|
89
|
+
- summary: files=21 errors=2 cases=11/23 (47.8%) tests=528/608 (86.8%, 80 fails)
|
|
90
|
+
|
|
91
|
+
## Results for _draft2019-09_
|
|
92
|
+
|
|
93
|
+
Main test suite:
|
|
94
|
+
|
|
95
|
+
- `additionalItems.json`: errors=0 cases=10/10 (100.0%) tests=19/19 (100.0%, 0 fails)
|
|
96
|
+
- `additionalProperties.json`: errors=0 cases=9/9 (100.0%) tests=21/21 (100.0%, 0 fails)
|
|
97
|
+
- `allOf.json`: errors=0 cases=12/12 (100.0%) tests=30/30 (100.0%, 0 fails)
|
|
98
|
+
- `anchor.json`: errors=0 cases=3/4 (75.0%) tests=7/8 (87.5%, 1 fails)
|
|
99
|
+
- `anyOf.json`: errors=0 cases=8/8 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
100
|
+
- `boolean_schema.json`: errors=0 cases=2/2 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
101
|
+
- `const.json`: errors=0 cases=17/17 (100.0%) tests=54/54 (100.0%, 0 fails)
|
|
102
|
+
- `contains.json`: errors=0 cases=7/7 (100.0%) tests=21/21 (100.0%, 0 fails)
|
|
103
|
+
- `content.json`: errors=0 cases=4/4 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
104
|
+
- `default.json`: errors=0 cases=3/3 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
105
|
+
- `defs.json`: errors=0 cases=0/1 (0.0%) tests=1/2 (50.0%, 1 fails)
|
|
106
|
+
- `dependentRequired.json`: errors=0 cases=4/4 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
107
|
+
- `dependentSchemas.json`: errors=0 cases=4/4 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
108
|
+
- `enum.json`: errors=0 cases=15/15 (100.0%) tests=51/51 (100.0%, 0 fails)
|
|
109
|
+
- `exclusiveMaximum.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
110
|
+
- `exclusiveMinimum.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
111
|
+
- `format.json`: errors=0 cases=19/19 (100.0%) tests=114/114 (100.0%, 0 fails)
|
|
112
|
+
- `if-then-else.json`: errors=0 cases=12/12 (100.0%) tests=30/30 (100.0%, 0 fails)
|
|
113
|
+
- `infinite-loop-detection.json`: errors=0 cases=1/1 (100.0%) tests=2/2 (100.0%, 0 fails)
|
|
114
|
+
- `items.json`: errors=0 cases=9/9 (100.0%) tests=28/28 (100.0%, 0 fails)
|
|
115
|
+
- `maxContains.json`: errors=0 cases=5/5 (100.0%) tests=14/14 (100.0%, 0 fails)
|
|
116
|
+
- `maximum.json`: errors=0 cases=2/2 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
117
|
+
- `maxItems.json`: errors=0 cases=2/2 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
118
|
+
- `maxLength.json`: errors=0 cases=2/2 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
119
|
+
- `maxProperties.json`: errors=0 cases=3/3 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
120
|
+
- `minContains.json`: errors=0 cases=8/8 (100.0%) tests=28/28 (100.0%, 0 fails)
|
|
121
|
+
- `minimum.json`: errors=0 cases=2/2 (100.0%) tests=11/11 (100.0%, 0 fails)
|
|
122
|
+
- `minItems.json`: errors=0 cases=2/2 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
123
|
+
- `minLength.json`: errors=0 cases=2/2 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
124
|
+
- `minProperties.json`: errors=0 cases=2/2 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
125
|
+
- `multipleOf.json`: errors=0 cases=5/5 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
126
|
+
- `not.json`: errors=0 cases=9/9 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
127
|
+
- `oneOf.json`: errors=0 cases=11/11 (100.0%) tests=27/27 (100.0%, 0 fails)
|
|
128
|
+
- `pattern.json`: errors=0 cases=2/2 (100.0%) tests=9/9 (100.0%, 0 fails)
|
|
129
|
+
- `patternProperties.json`: errors=0 cases=5/5 (100.0%) tests=23/23 (100.0%, 0 fails)
|
|
130
|
+
- `properties.json`: errors=0 cases=6/6 (100.0%) tests=28/28 (100.0%, 0 fails)
|
|
131
|
+
- `propertyNames.json`: errors=0 cases=6/6 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
132
|
+
- `recursiveRef.json`: errors=0 cases=1/9 (11.1%) tests=23/34 (67.6%, 11 fails)
|
|
133
|
+
- `ref.json`: errors=0 cases=31/37 (83.8%) tests=75/81 (92.6%, 6 fails)
|
|
134
|
+
- `refRemote.json`: errors=0 cases=14/15 (93.3%) tests=30/31 (96.8%, 1 fails)
|
|
135
|
+
- `required.json`: errors=0 cases=5/5 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
136
|
+
- `type.json`: errors=0 cases=11/11 (100.0%) tests=80/80 (100.0%, 0 fails)
|
|
137
|
+
- `unevaluatedItems.json`: errors=0 cases=17/26 (65.4%) tests=45/56 (80.4%, 11 fails)
|
|
138
|
+
- `unevaluatedProperties.json`: errors=0 cases=30/42 (71.4%) tests=111/125 (88.8%, 14 fails)
|
|
139
|
+
- `uniqueItems.json`: errors=0 cases=6/6 (100.0%) tests=69/69 (100.0%, 0 fails)
|
|
140
|
+
- `vocabulary.json`: errors=0 cases=2/2 (100.0%) tests=5/5 (100.0%, 0 fails)
|
|
141
|
+
- summary: files=46 errors=0 cases=332/370 (89.7%) tests=1205/1250 (96.4%, 45 fails)
|
|
142
|
+
|
|
143
|
+
Format tests:
|
|
144
|
+
|
|
145
|
+
- `format/date.json`: errors=0 cases=1/1 (100.0%) tests=48/48 (100.0%, 0 fails)
|
|
146
|
+
- `format/date-time.json`: errors=0 cases=1/1 (100.0%) tests=29/29 (100.0%, 0 fails)
|
|
147
|
+
- `format/duration.json`: errors=0 cases=1/1 (100.0%) tests=42/42 (100.0%, 0 fails)
|
|
148
|
+
- `format/email.json`: errors=0 cases=1/1 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
149
|
+
- `format/hostname.json`: errors=1 cases=0/2 (0.0%) tests=37/61 (60.7%, 24 fails)
|
|
150
|
+
- `format/idn-email.json`: errors=0 cases=0/1 (0.0%) tests=8/9 (88.9%, 1 fails)
|
|
151
|
+
- `format/idn-hostname.json`: errors=1 cases=0/2 (0.0%) tests=53/77 (68.8%, 24 fails)
|
|
152
|
+
- `format/ipv4.json`: errors=0 cases=1/1 (100.0%) tests=33/33 (100.0%, 0 fails)
|
|
153
|
+
- `format/ipv6.json`: errors=0 cases=1/1 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
154
|
+
- `format/iri.json`: errors=0 cases=0/1 (0.0%) tests=13/15 (86.7%, 2 fails)
|
|
155
|
+
- `format/iri-reference.json`: errors=0 cases=0/1 (0.0%) tests=8/13 (61.5%, 5 fails)
|
|
156
|
+
- `format/json-pointer.json`: errors=0 cases=1/1 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
157
|
+
- `format/regex.json`: errors=0 cases=1/1 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
158
|
+
- `format/relative-json-pointer.json`: errors=0 cases=1/1 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
159
|
+
- `format/time.json`: errors=0 cases=1/1 (100.0%) tests=47/47 (100.0%, 0 fails)
|
|
160
|
+
- `format/unknown.json`: errors=0 cases=1/1 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
161
|
+
- `format/uri.json`: errors=0 cases=0/1 (0.0%) tests=33/44 (75.0%, 11 fails)
|
|
162
|
+
- `format/uri-reference.json`: errors=0 cases=0/1 (0.0%) tests=11/17 (64.7%, 6 fails)
|
|
163
|
+
- `format/uri-template.json`: errors=0 cases=0/1 (0.0%) tests=8/10 (80.0%, 2 fails)
|
|
164
|
+
- `format/uuid.json`: errors=0 cases=1/1 (100.0%) tests=22/22 (100.0%, 0 fails)
|
|
165
|
+
- summary: files=20 errors=2 cases=12/22 (54.5%) tests=525/600 (87.5%, 75 fails)
|
|
166
|
+
|
|
167
|
+
## Results for _draft7_
|
|
168
|
+
|
|
169
|
+
Main test suite:
|
|
170
|
+
|
|
171
|
+
- `additionalItems.json`: errors=0 cases=10/10 (100.0%) tests=19/19 (100.0%, 0 fails)
|
|
172
|
+
- `additionalProperties.json`: errors=0 cases=7/7 (100.0%) tests=16/16 (100.0%, 0 fails)
|
|
173
|
+
- `allOf.json`: errors=0 cases=12/12 (100.0%) tests=30/30 (100.0%, 0 fails)
|
|
174
|
+
- `anyOf.json`: errors=0 cases=8/8 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
175
|
+
- `boolean_schema.json`: errors=0 cases=2/2 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
176
|
+
- `const.json`: errors=0 cases=17/17 (100.0%) tests=54/54 (100.0%, 0 fails)
|
|
177
|
+
- `contains.json`: errors=0 cases=7/7 (100.0%) tests=21/21 (100.0%, 0 fails)
|
|
178
|
+
- `default.json`: errors=0 cases=3/3 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
179
|
+
- `definitions.json`: errors=0 cases=1/1 (100.0%) tests=2/2 (100.0%, 0 fails)
|
|
180
|
+
- `dependencies.json`: errors=0 cases=7/7 (100.0%) tests=36/36 (100.0%, 0 fails)
|
|
181
|
+
- `enum.json`: errors=0 cases=14/14 (100.0%) tests=45/45 (100.0%, 0 fails)
|
|
182
|
+
- `exclusiveMaximum.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
183
|
+
- `exclusiveMinimum.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
184
|
+
- `format.json`: errors=0 cases=17/17 (100.0%) tests=102/102 (100.0%, 0 fails)
|
|
185
|
+
- `if-then-else.json`: errors=0 cases=12/12 (100.0%) tests=30/30 (100.0%, 0 fails)
|
|
186
|
+
- `infinite-loop-detection.json`: errors=0 cases=1/1 (100.0%) tests=2/2 (100.0%, 0 fails)
|
|
187
|
+
- `items.json`: errors=0 cases=9/9 (100.0%) tests=28/28 (100.0%, 0 fails)
|
|
188
|
+
- `maximum.json`: errors=0 cases=2/2 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
189
|
+
- `maxItems.json`: errors=0 cases=2/2 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
190
|
+
- `maxLength.json`: errors=0 cases=2/2 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
191
|
+
- `maxProperties.json`: errors=0 cases=3/3 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
192
|
+
- `minimum.json`: errors=0 cases=2/2 (100.0%) tests=11/11 (100.0%, 0 fails)
|
|
193
|
+
- `minItems.json`: errors=0 cases=2/2 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
194
|
+
- `minLength.json`: errors=0 cases=2/2 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
195
|
+
- `minProperties.json`: errors=0 cases=2/2 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
196
|
+
- `multipleOf.json`: errors=0 cases=5/5 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
197
|
+
- `not.json`: errors=0 cases=8/8 (100.0%) tests=38/38 (100.0%, 0 fails)
|
|
198
|
+
- `oneOf.json`: errors=0 cases=11/11 (100.0%) tests=27/27 (100.0%, 0 fails)
|
|
199
|
+
- `pattern.json`: errors=0 cases=2/2 (100.0%) tests=9/9 (100.0%, 0 fails)
|
|
200
|
+
- `patternProperties.json`: errors=0 cases=5/5 (100.0%) tests=23/23 (100.0%, 0 fails)
|
|
201
|
+
- `properties.json`: errors=0 cases=6/6 (100.0%) tests=28/28 (100.0%, 0 fails)
|
|
202
|
+
- `propertyNames.json`: errors=0 cases=6/6 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
203
|
+
- `ref.json`: errors=0 cases=35/35 (100.0%) tests=78/78 (100.0%, 0 fails)
|
|
204
|
+
- `refRemote.json`: errors=0 cases=11/11 (100.0%) tests=23/23 (100.0%, 0 fails)
|
|
205
|
+
- `required.json`: errors=0 cases=5/5 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
206
|
+
- `type.json`: errors=0 cases=11/11 (100.0%) tests=80/80 (100.0%, 0 fails)
|
|
207
|
+
- `uniqueItems.json`: errors=0 cases=6/6 (100.0%) tests=69/69 (100.0%, 0 fails)
|
|
208
|
+
- summary: files=37 errors=0 cases=257/257 (100.0%) tests=922/922 (100.0%, 0 fails)
|
|
209
|
+
|
|
210
|
+
Format tests:
|
|
211
|
+
|
|
212
|
+
- `format/date.json`: errors=0 cases=1/1 (100.0%) tests=48/48 (100.0%, 0 fails)
|
|
213
|
+
- `format/date-time.json`: errors=0 cases=1/1 (100.0%) tests=29/29 (100.0%, 0 fails)
|
|
214
|
+
- `format/email.json`: errors=0 cases=1/1 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
215
|
+
- `format/hostname.json`: errors=1 cases=0/2 (0.0%) tests=37/61 (60.7%, 24 fails)
|
|
216
|
+
- `format/idn-email.json`: errors=0 cases=0/1 (0.0%) tests=8/9 (88.9%, 1 fails)
|
|
217
|
+
- `format/idn-hostname.json`: errors=1 cases=0/2 (0.0%) tests=52/76 (68.4%, 24 fails)
|
|
218
|
+
- `format/ipv4.json`: errors=0 cases=1/1 (100.0%) tests=33/33 (100.0%, 0 fails)
|
|
219
|
+
- `format/ipv6.json`: errors=0 cases=1/1 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
220
|
+
- `format/iri.json`: errors=0 cases=0/1 (0.0%) tests=13/15 (86.7%, 2 fails)
|
|
221
|
+
- `format/iri-reference.json`: errors=0 cases=0/1 (0.0%) tests=8/13 (61.5%, 5 fails)
|
|
222
|
+
- `format/json-pointer.json`: errors=0 cases=1/1 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
223
|
+
- `format/regex.json`: errors=0 cases=1/1 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
224
|
+
- `format/relative-json-pointer.json`: errors=0 cases=1/1 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
225
|
+
- `format/time.json`: errors=0 cases=1/1 (100.0%) tests=47/47 (100.0%, 0 fails)
|
|
226
|
+
- `format/unknown.json`: errors=0 cases=1/1 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
227
|
+
- `format/uri.json`: errors=0 cases=0/1 (0.0%) tests=33/44 (75.0%, 11 fails)
|
|
228
|
+
- `format/uri-reference.json`: errors=0 cases=0/1 (0.0%) tests=11/17 (64.7%, 6 fails)
|
|
229
|
+
- `format/uri-template.json`: errors=0 cases=0/1 (0.0%) tests=8/10 (80.0%, 2 fails)
|
|
230
|
+
- summary: files=18 errors=2 cases=10/20 (50.0%) tests=460/535 (86.0%, 75 fails)
|
|
231
|
+
|
|
232
|
+
## Results for _draft6_
|
|
233
|
+
|
|
234
|
+
Main test suite:
|
|
235
|
+
|
|
236
|
+
- `additionalItems.json`: errors=0 cases=10/10 (100.0%) tests=19/19 (100.0%, 0 fails)
|
|
237
|
+
- `additionalProperties.json`: errors=0 cases=7/7 (100.0%) tests=16/16 (100.0%, 0 fails)
|
|
238
|
+
- `allOf.json`: errors=0 cases=12/12 (100.0%) tests=30/30 (100.0%, 0 fails)
|
|
239
|
+
- `anyOf.json`: errors=0 cases=8/8 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
240
|
+
- `boolean_schema.json`: errors=0 cases=2/2 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
241
|
+
- `const.json`: errors=0 cases=17/17 (100.0%) tests=54/54 (100.0%, 0 fails)
|
|
242
|
+
- `contains.json`: errors=0 cases=6/6 (100.0%) tests=19/19 (100.0%, 0 fails)
|
|
243
|
+
- `default.json`: errors=0 cases=3/3 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
244
|
+
- `definitions.json`: errors=0 cases=1/1 (100.0%) tests=2/2 (100.0%, 0 fails)
|
|
245
|
+
- `dependencies.json`: errors=0 cases=7/7 (100.0%) tests=36/36 (100.0%, 0 fails)
|
|
246
|
+
- `enum.json`: errors=0 cases=14/14 (100.0%) tests=45/45 (100.0%, 0 fails)
|
|
247
|
+
- `exclusiveMaximum.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
248
|
+
- `exclusiveMinimum.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
249
|
+
- `format.json`: errors=0 cases=9/9 (100.0%) tests=54/54 (100.0%, 0 fails)
|
|
250
|
+
- `infinite-loop-detection.json`: errors=0 cases=1/1 (100.0%) tests=2/2 (100.0%, 0 fails)
|
|
251
|
+
- `items.json`: errors=0 cases=9/9 (100.0%) tests=28/28 (100.0%, 0 fails)
|
|
252
|
+
- `maximum.json`: errors=0 cases=2/2 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
253
|
+
- `maxItems.json`: errors=0 cases=2/2 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
254
|
+
- `maxLength.json`: errors=0 cases=2/2 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
255
|
+
- `maxProperties.json`: errors=0 cases=3/3 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
256
|
+
- `minimum.json`: errors=0 cases=2/2 (100.0%) tests=11/11 (100.0%, 0 fails)
|
|
257
|
+
- `minItems.json`: errors=0 cases=2/2 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
258
|
+
- `minLength.json`: errors=0 cases=2/2 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
259
|
+
- `minProperties.json`: errors=0 cases=2/2 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
260
|
+
- `multipleOf.json`: errors=0 cases=5/5 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
261
|
+
- `not.json`: errors=0 cases=8/8 (100.0%) tests=38/38 (100.0%, 0 fails)
|
|
262
|
+
- `oneOf.json`: errors=0 cases=11/11 (100.0%) tests=27/27 (100.0%, 0 fails)
|
|
263
|
+
- `pattern.json`: errors=0 cases=2/2 (100.0%) tests=9/9 (100.0%, 0 fails)
|
|
264
|
+
- `patternProperties.json`: errors=0 cases=5/5 (100.0%) tests=23/23 (100.0%, 0 fails)
|
|
265
|
+
- `properties.json`: errors=0 cases=6/6 (100.0%) tests=28/28 (100.0%, 0 fails)
|
|
266
|
+
- `propertyNames.json`: errors=0 cases=6/6 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
267
|
+
- `ref.json`: errors=0 cases=31/31 (100.0%) tests=70/70 (100.0%, 0 fails)
|
|
268
|
+
- `refRemote.json`: errors=0 cases=11/11 (100.0%) tests=23/23 (100.0%, 0 fails)
|
|
269
|
+
- `required.json`: errors=0 cases=5/5 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
270
|
+
- `type.json`: errors=0 cases=11/11 (100.0%) tests=80/80 (100.0%, 0 fails)
|
|
271
|
+
- `uniqueItems.json`: errors=0 cases=6/6 (100.0%) tests=69/69 (100.0%, 0 fails)
|
|
272
|
+
- summary: files=36 errors=0 cases=232/232 (100.0%) tests=834/834 (100.0%, 0 fails)
|
|
273
|
+
|
|
274
|
+
Format tests:
|
|
275
|
+
|
|
276
|
+
- `format/date-time.json`: errors=0 cases=1/1 (100.0%) tests=29/29 (100.0%, 0 fails)
|
|
277
|
+
- `format/email.json`: errors=0 cases=1/1 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
278
|
+
- `format/hostname.json`: errors=1 cases=0/1 (0.0%) tests=27/28 (96.4%, 1 fails)
|
|
279
|
+
- `format/ipv4.json`: errors=0 cases=1/1 (100.0%) tests=33/33 (100.0%, 0 fails)
|
|
280
|
+
- `format/ipv6.json`: errors=0 cases=1/1 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
281
|
+
- `format/json-pointer.json`: errors=0 cases=1/1 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
282
|
+
- `format/unknown.json`: errors=0 cases=1/1 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
283
|
+
- `format/uri.json`: errors=0 cases=0/1 (0.0%) tests=33/44 (75.0%, 11 fails)
|
|
284
|
+
- `format/uri-reference.json`: errors=0 cases=0/1 (0.0%) tests=11/17 (64.7%, 6 fails)
|
|
285
|
+
- `format/uri-template.json`: errors=0 cases=0/1 (0.0%) tests=8/10 (80.0%, 2 fails)
|
|
286
|
+
- summary: files=10 errors=1 cases=6/10 (60.0%) tests=248/268 (92.5%, 20 fails)
|
|
287
|
+
|
|
288
|
+
## Results for _draft4_
|
|
289
|
+
|
|
290
|
+
Main test suite:
|
|
291
|
+
|
|
292
|
+
- `additionalItems.json`: errors=0 cases=9/9 (100.0%) tests=17/17 (100.0%, 0 fails)
|
|
293
|
+
- `additionalProperties.json`: errors=0 cases=7/7 (100.0%) tests=16/16 (100.0%, 0 fails)
|
|
294
|
+
- `allOf.json`: errors=0 cases=9/9 (100.0%) tests=27/27 (100.0%, 0 fails)
|
|
295
|
+
- `anyOf.json`: errors=0 cases=5/5 (100.0%) tests=15/15 (100.0%, 0 fails)
|
|
296
|
+
- `default.json`: errors=0 cases=3/3 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
297
|
+
- `definitions.json`: errors=0 cases=1/1 (100.0%) tests=2/2 (100.0%, 0 fails)
|
|
298
|
+
- `dependencies.json`: errors=0 cases=5/5 (100.0%) tests=29/29 (100.0%, 0 fails)
|
|
299
|
+
- `enum.json`: errors=0 cases=16/16 (100.0%) tests=49/49 (100.0%, 0 fails)
|
|
300
|
+
- `format.json`: errors=0 cases=6/6 (100.0%) tests=36/36 (100.0%, 0 fails)
|
|
301
|
+
- `infinite-loop-detection.json`: errors=0 cases=1/1 (100.0%) tests=2/2 (100.0%, 0 fails)
|
|
302
|
+
- `items.json`: errors=0 cases=6/6 (100.0%) tests=21/21 (100.0%, 0 fails)
|
|
303
|
+
- `maximum.json`: errors=0 cases=4/4 (100.0%) tests=14/14 (100.0%, 0 fails)
|
|
304
|
+
- `maxItems.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
305
|
+
- `maxLength.json`: errors=0 cases=1/1 (100.0%) tests=5/5 (100.0%, 0 fails)
|
|
306
|
+
- `maxProperties.json`: errors=0 cases=2/2 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
307
|
+
- `minimum.json`: errors=0 cases=4/4 (100.0%) tests=17/17 (100.0%, 0 fails)
|
|
308
|
+
- `minItems.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
309
|
+
- `minLength.json`: errors=0 cases=1/1 (100.0%) tests=5/5 (100.0%, 0 fails)
|
|
310
|
+
- `minProperties.json`: errors=0 cases=1/1 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
311
|
+
- `multipleOf.json`: errors=0 cases=5/5 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
312
|
+
- `not.json`: errors=0 cases=6/6 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
313
|
+
- `oneOf.json`: errors=0 cases=7/7 (100.0%) tests=23/23 (100.0%, 0 fails)
|
|
314
|
+
- `pattern.json`: errors=0 cases=2/2 (100.0%) tests=9/9 (100.0%, 0 fails)
|
|
315
|
+
- `patternProperties.json`: errors=0 cases=4/4 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
316
|
+
- `properties.json`: errors=0 cases=5/5 (100.0%) tests=24/24 (100.0%, 0 fails)
|
|
317
|
+
- `ref.json`: errors=0 cases=19/19 (100.0%) tests=45/45 (100.0%, 0 fails)
|
|
318
|
+
- `refRemote.json`: errors=0 cases=8/8 (100.0%) tests=17/17 (100.0%, 0 fails)
|
|
319
|
+
- `required.json`: errors=0 cases=4/4 (100.0%) tests=17/17 (100.0%, 0 fails)
|
|
320
|
+
- `type.json`: errors=0 cases=11/11 (100.0%) tests=79/79 (100.0%, 0 fails)
|
|
321
|
+
- `uniqueItems.json`: errors=0 cases=6/6 (100.0%) tests=69/69 (100.0%, 0 fails)
|
|
322
|
+
- summary: files=30 errors=0 cases=160/160 (100.0%) tests=615/615 (100.0%, 0 fails)
|
|
323
|
+
|
|
324
|
+
Format tests:
|
|
325
|
+
|
|
326
|
+
- `format/date-time.json`: errors=0 cases=1/1 (100.0%) tests=29/29 (100.0%, 0 fails)
|
|
327
|
+
- `format/email.json`: errors=0 cases=1/1 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
328
|
+
- `format/hostname.json`: errors=1 cases=0/1 (0.0%) tests=27/28 (96.4%, 1 fails)
|
|
329
|
+
- `format/ipv4.json`: errors=0 cases=1/1 (100.0%) tests=33/33 (100.0%, 0 fails)
|
|
330
|
+
- `format/ipv6.json`: errors=0 cases=1/1 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
331
|
+
- `format/unknown.json`: errors=0 cases=1/1 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
332
|
+
- `format/uri.json`: errors=0 cases=0/1 (0.0%) tests=33/44 (75.0%, 11 fails)
|
|
333
|
+
- summary: files=7 errors=1 cases=5/7 (71.4%) tests=189/201 (94.0%, 12 fails)
|
|
334
|
+
|
|
335
|
+
## Results for _draft3_
|
|
336
|
+
|
|
337
|
+
Main test suite:
|
|
338
|
+
|
|
339
|
+
- `additionalItems.json`: errors=0 cases=7/7 (100.0%) tests=14/14 (100.0%, 0 fails)
|
|
340
|
+
- `additionalProperties.json`: errors=0 cases=7/7 (100.0%) tests=16/16 (100.0%, 0 fails)
|
|
341
|
+
- `default.json`: errors=0 cases=3/3 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
342
|
+
- `dependencies.json`: errors=0 cases=3/3 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
343
|
+
- `disallow.json`: errors=0 cases=3/3 (100.0%) tests=9/9 (100.0%, 0 fails)
|
|
344
|
+
- `divisibleBy.json`: errors=0 cases=3/3 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
345
|
+
- `enum.json`: errors=0 cases=5/5 (100.0%) tests=16/16 (100.0%, 0 fails)
|
|
346
|
+
- `extends.json`: errors=0 cases=3/3 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
347
|
+
- `format.json`: errors=0 cases=10/10 (100.0%) tests=60/60 (100.0%, 0 fails)
|
|
348
|
+
- `infinite-loop-detection.json`: errors=0 cases=1/1 (100.0%) tests=2/2 (100.0%, 0 fails)
|
|
349
|
+
- `items.json`: errors=0 cases=4/4 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
350
|
+
- `maximum.json`: errors=0 cases=4/4 (100.0%) tests=14/14 (100.0%, 0 fails)
|
|
351
|
+
- `maxItems.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
352
|
+
- `maxLength.json`: errors=0 cases=1/1 (100.0%) tests=5/5 (100.0%, 0 fails)
|
|
353
|
+
- `minimum.json`: errors=0 cases=3/3 (100.0%) tests=13/13 (100.0%, 0 fails)
|
|
354
|
+
- `minItems.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
355
|
+
- `minLength.json`: errors=0 cases=1/1 (100.0%) tests=5/5 (100.0%, 0 fails)
|
|
356
|
+
- `pattern.json`: errors=0 cases=2/2 (100.0%) tests=9/9 (100.0%, 0 fails)
|
|
357
|
+
- `patternProperties.json`: errors=0 cases=4/4 (100.0%) tests=17/17 (100.0%, 0 fails)
|
|
358
|
+
- `properties.json`: errors=0 cases=3/3 (100.0%) tests=15/15 (100.0%, 0 fails)
|
|
359
|
+
- `ref.json`: errors=0 cases=10/10 (100.0%) tests=27/27 (100.0%, 0 fails)
|
|
360
|
+
- `refRemote.json`: errors=0 cases=4/4 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
361
|
+
- `required.json`: errors=0 cases=3/3 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
362
|
+
- `type.json`: errors=0 cases=12/12 (100.0%) tests=80/80 (100.0%, 0 fails)
|
|
363
|
+
- `uniqueItems.json`: errors=0 cases=6/6 (100.0%) tests=62/62 (100.0%, 0 fails)
|
|
364
|
+
- summary: files=25 errors=0 cases=104/104 (100.0%) tests=434/434 (100.0%, 0 fails)
|
|
365
|
+
|
|
366
|
+
Format tests:
|
|
367
|
+
|
|
368
|
+
- `format/color.json`: errors=0 cases=1/1 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
369
|
+
- `format/date.json`: errors=0 cases=1/1 (100.0%) tests=33/33 (100.0%, 0 fails)
|
|
370
|
+
- `format/date-time.json`: errors=0 cases=1/1 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
371
|
+
- `format/ecmascript-regex.json`: errors=0 cases=0/1 (0.0%) tests=0/2 (0.0%, 2 fails)
|
|
372
|
+
- `format/email.json`: errors=0 cases=1/1 (100.0%) tests=11/11 (100.0%, 0 fails)
|
|
373
|
+
- `format/host-name.json`: errors=1 cases=0/1 (0.0%) tests=11/12 (91.7%, 1 fails)
|
|
374
|
+
- `format/ip-address.json`: errors=0 cases=1/1 (100.0%) tests=3/3 (100.0%, 0 fails)
|
|
375
|
+
- `format/ipv6.json`: errors=0 cases=1/1 (100.0%) tests=12/12 (100.0%, 0 fails)
|
|
376
|
+
- `format/regex.json`: errors=0 cases=1/1 (100.0%) tests=2/2 (100.0%, 0 fails)
|
|
377
|
+
- `format/time.json`: errors=0 cases=0/1 (0.0%) tests=2/3 (66.7%, 1 fails)
|
|
378
|
+
- `format/uri.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
379
|
+
- summary: files=11 errors=1 cases=8/11 (72.7%) tests=91/95 (95.8%, 4 fails)
|
|
380
|
+
|
|
381
|
+
## Results for _v1_
|
|
382
|
+
|
|
383
|
+
Main test suite:
|
|
384
|
+
|
|
385
|
+
- `additionalProperties.json`: errors=0 cases=9/9 (100.0%) tests=21/21 (100.0%, 0 fails)
|
|
386
|
+
- `allOf.json`: errors=0 cases=12/12 (100.0%) tests=30/30 (100.0%, 0 fails)
|
|
387
|
+
- `anchor.json`: errors=0 cases=3/4 (75.0%) tests=7/8 (87.5%, 1 fails)
|
|
388
|
+
- `anyOf.json`: errors=0 cases=8/8 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
389
|
+
- `boolean_schema.json`: errors=0 cases=2/2 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
390
|
+
- `const.json`: errors=0 cases=17/17 (100.0%) tests=54/54 (100.0%, 0 fails)
|
|
391
|
+
- `contains.json`: errors=0 cases=7/7 (100.0%) tests=25/25 (100.0%, 0 fails)
|
|
392
|
+
- `content.json`: errors=0 cases=4/4 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
393
|
+
- `default.json`: errors=0 cases=3/3 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
394
|
+
- `dependentRequired.json`: errors=0 cases=4/4 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
395
|
+
- `dependentSchemas.json`: errors=0 cases=4/4 (100.0%) tests=20/20 (100.0%, 0 fails)
|
|
396
|
+
- `dynamicRef.json`: errors=0 cases=5/12 (41.7%) tests=17/27 (63.0%, 10 fails)
|
|
397
|
+
- `enum.json`: errors=0 cases=15/15 (100.0%) tests=51/51 (100.0%, 0 fails)
|
|
398
|
+
- `exclusiveMaximum.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
399
|
+
- `exclusiveMinimum.json`: errors=0 cases=1/1 (100.0%) tests=4/4 (100.0%, 0 fails)
|
|
400
|
+
- `if-then-else.json`: errors=0 cases=10/10 (100.0%) tests=26/26 (100.0%, 0 fails)
|
|
401
|
+
- `infinite-loop-detection.json`: errors=0 cases=1/1 (100.0%) tests=2/2 (100.0%, 0 fails)
|
|
402
|
+
- `items.json`: errors=0 cases=10/10 (100.0%) tests=29/29 (100.0%, 0 fails)
|
|
403
|
+
- `maxContains.json`: errors=0 cases=5/5 (100.0%) tests=14/14 (100.0%, 0 fails)
|
|
404
|
+
- `maximum.json`: errors=0 cases=2/2 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
405
|
+
- `maxItems.json`: errors=0 cases=2/2 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
406
|
+
- `maxLength.json`: errors=0 cases=2/2 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
407
|
+
- `maxProperties.json`: errors=0 cases=3/3 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
408
|
+
- `minContains.json`: errors=0 cases=8/8 (100.0%) tests=28/28 (100.0%, 0 fails)
|
|
409
|
+
- `minimum.json`: errors=0 cases=2/2 (100.0%) tests=11/11 (100.0%, 0 fails)
|
|
410
|
+
- `minItems.json`: errors=0 cases=2/2 (100.0%) tests=6/6 (100.0%, 0 fails)
|
|
411
|
+
- `minLength.json`: errors=0 cases=2/2 (100.0%) tests=7/7 (100.0%, 0 fails)
|
|
412
|
+
- `minProperties.json`: errors=0 cases=2/2 (100.0%) tests=8/8 (100.0%, 0 fails)
|
|
413
|
+
- `multipleOf.json`: errors=0 cases=5/5 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
414
|
+
- `not.json`: errors=0 cases=9/9 (100.0%) tests=40/40 (100.0%, 0 fails)
|
|
415
|
+
- `oneOf.json`: errors=0 cases=11/11 (100.0%) tests=27/27 (100.0%, 0 fails)
|
|
416
|
+
- `pattern.json`: errors=0 cases=2/3 (66.7%) tests=11/12 (91.7%, 1 fails)
|
|
417
|
+
- `patternProperties.json`: errors=0 cases=5/6 (83.3%) tests=25/26 (96.2%, 1 fails)
|
|
418
|
+
- `prefixItems.json`: errors=0 cases=4/4 (100.0%) tests=11/11 (100.0%, 0 fails)
|
|
419
|
+
- `properties.json`: errors=0 cases=6/6 (100.0%) tests=28/28 (100.0%, 0 fails)
|
|
420
|
+
- `propertyNames.json`: errors=0 cases=3/3 (100.0%) tests=10/10 (100.0%, 0 fails)
|
|
421
|
+
- `ref.json`: errors=0 cases=28/36 (77.8%) tests=69/79 (87.3%, 10 fails)
|
|
422
|
+
- `refRemote.json`: errors=0 cases=11/15 (73.3%) tests=27/31 (87.1%, 4 fails)
|
|
423
|
+
- `required.json`: errors=0 cases=5/5 (100.0%) tests=18/18 (100.0%, 0 fails)
|
|
424
|
+
- `type.json`: errors=0 cases=11/11 (100.0%) tests=80/80 (100.0%, 0 fails)
|
|
425
|
+
- `unevaluatedItems.json`: errors=0 cases=16/29 (55.2%) tests=53/71 (74.6%, 18 fails)
|
|
426
|
+
- `unevaluatedProperties.json`: errors=0 cases=30/42 (71.4%) tests=111/125 (88.8%, 14 fails)
|
|
427
|
+
- `uniqueItems.json`: errors=0 cases=6/6 (100.0%) tests=69/69 (100.0%, 0 fails)
|
|
428
|
+
- summary: files=43 errors=0 cases=298/345 (86.4%) tests=1065/1124 (94.8%, 59 fails)
|
|
429
|
+
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: json_schema_utils
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.4
|
|
4
4
|
Summary: JSON Schema Utils
|
|
5
5
|
Author: Fabien Coelho, Claire Yannou-Medrala
|
|
6
6
|
License-Expression: CC0-1.0
|
|
@@ -107,18 +107,21 @@ You could also use `jq .` for this purpose.
|
|
|
107
107
|
Convert a subset of JSON Schema to JSON Model.
|
|
108
108
|
|
|
109
109
|
The converter is expected to _fully_ supports JSON Schema draft3 to draft7.
|
|
110
|
+
Note that our tools include a significant support for _format_ assertions,
|
|
111
|
+
with 80-95% of optional format tests being validated, usually in a safe way
|
|
112
|
+
(i.e. false positives may occur, false negatives are avoided).
|
|
110
113
|
|
|
111
|
-
It _partially_ supports draft 2019-09 and 2020-12
|
|
112
|
-
|
|
114
|
+
It _partially_ supports draft 2019-09 and 2020-12.
|
|
115
|
+
In particular, _vocabularies_ are fully supported.
|
|
116
|
+
However, there is a limited support for some features:
|
|
113
117
|
|
|
114
|
-
- _dynamic_ anchors and references
|
|
115
|
-
- _unevaluated_
|
|
116
|
-
- _vocabularies_;
|
|
118
|
+
- _dynamic_ anchors and references
|
|
119
|
+
- _unevaluated_ items and properties
|
|
117
120
|
|
|
118
121
|
Moreover, this is a software, hence there may be bugs.
|
|
119
122
|
|
|
120
123
|
```sh
|
|
121
|
-
jsu-model -o foo.model.json foo.schema.json
|
|
124
|
+
jsu-model --format -o foo.model.json foo.schema.json
|
|
122
125
|
```
|
|
123
126
|
|
|
124
127
|
## JSON Schema Compiler
|
|
@@ -82,18 +82,21 @@ You could also use `jq .` for this purpose.
|
|
|
82
82
|
Convert a subset of JSON Schema to JSON Model.
|
|
83
83
|
|
|
84
84
|
The converter is expected to _fully_ supports JSON Schema draft3 to draft7.
|
|
85
|
+
Note that our tools include a significant support for _format_ assertions,
|
|
86
|
+
with 80-95% of optional format tests being validated, usually in a safe way
|
|
87
|
+
(i.e. false positives may occur, false negatives are avoided).
|
|
85
88
|
|
|
86
|
-
It _partially_ supports draft 2019-09 and 2020-12
|
|
87
|
-
|
|
89
|
+
It _partially_ supports draft 2019-09 and 2020-12.
|
|
90
|
+
In particular, _vocabularies_ are fully supported.
|
|
91
|
+
However, there is a limited support for some features:
|
|
88
92
|
|
|
89
|
-
- _dynamic_ anchors and references
|
|
90
|
-
- _unevaluated_
|
|
91
|
-
- _vocabularies_;
|
|
93
|
+
- _dynamic_ anchors and references
|
|
94
|
+
- _unevaluated_ items and properties
|
|
92
95
|
|
|
93
96
|
Moreover, this is a software, hence there may be bugs.
|
|
94
97
|
|
|
95
98
|
```sh
|
|
96
|
-
jsu-model -o foo.model.json foo.schema.json
|
|
99
|
+
jsu-model --format -o foo.model.json foo.schema.json
|
|
97
100
|
```
|
|
98
101
|
|
|
99
102
|
## JSON Schema Compiler
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: json_schema_utils
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.4
|
|
4
4
|
Summary: JSON Schema Utils
|
|
5
5
|
Author: Fabien Coelho, Claire Yannou-Medrala
|
|
6
6
|
License-Expression: CC0-1.0
|
|
@@ -107,18 +107,21 @@ You could also use `jq .` for this purpose.
|
|
|
107
107
|
Convert a subset of JSON Schema to JSON Model.
|
|
108
108
|
|
|
109
109
|
The converter is expected to _fully_ supports JSON Schema draft3 to draft7.
|
|
110
|
+
Note that our tools include a significant support for _format_ assertions,
|
|
111
|
+
with 80-95% of optional format tests being validated, usually in a safe way
|
|
112
|
+
(i.e. false positives may occur, false negatives are avoided).
|
|
110
113
|
|
|
111
|
-
It _partially_ supports draft 2019-09 and 2020-12
|
|
112
|
-
|
|
114
|
+
It _partially_ supports draft 2019-09 and 2020-12.
|
|
115
|
+
In particular, _vocabularies_ are fully supported.
|
|
116
|
+
However, there is a limited support for some features:
|
|
113
117
|
|
|
114
|
-
- _dynamic_ anchors and references
|
|
115
|
-
- _unevaluated_
|
|
116
|
-
- _vocabularies_;
|
|
118
|
+
- _dynamic_ anchors and references
|
|
119
|
+
- _unevaluated_ items and properties
|
|
117
120
|
|
|
118
121
|
Moreover, this is a software, hence there may be bugs.
|
|
119
122
|
|
|
120
123
|
```sh
|
|
121
|
-
jsu-model -o foo.model.json foo.schema.json
|
|
124
|
+
jsu-model --format -o foo.model.json foo.schema.json
|
|
122
125
|
```
|
|
123
126
|
|
|
124
127
|
## JSON Schema Compiler
|
|
@@ -18,10 +18,12 @@ jsutils/__init__.py
|
|
|
18
18
|
jsutils/convert.py
|
|
19
19
|
jsutils/inline.py
|
|
20
20
|
jsutils/recurse.py
|
|
21
|
+
jsutils/resolver.py
|
|
21
22
|
jsutils/restruct.py
|
|
22
23
|
jsutils/schemas.py
|
|
23
24
|
jsutils/scripts.py
|
|
24
25
|
jsutils/simplify.py
|
|
25
26
|
jsutils/stats.py
|
|
26
27
|
jsutils/types.py
|
|
27
|
-
jsutils/utils.py
|
|
28
|
+
jsutils/utils.py
|
|
29
|
+
jsutils/vocab.py
|