From ddef3b4a06be6f66dc1384e31a408ee7658bac1a Mon Sep 17 00:00:00 2001 From: Julian Berman Date: Wed, 20 Oct 2021 10:18:25 -0400 Subject: Squashed 'json/' changes from ba3a90534..329efe59c 329efe59c Update the language around coverage, draft2020-12 is just as usable :) 068131278 Ensure dependentSchemas also properly ignores non-object instances. git-subtree-dir: json git-subtree-split: 329efe59c65ea9f49af9c5c07dd6f5d22cb67ef4 --- README.md | 10 +++++++--- tests/draft-next/dependentSchemas.json | 15 +++++++++++++++ tests/draft2019-09/dependentSchemas.json | 15 +++++++++++++++ tests/draft2020-12/dependentSchemas.json | 15 +++++++++++++++ 4 files changed, 52 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 63053d6..a00e38c 100644 --- a/README.md +++ b/README.md @@ -60,9 +60,13 @@ directory. This is: ## Coverage -Drafts 07, 06, 04, and 03 should have full coverage, with tests for drafts 06, -07, 2019-09 and 2020-12 being considered current and actively supported. -Drafts 2019-09 and 2020-12 are almost fully covered. +All JSON Schema specification releases should be well covered by this suite, +including drafts 2020-12, 2019-09, 07, 06, 04 and 03. Additional coverage is +always welcome, particularly for bugs encountered in real-world +implementations. + +Drafts 04 and 03 are considered "frozen" in that less effort is put in to +backport new tests to these versions. Contributions are very welcome, especially from implementers as they add support to their own implementations. diff --git a/tests/draft-next/dependentSchemas.json b/tests/draft-next/dependentSchemas.json index e7921d1..2ba1a75 100644 --- a/tests/draft-next/dependentSchemas.json +++ b/tests/draft-next/dependentSchemas.json @@ -36,6 +36,21 @@ "description": "wrong type both", "data": {"foo": "quux", "bar": "quux"}, "valid": false + }, + { + "description": "ignores arrays", + "data": ["bar"], + "valid": true + }, + { + "description": "ignores strings", + "data": "foobar", + "valid": true + }, + { + "description": "ignores other non-objects", + "data": 12, + "valid": true } ] }, diff --git a/tests/draft2019-09/dependentSchemas.json b/tests/draft2019-09/dependentSchemas.json index e7921d1..2ba1a75 100644 --- a/tests/draft2019-09/dependentSchemas.json +++ b/tests/draft2019-09/dependentSchemas.json @@ -36,6 +36,21 @@ "description": "wrong type both", "data": {"foo": "quux", "bar": "quux"}, "valid": false + }, + { + "description": "ignores arrays", + "data": ["bar"], + "valid": true + }, + { + "description": "ignores strings", + "data": "foobar", + "valid": true + }, + { + "description": "ignores other non-objects", + "data": 12, + "valid": true } ] }, diff --git a/tests/draft2020-12/dependentSchemas.json b/tests/draft2020-12/dependentSchemas.json index e7921d1..2ba1a75 100644 --- a/tests/draft2020-12/dependentSchemas.json +++ b/tests/draft2020-12/dependentSchemas.json @@ -36,6 +36,21 @@ "description": "wrong type both", "data": {"foo": "quux", "bar": "quux"}, "valid": false + }, + { + "description": "ignores arrays", + "data": ["bar"], + "valid": true + }, + { + "description": "ignores strings", + "data": "foobar", + "valid": true + }, + { + "description": "ignores other non-objects", + "data": 12, + "valid": true } ] }, -- cgit v1.2.1