Skip to content

Commit ef71f1b

Browse files
committed
Squashed 'json/' changes from 83e866b4..ab3924a6
REVERT: 83e866b4 Merge pull request #763 from michaelmior/propertynames-const REVERT: c5a9703f Merge pull request #760 from OptimumCode/rfc3490-label-separator REVERT: b4c09b65 Add tests for propertyNames with const/enum REVERT: 4fa572d8 Move tests for rfc3490#3.1 into a separate test case REVERT: ce9f68ca Add link to rfc and quote REVERT: ad94cacc Add test cases for other valid label separators in IDN hostnames REVERT: 39002ae7 Merge pull request #762 from OptimumCode/rfc-html-link REVERT: c8780535 Correct section anchor for rfc URL template REVERT: 5f2ca7d6 Modify rfc url template to use html version REVERT: 9c5d99b6 Merge pull request #761 from OptimumCode/annotation-script-rfc-support REVERT: 9563ce7b Correct rfc URL template - incorrect path pattern was used REVERT: 961bfad0 Correct spec kind extraction from defined key. Continue on unkown URL kind REVERT: e524505b Merge pull request #759 from sirosen/hostname-format-reject-single-dot REVERT: 4a3efd18 Add negative tests for "." for hostname formats REVERT: 4ba013d5 Merge pull request #747 from santhosh-tekuri/duration REVERT: aa500e80 Merge pull request #749 from json-schema-org/gregsdennis/json-everything-update REVERT: eb8ce976 Merge pull request #757 from ajevans99/main REVERT: dcdae5c0 Merge pull request #758 from sirosen/hostname-format-check-empty-string REVERT: db21d21b Merge branch 'main' into hostname-format-check-empty-string REVERT: 3fd78f04 Merge pull request #1 from ajevans99/swift-json-schema REVERT: 3cada3a9 Update README.md REVERT: 82a07749 Merge pull request #753 from json-schema-org/ether/fix-draft-locations REVERT: a66d23d4 move draft-specific files to the dedicated dir for its draft REVERT: 8ef15501 Merge pull request #751 from big-andy-coates/format_tests_under_format REVERT: fe1b1392 All format test cases should be under the `format` directory. REVERT: b1ee90f6 json-everything moved to an org REVERT: c00a3f94 test: duration format must start with P REVERT: 9fc880bf Merge pull request #740 from notEthan/format-pattern-control-char REVERT: cbd48ea5 Simplify test of \a regex character to test directly against `pattern` schema REVERT: d6f1010a Merge pull request #746 from json-schema-org/annotations REVERT: 4aec22c1 Revert the changes to additionalProperties.json. REVERT: 2dc10671 Move the workflow step title. REVERT: d9ce71ac May as well also show quotes in the annotation. REVERT: 1b719a84 Pick the line after the description when attaching spec annotations. REVERT: 08105151 Markdown is apparently not (yet?) supported in annotations. REVERT: 81645773 Tidy up the specification annotator a bit. REVERT: 38628b79 Make the spec URLs structure a bit easier for internal use. REVERT: 4ebbeaf4 Merge branch 'Era-cell/main' REVERT: e4bd7554 dumbness2 corrected REVERT: d8ade402 inside run REVERT: 57c7c869 changed install location REVERT: 11f8e511 Added installing command in workflow REVERT: f2766616 template library, url loads changes REVERT: c2badb12 Merge pull request #734 from OptimumCode/idn-hostname-arabic-indic-mixed REVERT: dd9599a5 Merge branch 'main' of github.com:json-schema-org/JSON-Schema-Test-Suite REVERT: 5b393436 add pr dependencies action REVERT: 3a509007 Clear existin annotations on same PR REVERT: 23674123 Cases for rfc and iso written separately REVERT: 0b780b2c Corected yaml format REVERT: 2b1ffb74 Best practices followed with optimized code REVERT: e88a2da6 Works for all OS REVERT: 7b40efe4 Base path for neighbouring file? REVERT: 564e6957 Walking through all leaf files REVERT: 7b84fb44 Merge branch 'main' of https://github.com/Era-cell/JSON-Schema-Test-Suite REVERT: 891d0265 First workflow2 REVERT: 1c175195 regex correction REVERT: 96f7683a Final correction2 - file names beautufied REVERT: 5f050a07 Final correction1 REVERT: 77527b63 Stupidity corrected REVERT: eb8fd760 Branch name specified REVERT: 540a269b Log2 REVERT: f29d090a Wrong location sepcification REVERT: 582e12be logging logs check REVERT: df3bdecc path corrected REVERT: c6b937ca Reading all jsons and spec urls added REVERT: cbdd1755 change day2 REVERT: 54f3784a Merge pull request #731 from MeastroZI/main REVERT: 79dc92f1 TOKEN REVERT: ce52852d Python file location changed REVERT: 3558c2c6 Fake add to tests REVERT: eecc7b7a Merge branch 'main' of https://github.com/Era-cell/JSON-Schema-Test-Suite REVERT: 810d148a First workflow2 REVERT: 4eac02c7 First workflow REVERT: ff29264c Merge pull request #741 from harrel56/chore/tabs-to-spaces REVERT: 9f39cf73 use spaces instead of tabs REVERT: 2f3b5f7a Corrected replaced unevaluated with additoinalProperties REVERT: 40bcb8b3 Corrected replaced unevaluated with additoinalProperties REVERT: fa9224d7 Merge pull request #732 from MeastroZI/main2 REVERT: 83bedd5c Changing descriptions REVERT: 49f73429 fixing tests REVERT: e6d6a081 adding more test cases REVERT: 7e6c9be6 changing descriptions REVERT: 959aca92 shifting test REVERT: 605d7d78 Update propertyDependencies.json : test must be tests REVERT: deb82824 test for dependentSchema and propertyDependencies with unevaluatedProperties and additionalProperties REVERT: ea485124 Merge branch 'json-schema-org:main' into main REVERT: 64a3e7b3 Merge pull request #721 from json-schema-org/gregsdennis/dynamicref-skips-resources REVERT: b9f14e64 Fix $schema in new new test REVERT: 3d5048e8 Merge pull request #733 from Era-cell/main REVERT: 4ae14268 Add valid first character to avoid Bidi rule violation REVERT: 2480edba Update additionalProperties.json formatting it REVERT: 6aa79c0b Update additionalProperties.json formatting it REVERT: 3e0139a5 Update tests/draft-next/additionalProperties.json REVERT: 616240b0 Update tests/draft-next/additionalProperties.json REVERT: c5f3e4ea Update tests/draft2020-12/propertyNames.json REVERT: 964efb8e propertyNames doesn't affect additionalProperties, tests exist already for unevaluatedProps REVERT: f08b884c Cases go under additional and unevaluated Properties REVERT: 99864ff6 added tests for propertyNames with additionalProperties/unevaluatedProperties, also with specification property REVERT: 3b5782b6 Update ref.json : changing $Ids REVERT: 546b3561 test for $ref with $recursiveAnchor REVERT: 57617f25 Merge pull request #726 from Era-cell/main REVERT: 51fc69cd meta data and property names constraints added, additional Items: string REVERT: 9b169bed specification takes array of objects having section and quote REVERT: 1362a8cc Pattern for para corrected REVERT: 340116ec Schema of specification in much structured REVERT: 003ac021 Test-schema including sub-schema for scpecification REVERT: 50a20280 adding specification enhancement for additionalProperties REVERT: 604f5f99 Drop tests of `$id` and `$anchor` that just test values against meta-schema `pattern` for those properties REVERT: 9cd64ec9 come on man, save all the files REVERT: f494440e use unique $id in optional tests, too REVERT: 468453b0 use unique $id REVERT: 9ec6d17e fix copy/paste error REVERT: b284f423 add tests for $dynamicRef skipping over resources REVERT: bf0360f4 add $recursiveAnchor to 2019-09 meta-schemas REVERT: 0519d1f0 add $dynamicAnchor to meta-schemas REVERT: b41167c7 Merge pull request #714 from json-schema-org/more-not REVERT: 4221a55a Add tests for not: {} schemas for all values. REVERT: c499d1d2 Merge pull request #713 from spacether/patch-1 REVERT: 24a471bd Update README.md REVERT: 544f7c3d Merge pull request #712 from otto-ifak/main REVERT: 9dad3ebe Add tests for enum with array of bool REVERT: 589a0858 Merge pull request #706 from marksparkza/unevaluated-before-ref REVERT: 64d5cab9 Merge pull request #710 from spacether/patch-1 REVERT: 418cdbd6 Removes idea folder REVERT: e0a9e066 Updates all other tests to mention grapheme/graphemes REVERT: 217bf81b Merge pull request #701 from json-schema-org/ether/dynamicRef-boolean REVERT: 7a3d06d7 I remove a test that doesn't make sense. REVERT: e8bf453d Move tests with ids in non-schemas to optional REVERT: 69136952 Update minLength.json REVERT: d545be21 Fix duplidate identifiers in recently added tests REVERT: 4e9640c8 test when $dynamicRef references a boolean schema REVERT: 3dab98ca Merge pull request #705 from json-schema-org/gregsdennis/remove-contains-objects-tests REVERT: 1d3aa495 remove more maxContains REVERT: 4a2c61e8 Test unevaluatedItems|Properties before $ref REVERT: ec553d76 contains no longer applies to objects REVERT: 0433a2bf Merge pull request #704 from big-andy-coates/clarify-format-requirements REVERT: c685195f Merge pull request #703 from big-andy-coates/link-to-creek-validator-comprison-site REVERT: a46174b0 Add more detail around test runner requirements for `format` tests REVERT: bb1de8a9 The site linked to is a data-driven functional and performance benchmark of JVM based validator implementations. REVERT: d38ddd54 Merge pull request #696 from jdesrosiers/unevaluated-dynamicref REVERT: 5d0c05fa Fix copy/paste error REVERT: 95fe6ca2 Merge pull request #694 from json-schema-org/heterogeneous-additionalItems REVERT: 9c88a0be Merge pull request #697 from json-schema-org/gregsdennis/add-ref-into-known-nonapplicator REVERT: 49222046 Add unevaluted with dynamic ref tests to draft-next REVERT: 8ba1c90d Update unevaluted with dynamic ref to be more likely to catch errors REVERT: fea2cf19 add tests for 2019 and 2020 REVERT: 6695ca38 add optional tests for `$ref`ing into known non-applicator keywords REVERT: 2834c630 Add tests for unevaluated with dynamic reference REVERT: cda4281c Merge pull request #695 from json-schema-org/ether/clean-up-subSchemas REVERT: 7b9f45c2 move subSchemas-defs.json to subSchemas.json REVERT: e41ec0ec remove unused definition files REVERT: 349c5a82 Merge pull request #692 from json-schema-org/ether/fix-subSchemas-refs REVERT: 451baca4 Merge pull request #670 from marksparkza/invalid-output-test REVERT: b8da838a Add tests for heterogeneous arrays with additionalItems REVERT: 6d7a44b7 fix subschema locations and their $refs REVERT: a9a1e2e3 Merge pull request #690 from skryukov/add-ipv4-mask-test REVERT: ba52c48a Merge pull request #689 from skryukov/add-schema-keyword-to-required-tests REVERT: 69b53add Add a test case for ipv4 with netmask REVERT: d0c602a7 Add $schema keyword to required tests REVERT: 20f1f52c Merge pull request #688 from spacether/feat_updates_python_exp_impl REVERT: b087b3ca Updates implmentation REVERT: 4ecd01f3 Merge pull request #687 from swaeberle/check-single-label-idn-hostnames REVERT: 732e7275 test single label IDN hostnames REVERT: 202d5625 test: hostname format check fails on empty string REVERT: ea0b63c9 Remove invalid output tests git-subtree-dir: json git-subtree-split: ab3924a663d2f9e6de844f464d185a70d881b9ed
1 parent d1b69fc commit ef71f1b

