summaryrefslogtreecommitdiff
path: root/json/tests/draft2020-12/format.json
diff options
context:
space:
mode:
Diffstat (limited to 'json/tests/draft2020-12/format.json')
-rw-r--r--json/tests/draft2020-12/format.json781
1 files changed, 781 insertions, 0 deletions
diff --git a/json/tests/draft2020-12/format.json b/json/tests/draft2020-12/format.json
new file mode 100644
index 0000000..0eb5048
--- /dev/null
+++ b/json/tests/draft2020-12/format.json
@@ -0,0 +1,781 @@
+[
+ {
+ "description": "validation of e-mail addresses",
+ "schema": {"format": "email"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid email string is only an annotation by default",
+ "data": "2962",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of IDN e-mail addresses",
+ "schema": {"format": "idn-email"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid idn-email string is only an annotation by default",
+ "data": "2962",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of regexes",
+ "schema": {"format": "regex"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid regex string is only an annotation by default",
+ "data": "^(abc]",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of IP addresses",
+ "schema": {"format": "ipv4"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid ipv4 string is only an annotation by default",
+ "data": "127.0.0.0.1",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of IPv6 addresses",
+ "schema": {"format": "ipv6"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid ipv6 string is only an annotation by default",
+ "data": "12345::",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of IDN hostnames",
+ "schema": {"format": "idn-hostname"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid idn-hostname string is only an annotation by default",
+ "data": "〮실례.테스트",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of hostnames",
+ "schema": {"format": "hostname"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid hostname string is only an annotation by default",
+ "data": "-a-host-name-that-starts-with--",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of date strings",
+ "schema": {"format": "date"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid date string is only an annotation by default",
+ "data": "06/19/1963",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of date-time strings",
+ "schema": {"format": "date-time"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid date-time string is only an annotation by default",
+ "data": "1990-02-31T15:59:60.123-08:00",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of time strings",
+ "schema": {"format": "time"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid time string is only an annotation by default",
+ "data": "08:30:06 PST",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of JSON pointers",
+ "schema": {"format": "json-pointer"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid json-pointer string is only an annotation by default",
+ "data": "/foo/bar~",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of relative JSON pointers",
+ "schema": {"format": "relative-json-pointer"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid relative-json-pointer string is only an annotation by default",
+ "data": "/foo/bar",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of IRIs",
+ "schema": {"format": "iri"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid iri string is only an annotation by default",
+ "data": "http://2001:0db8:85a3:0000:0000:8a2e:0370:7334",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of IRI references",
+ "schema": {"format": "iri-reference"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid iri-reference string is only an annotation by default",
+ "data": "\\\\WINDOWS\\filëßåré",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of URIs",
+ "schema": {"format": "uri"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid uri string is only an annotation by default",
+ "data": "//foo.bar/?baz=qux#quux",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of URI references",
+ "schema": {"format": "uri-reference"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid uri-reference string is only an annotation by default",
+ "data": "\\\\WINDOWS\\fileshare",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of URI templates",
+ "schema": {"format": "uri-template"},
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid uri-template string is only an annotation by default",
+ "data": "http://example.com/dictionary/{term:1}/{term",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of UUIDs",
+ "schema": { "format": "uuid" },
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid uuid string is only an annotation by default",
+ "data": "2eb8aa08-aa98-11ea-b4aa-73b441d1638",
+ "valid": true
+ }
+ ]
+ },
+ {
+ "description": "validation of durations",
+ "schema": { "format": "duration" },
+ "tests": [
+ {
+ "description": "ignores integers",
+ "data": 12,
+ "valid": true
+ },
+ {
+ "description": "ignores floats",
+ "data": 13.7,
+ "valid": true
+ },
+ {
+ "description": "ignores objects",
+ "data": {},
+ "valid": true
+ },
+ {
+ "description": "ignores arrays",
+ "data": [],
+ "valid": true
+ },
+ {
+ "description": "ignores booleans",
+ "data": false,
+ "valid": true
+ },
+ {
+ "description": "ignores null",
+ "data": null,
+ "valid": true
+ },
+ {
+ "description": "invalid duration string is only an annotation by default",
+ "data": "PT1D",
+ "valid": true
+ }
+ ]
+ }
+]