File tree

155 files changed

+1663
-4135
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

155 files changed

+1663
-4135
lines changed

.github/workflows/pr-dependencies.yml

Lines changed: 0 additions & 12 deletions
This file was deleted.

.github/workflows/show_specification_annotations.yml

Lines changed: 0 additions & 21 deletions
This file was deleted.

README.md

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ To test a specific version:
109109

110110
* For 2019-09 and later published drafts, implementations that are able to detect the draft of each schema via `$schema` SHOULD be configured to do so
111111
* For draft-07 and earlier, draft-next, and implementations unable to detect via `$schema`, implementations MUST be configured to expect the draft matching the test directory name
112-
* Load any remote references [described below](#additional-assumptions) and configure your implementation to retrieve them via their URIs
112+
* Load any remote references [described below](additional-assumptions) and configure your implementation to retrieve them via their URIs
113113
* Walk the filesystem tree for that version's subdirectory and for each `.json` file found:
114114

115115
* if the file is located in the root of the version directory:
@@ -159,7 +159,7 @@ If your implementation supports multiple versions, run the above procedure for e
159159
```
160160
161161
2. Test cases found within [special subdirectories](#subdirectories-within-each-draft) may require additional configuration to run.
162-
In particular, when running tests within the `optional/format` subdirectory, test runners should configure implementations to enable format validation, where the implementation supports it.
162+
In particular, tests within the `optional/format` subdirectory may require implementations to change the way they treat the `"format"`keyword (particularly on older drafts which did not have a notion of vocabularies).
163163
164164
### Invariants & Guarantees
165165
@@ -254,14 +254,12 @@ This suite is being used by:
254254

255255
### Java
256256

257-
* [json-schema-validation-comparison](https://www.creekservice.org/json-schema-validation-comparison/functional) (Comparison site for JVM-based validator implementations)
258257
* [json-schema-validator](https://github.com/daveclayton/json-schema-validator)
259258
* [everit-org/json-schema](https://github.com/everit-org/json-schema)
260259
* [networknt/json-schema-validator](https://github.com/networknt/json-schema-validator)
261260
* [Justify](https://github.com/leadpony/justify)
262261
* [Snow](https://github.com/ssilverman/snowy-json)
263262
* [jsonschemafriend](https://github.com/jimblackler/jsonschemafriend)
264-
* [OpenAPI JSON Schema Generator](https://github.com/openapi-json-schema-tools/openapi-json-schema-generator)
265263

266264
### JavaScript
267265

@@ -281,10 +279,6 @@ This suite is being used by:
281279
* [ajv](https://github.com/epoberezkin/ajv)
282280
* [djv](https://github.com/korzio/djv)
283281

284-
### Kotlin
285-
286-
* [json-schema-validation-comparison](https://www.creekservice.org/json-schema-validation-comparison/functional) (Comparison site for JVM-based validator implementations)
287-
288282
### Node.js
289283

290284
For node.js developers, the suite is also available as an [npm](https://www.npmjs.com/package/@json-schema-org/tests) package.
@@ -293,7 +287,7 @@ Node-specific support is maintained in a [separate repository](https://github.co
293287

294288
### .NET
295289

296-
* [JsonSchema.Net](https://github.com/json-everything/json-everything)
290+
* [JsonSchema.Net](https://github.com/gregsdennis/json-everything)
297291
* [Newtonsoft.Json.Schema](https://github.com/JamesNK/Newtonsoft.Json.Schema)
298292

299293
### Perl
@@ -319,7 +313,7 @@ Node-specific support is maintained in a [separate repository](https://github.co
319313
* [fastjsonschema](https://github.com/seznam/python-fastjsonschema)
320314
* [hypothesis-jsonschema](https://github.com/Zac-HD/hypothesis-jsonschema)
321315
* [jschon](https://github.com/marksparkza/jschon)
322-
* [OpenAPI JSON Schema Generator](https://github.com/openapi-json-schema-tools/openapi-json-schema-generator)
316+
* [python-experimental, OpenAPI Generator](https://github.com/OpenAPITools/openapi-generator/blob/master/docs/generators/python-experimental.md)
323317

324318
### Ruby
325319

@@ -333,13 +327,11 @@ Node-specific support is maintained in a [separate repository](https://github.co
333327

334328
### Scala
335329

336-
* [json-schema-validation-comparison](https://www.creekservice.org/json-schema-validation-comparison/functional) (Comparison site for JVM-based validator implementations)
337330
* [typed-json](https://github.com/frawa/typed-json)
338331

339332
### Swift
340333

341334
* [JSONSchema](https://github.com/kylef/JSONSchema.swift)
342-
* [swift-json-schema](https://github.com/ajevans99/swift-json-schema)
343335

344336
If you use it as well, please fork and send a pull request adding yourself to
345337
the list :).

bin/annotate-specification-links

Lines changed: 0 additions & 140 deletions
This file was deleted.

bin/specification_urls.json

Lines changed: 0 additions & 34 deletions
This file was deleted.

output-tests/draft2019-09/content/type.json

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,32 @@
3131
"required": ["errors"]
3232
}
3333
}
34+
},
35+
{
36+
"description": "correct type yields an output unit",
37+
"data": "a string",
38+
"output": {
39+
"basic": {
40+
"$id": "https://json-schema.org/tests/content/draft2019-09/type/0/tests/1/basic",
41+
"$ref": "/draft/2019-09/output/schema",
42+
"properties": {
43+
"annotations": {
44+
"contains": {
45+
"properties": {
46+
"valid": {"const": true},
47+
"keywordLocation": {"const": "/type"},
48+
"absoluteKeywordLocation": {"const": "https://json-schema.org/tests/content/draft2019-09/type/0#/type"},
49+
"instanceLocation": {"const": ""},
50+
"annotation": false,
51+
"error": false
52+
},
53+
"required": ["keywordLocation", "instanceLocation"]
54+
}
55+
}
56+
},
57+
"required": ["annotations"]
58+
}
59+
}
3460
}
3561
]
3662
}

output-tests/draft2020-12/content/type.json

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,32 @@
3131
"required": ["errors"]
3232
}
3333
}
34+
},
35+
{
36+
"description": "correct type yields an output unit",
37+
"data": "a string",
38+
"output": {
39+
"basic": {
40+
"$id": "https://json-schema.org/tests/content/draft2020-12/type/0/tests/1/basic",
41+
"$ref": "/draft/2020-12/output/schema",
42+
"properties": {
43+
"annotations": {
44+
"contains": {
45+
"properties": {
46+
"valid": {"const": true},
47+
"keywordLocation": {"const": "/type"},
48+
"absoluteKeywordLocation": {"const": "https://json-schema.org/tests/content/draft2020-12/type/0#/type"},
49+
"instanceLocation": {"const": ""},
50+
"annotation": false,
51+
"error": false
52+
},
53+
"required": ["keywordLocation", "instanceLocation"]
54+
}
55+
}
56+
},
57+
"required": ["annotations"]
58+
}
59+
}
3460
}
3561
]
3662
}

remotes/draft-next/format-assertion-false.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
"https://json-schema.org/draft/next/vocab/core": true,
66
"https://json-schema.org/draft/next/vocab/format-assertion": false
77
},
8-
"$dynamicAnchor": "meta",
98
"allOf": [
109
{ "$ref": "https://json-schema.org/draft/next/meta/core" },
1110
{ "$ref": "https://json-schema.org/draft/next/meta/format-assertion" }

remotes/draft-next/format-assertion-true.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
"https://json-schema.org/draft/next/vocab/core": true,
66
"https://json-schema.org/draft/next/vocab/format-assertion": true
77
},
8-
"$dynamicAnchor": "meta",
98
"allOf": [
109
{ "$ref": "https://json-schema.org/draft/next/meta/core" },
1110
{ "$ref": "https://json-schema.org/draft/next/meta/format-assertion" }

remotes/draft-next/metaschema-no-validation.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
"https://json-schema.org/draft/next/vocab/applicator": true,
66
"https://json-schema.org/draft/next/vocab/core": true
77
},
8-
"$dynamicAnchor": "meta",
98
"allOf": [
109
{ "$ref": "https://json-schema.org/draft/next/meta/applicator" },
1110
{ "$ref": "https://json-schema.org/draft/next/meta/core" }

remotes/draft-next/metaschema-optional-vocabulary.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
"https://json-schema.org/draft/next/vocab/core": true,
77
"http://localhost:1234/draft/next/vocab/custom": false
88
},
9-
"$dynamicAnchor": "meta",
109
"allOf": [
1110
{ "$ref": "https://json-schema.org/draft/next/meta/validation" },
1211
{ "$ref": "https://json-schema.org/draft/next/meta/core" }
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"$schema": "https://json-schema.org/draft/next/schema",
3+
"$defs": {
4+
"integer": {
5+
"type": "integer"
6+
},
7+
"refToInteger": {
8+
"$ref": "#/$defs/integer"
9+
}
10+
}
11+
}

0 commit comments

Comments
 (0)