json_schemer 0.2.8 → 0.2.11

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.
Files changed (237) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +5 -5
  3. data/json_schemer.gemspec +2 -2
  4. data/lib/json_schemer/schema/base.rb +52 -32
  5. data/lib/json_schemer/version.rb +1 -1
  6. data/lib/json_schemer.rb +1 -0
  7. metadata +4 -234
  8. data/JSON-Schema-Test-Suite/.gitignore +0 -1
  9. data/JSON-Schema-Test-Suite/.travis.yml +0 -8
  10. data/JSON-Schema-Test-Suite/LICENSE +0 -19
  11. data/JSON-Schema-Test-Suite/README.md +0 -181
  12. data/JSON-Schema-Test-Suite/bin/jsonschema_suite +0 -298
  13. data/JSON-Schema-Test-Suite/index.js +0 -45
  14. data/JSON-Schema-Test-Suite/package.json +0 -28
  15. data/JSON-Schema-Test-Suite/remotes/folder/folderInteger.json +0 -3
  16. data/JSON-Schema-Test-Suite/remotes/integer.json +0 -3
  17. data/JSON-Schema-Test-Suite/remotes/name-defs.json +0 -15
  18. data/JSON-Schema-Test-Suite/remotes/name.json +0 -15
  19. data/JSON-Schema-Test-Suite/remotes/subSchemas.json +0 -8
  20. data/JSON-Schema-Test-Suite/test-schema.json +0 -59
  21. data/JSON-Schema-Test-Suite/tests/draft2019-09/additionalItems.json +0 -87
  22. data/JSON-Schema-Test-Suite/tests/draft2019-09/additionalProperties.json +0 -133
  23. data/JSON-Schema-Test-Suite/tests/draft2019-09/allOf.json +0 -218
  24. data/JSON-Schema-Test-Suite/tests/draft2019-09/anchor.json +0 -87
  25. data/JSON-Schema-Test-Suite/tests/draft2019-09/anyOf.json +0 -189
  26. data/JSON-Schema-Test-Suite/tests/draft2019-09/boolean_schema.json +0 -104
  27. data/JSON-Schema-Test-Suite/tests/draft2019-09/const.json +0 -170
  28. data/JSON-Schema-Test-Suite/tests/draft2019-09/contains.json +0 -95
  29. data/JSON-Schema-Test-Suite/tests/draft2019-09/default.json +0 -49
  30. data/JSON-Schema-Test-Suite/tests/draft2019-09/defs.json +0 -24
  31. data/JSON-Schema-Test-Suite/tests/draft2019-09/dependencies.json +0 -268
  32. data/JSON-Schema-Test-Suite/tests/draft2019-09/enum.json +0 -179
  33. data/JSON-Schema-Test-Suite/tests/draft2019-09/exclusiveMaximum.json +0 -30
  34. data/JSON-Schema-Test-Suite/tests/draft2019-09/exclusiveMinimum.json +0 -30
  35. data/JSON-Schema-Test-Suite/tests/draft2019-09/format.json +0 -614
  36. data/JSON-Schema-Test-Suite/tests/draft2019-09/if-then-else.json +0 -188
  37. data/JSON-Schema-Test-Suite/tests/draft2019-09/items.json +0 -250
  38. data/JSON-Schema-Test-Suite/tests/draft2019-09/maxItems.json +0 -28
  39. data/JSON-Schema-Test-Suite/tests/draft2019-09/maxLength.json +0 -33
  40. data/JSON-Schema-Test-Suite/tests/draft2019-09/maxProperties.json +0 -38
  41. data/JSON-Schema-Test-Suite/tests/draft2019-09/maximum.json +0 -28
  42. data/JSON-Schema-Test-Suite/tests/draft2019-09/minItems.json +0 -28
  43. data/JSON-Schema-Test-Suite/tests/draft2019-09/minLength.json +0 -33
  44. data/JSON-Schema-Test-Suite/tests/draft2019-09/minProperties.json +0 -38
  45. data/JSON-Schema-Test-Suite/tests/draft2019-09/minimum.json +0 -59
  46. data/JSON-Schema-Test-Suite/tests/draft2019-09/multipleOf.json +0 -60
  47. data/JSON-Schema-Test-Suite/tests/draft2019-09/not.json +0 -117
  48. data/JSON-Schema-Test-Suite/tests/draft2019-09/oneOf.json +0 -206
  49. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/bignum.json +0 -105
  50. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/content.json +0 -77
  51. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/ecmascript-regex.json +0 -213
  52. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/date-time.json +0 -53
  53. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/date.json +0 -23
  54. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/email.json +0 -18
  55. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/hostname.json +0 -33
  56. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/idn-email.json +0 -18
  57. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/idn-hostname.json +0 -28
  58. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/ipv4.json +0 -33
  59. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/ipv6.json +0 -28
  60. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/iri-reference.json +0 -43
  61. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/iri.json +0 -53
  62. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/json-pointer.json +0 -168
  63. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/regex.json +0 -18
  64. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/relative-json-pointer.json +0 -33
  65. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/time.json +0 -23
  66. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri-reference.json +0 -43
  67. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri-template.json +0 -28
  68. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri.json +0 -103
  69. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/zeroTerminatedFloats.json +0 -15
  70. data/JSON-Schema-Test-Suite/tests/draft2019-09/pattern.json +0 -34
  71. data/JSON-Schema-Test-Suite/tests/draft2019-09/patternProperties.json +0 -151
  72. data/JSON-Schema-Test-Suite/tests/draft2019-09/properties.json +0 -167
  73. data/JSON-Schema-Test-Suite/tests/draft2019-09/propertyNames.json +0 -78
  74. data/JSON-Schema-Test-Suite/tests/draft2019-09/ref.json +0 -359
  75. data/JSON-Schema-Test-Suite/tests/draft2019-09/refRemote.json +0 -167
  76. data/JSON-Schema-Test-Suite/tests/draft2019-09/required.json +0 -105
  77. data/JSON-Schema-Test-Suite/tests/draft2019-09/type.json +0 -464
  78. data/JSON-Schema-Test-Suite/tests/draft2019-09/uniqueItems.json +0 -173
  79. data/JSON-Schema-Test-Suite/tests/draft3/additionalItems.json +0 -82
  80. data/JSON-Schema-Test-Suite/tests/draft3/additionalProperties.json +0 -133
  81. data/JSON-Schema-Test-Suite/tests/draft3/default.json +0 -49
  82. data/JSON-Schema-Test-Suite/tests/draft3/dependencies.json +0 -118
  83. data/JSON-Schema-Test-Suite/tests/draft3/disallow.json +0 -80
  84. data/JSON-Schema-Test-Suite/tests/draft3/divisibleBy.json +0 -60
  85. data/JSON-Schema-Test-Suite/tests/draft3/enum.json +0 -71
  86. data/JSON-Schema-Test-Suite/tests/draft3/extends.json +0 -94
  87. data/JSON-Schema-Test-Suite/tests/draft3/format.json +0 -362
  88. data/JSON-Schema-Test-Suite/tests/draft3/items.json +0 -46
  89. data/JSON-Schema-Test-Suite/tests/draft3/maxItems.json +0 -28
  90. data/JSON-Schema-Test-Suite/tests/draft3/maxLength.json +0 -33
  91. data/JSON-Schema-Test-Suite/tests/draft3/maximum.json +0 -42
  92. data/JSON-Schema-Test-Suite/tests/draft3/minItems.json +0 -28
  93. data/JSON-Schema-Test-Suite/tests/draft3/minLength.json +0 -33
  94. data/JSON-Schema-Test-Suite/tests/draft3/minimum.json +0 -73
  95. data/JSON-Schema-Test-Suite/tests/draft3/optional/bignum.json +0 -107
  96. data/JSON-Schema-Test-Suite/tests/draft3/optional/ecmascript-regex.json +0 -18
  97. data/JSON-Schema-Test-Suite/tests/draft3/optional/format.json +0 -227
  98. data/JSON-Schema-Test-Suite/tests/draft3/optional/zeroTerminatedFloats.json +0 -15
  99. data/JSON-Schema-Test-Suite/tests/draft3/pattern.json +0 -34
  100. data/JSON-Schema-Test-Suite/tests/draft3/patternProperties.json +0 -115
  101. data/JSON-Schema-Test-Suite/tests/draft3/properties.json +0 -97
  102. data/JSON-Schema-Test-Suite/tests/draft3/ref.json +0 -192
  103. data/JSON-Schema-Test-Suite/tests/draft3/refRemote.json +0 -74
  104. data/JSON-Schema-Test-Suite/tests/draft3/required.json +0 -53
  105. data/JSON-Schema-Test-Suite/tests/draft3/type.json +0 -489
  106. data/JSON-Schema-Test-Suite/tests/draft3/uniqueItems.json +0 -163
  107. data/JSON-Schema-Test-Suite/tests/draft4/additionalItems.json +0 -87
  108. data/JSON-Schema-Test-Suite/tests/draft4/additionalProperties.json +0 -133
  109. data/JSON-Schema-Test-Suite/tests/draft4/allOf.json +0 -185
  110. data/JSON-Schema-Test-Suite/tests/draft4/anyOf.json +0 -156
  111. data/JSON-Schema-Test-Suite/tests/draft4/default.json +0 -49
  112. data/JSON-Schema-Test-Suite/tests/draft4/definitions.json +0 -32
  113. data/JSON-Schema-Test-Suite/tests/draft4/dependencies.json +0 -194
  114. data/JSON-Schema-Test-Suite/tests/draft4/enum.json +0 -179
  115. data/JSON-Schema-Test-Suite/tests/draft4/format.json +0 -218
  116. data/JSON-Schema-Test-Suite/tests/draft4/items.json +0 -195
  117. data/JSON-Schema-Test-Suite/tests/draft4/maxItems.json +0 -28
  118. data/JSON-Schema-Test-Suite/tests/draft4/maxLength.json +0 -33
  119. data/JSON-Schema-Test-Suite/tests/draft4/maxProperties.json +0 -38
  120. data/JSON-Schema-Test-Suite/tests/draft4/maximum.json +0 -73
  121. data/JSON-Schema-Test-Suite/tests/draft4/minItems.json +0 -28
  122. data/JSON-Schema-Test-Suite/tests/draft4/minLength.json +0 -33
  123. data/JSON-Schema-Test-Suite/tests/draft4/minProperties.json +0 -38
  124. data/JSON-Schema-Test-Suite/tests/draft4/minimum.json +0 -104
  125. data/JSON-Schema-Test-Suite/tests/draft4/multipleOf.json +0 -60
  126. data/JSON-Schema-Test-Suite/tests/draft4/not.json +0 -96
  127. data/JSON-Schema-Test-Suite/tests/draft4/oneOf.json +0 -162
  128. data/JSON-Schema-Test-Suite/tests/draft4/optional/bignum.json +0 -107
  129. data/JSON-Schema-Test-Suite/tests/draft4/optional/ecmascript-regex.json +0 -213
  130. data/JSON-Schema-Test-Suite/tests/draft4/optional/format.json +0 -253
  131. data/JSON-Schema-Test-Suite/tests/draft4/optional/zeroTerminatedFloats.json +0 -15
  132. data/JSON-Schema-Test-Suite/tests/draft4/pattern.json +0 -34
  133. data/JSON-Schema-Test-Suite/tests/draft4/patternProperties.json +0 -120
  134. data/JSON-Schema-Test-Suite/tests/draft4/properties.json +0 -136
  135. data/JSON-Schema-Test-Suite/tests/draft4/ref.json +0 -411
  136. data/JSON-Schema-Test-Suite/tests/draft4/refRemote.json +0 -171
  137. data/JSON-Schema-Test-Suite/tests/draft4/required.json +0 -89
  138. data/JSON-Schema-Test-Suite/tests/draft4/type.json +0 -464
  139. data/JSON-Schema-Test-Suite/tests/draft4/uniqueItems.json +0 -173
  140. data/JSON-Schema-Test-Suite/tests/draft6/additionalItems.json +0 -87
  141. data/JSON-Schema-Test-Suite/tests/draft6/additionalProperties.json +0 -133
  142. data/JSON-Schema-Test-Suite/tests/draft6/allOf.json +0 -218
  143. data/JSON-Schema-Test-Suite/tests/draft6/anyOf.json +0 -189
  144. data/JSON-Schema-Test-Suite/tests/draft6/boolean_schema.json +0 -104
  145. data/JSON-Schema-Test-Suite/tests/draft6/const.json +0 -170
  146. data/JSON-Schema-Test-Suite/tests/draft6/contains.json +0 -100
  147. data/JSON-Schema-Test-Suite/tests/draft6/default.json +0 -49
  148. data/JSON-Schema-Test-Suite/tests/draft6/definitions.json +0 -32
  149. data/JSON-Schema-Test-Suite/tests/draft6/dependencies.json +0 -268
  150. data/JSON-Schema-Test-Suite/tests/draft6/enum.json +0 -179
  151. data/JSON-Schema-Test-Suite/tests/draft6/exclusiveMaximum.json +0 -30
  152. data/JSON-Schema-Test-Suite/tests/draft6/exclusiveMinimum.json +0 -30
  153. data/JSON-Schema-Test-Suite/tests/draft6/format.json +0 -326
  154. data/JSON-Schema-Test-Suite/tests/draft6/items.json +0 -250
  155. data/JSON-Schema-Test-Suite/tests/draft6/maxItems.json +0 -28
  156. data/JSON-Schema-Test-Suite/tests/draft6/maxLength.json +0 -33
  157. data/JSON-Schema-Test-Suite/tests/draft6/maxProperties.json +0 -38
  158. data/JSON-Schema-Test-Suite/tests/draft6/maximum.json +0 -28
  159. data/JSON-Schema-Test-Suite/tests/draft6/minItems.json +0 -28
  160. data/JSON-Schema-Test-Suite/tests/draft6/minLength.json +0 -33
  161. data/JSON-Schema-Test-Suite/tests/draft6/minProperties.json +0 -38
  162. data/JSON-Schema-Test-Suite/tests/draft6/minimum.json +0 -59
  163. data/JSON-Schema-Test-Suite/tests/draft6/multipleOf.json +0 -60
  164. data/JSON-Schema-Test-Suite/tests/draft6/not.json +0 -117
  165. data/JSON-Schema-Test-Suite/tests/draft6/oneOf.json +0 -206
  166. data/JSON-Schema-Test-Suite/tests/draft6/optional/bignum.json +0 -105
  167. data/JSON-Schema-Test-Suite/tests/draft6/optional/ecmascript-regex.json +0 -213
  168. data/JSON-Schema-Test-Suite/tests/draft6/optional/format.json +0 -491
  169. data/JSON-Schema-Test-Suite/tests/draft6/optional/zeroTerminatedFloats.json +0 -15
  170. data/JSON-Schema-Test-Suite/tests/draft6/pattern.json +0 -34
  171. data/JSON-Schema-Test-Suite/tests/draft6/patternProperties.json +0 -151
  172. data/JSON-Schema-Test-Suite/tests/draft6/properties.json +0 -167
  173. data/JSON-Schema-Test-Suite/tests/draft6/propertyNames.json +0 -78
  174. data/JSON-Schema-Test-Suite/tests/draft6/ref.json +0 -443
  175. data/JSON-Schema-Test-Suite/tests/draft6/refRemote.json +0 -171
  176. data/JSON-Schema-Test-Suite/tests/draft6/required.json +0 -105
  177. data/JSON-Schema-Test-Suite/tests/draft6/type.json +0 -464
  178. data/JSON-Schema-Test-Suite/tests/draft6/uniqueItems.json +0 -173
  179. data/JSON-Schema-Test-Suite/tests/draft7/additionalItems.json +0 -87
  180. data/JSON-Schema-Test-Suite/tests/draft7/additionalProperties.json +0 -133
  181. data/JSON-Schema-Test-Suite/tests/draft7/allOf.json +0 -218
  182. data/JSON-Schema-Test-Suite/tests/draft7/anyOf.json +0 -189
  183. data/JSON-Schema-Test-Suite/tests/draft7/boolean_schema.json +0 -104
  184. data/JSON-Schema-Test-Suite/tests/draft7/const.json +0 -170
  185. data/JSON-Schema-Test-Suite/tests/draft7/contains.json +0 -100
  186. data/JSON-Schema-Test-Suite/tests/draft7/default.json +0 -49
  187. data/JSON-Schema-Test-Suite/tests/draft7/definitions.json +0 -32
  188. data/JSON-Schema-Test-Suite/tests/draft7/dependencies.json +0 -268
  189. data/JSON-Schema-Test-Suite/tests/draft7/enum.json +0 -179
  190. data/JSON-Schema-Test-Suite/tests/draft7/exclusiveMaximum.json +0 -30
  191. data/JSON-Schema-Test-Suite/tests/draft7/exclusiveMinimum.json +0 -30
  192. data/JSON-Schema-Test-Suite/tests/draft7/format.json +0 -614
  193. data/JSON-Schema-Test-Suite/tests/draft7/if-then-else.json +0 -188
  194. data/JSON-Schema-Test-Suite/tests/draft7/items.json +0 -250
  195. data/JSON-Schema-Test-Suite/tests/draft7/maxItems.json +0 -28
  196. data/JSON-Schema-Test-Suite/tests/draft7/maxLength.json +0 -33
  197. data/JSON-Schema-Test-Suite/tests/draft7/maxProperties.json +0 -38
  198. data/JSON-Schema-Test-Suite/tests/draft7/maximum.json +0 -28
  199. data/JSON-Schema-Test-Suite/tests/draft7/minItems.json +0 -28
  200. data/JSON-Schema-Test-Suite/tests/draft7/minLength.json +0 -33
  201. data/JSON-Schema-Test-Suite/tests/draft7/minProperties.json +0 -38
  202. data/JSON-Schema-Test-Suite/tests/draft7/minimum.json +0 -59
  203. data/JSON-Schema-Test-Suite/tests/draft7/multipleOf.json +0 -60
  204. data/JSON-Schema-Test-Suite/tests/draft7/not.json +0 -117
  205. data/JSON-Schema-Test-Suite/tests/draft7/oneOf.json +0 -206
  206. data/JSON-Schema-Test-Suite/tests/draft7/optional/bignum.json +0 -105
  207. data/JSON-Schema-Test-Suite/tests/draft7/optional/content.json +0 -77
  208. data/JSON-Schema-Test-Suite/tests/draft7/optional/ecmascript-regex.json +0 -213
  209. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/date-time.json +0 -53
  210. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/date.json +0 -23
  211. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/email.json +0 -18
  212. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/hostname.json +0 -33
  213. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/idn-email.json +0 -18
  214. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/idn-hostname.json +0 -28
  215. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/ipv4.json +0 -33
  216. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/ipv6.json +0 -28
  217. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/iri-reference.json +0 -43
  218. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/iri.json +0 -53
  219. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/json-pointer.json +0 -168
  220. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/regex.json +0 -18
  221. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/relative-json-pointer.json +0 -33
  222. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/time.json +0 -23
  223. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/uri-reference.json +0 -43
  224. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/uri-template.json +0 -28
  225. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/uri.json +0 -103
  226. data/JSON-Schema-Test-Suite/tests/draft7/optional/zeroTerminatedFloats.json +0 -15
  227. data/JSON-Schema-Test-Suite/tests/draft7/pattern.json +0 -34
  228. data/JSON-Schema-Test-Suite/tests/draft7/patternProperties.json +0 -151
  229. data/JSON-Schema-Test-Suite/tests/draft7/properties.json +0 -167
  230. data/JSON-Schema-Test-Suite/tests/draft7/propertyNames.json +0 -78
  231. data/JSON-Schema-Test-Suite/tests/draft7/ref.json +0 -443
  232. data/JSON-Schema-Test-Suite/tests/draft7/refRemote.json +0 -171
  233. data/JSON-Schema-Test-Suite/tests/draft7/required.json +0 -105
  234. data/JSON-Schema-Test-Suite/tests/draft7/type.json +0 -464
  235. data/JSON-Schema-Test-Suite/tests/draft7/uniqueItems.json +0 -173
  236. data/JSON-Schema-Test-Suite/tests/latest +0 -1
  237. data/JSON-Schema-Test-Suite/tox.ini +0 -9
@@ -1,213 +0,0 @@
1
- [
2
- {
3
- "description": "ECMA 262 regex non-compliance",
4
- "schema": { "format": "regex" },
5
- "tests": [
6
- {
7
- "description": "ECMA 262 has no support for \\Z anchor from .NET",
8
- "data": "^\\S(|(.|\\n)*\\S)\\Z",
9
- "valid": false
10
- }
11
- ]
12
- },
13
- {
14
- "description": "ECMA 262 regex $ does not match trailing newline",
15
- "schema": {
16
- "type": "string",
17
- "pattern": "^abc$"
18
- },
19
- "tests": [
20
- {
21
- "description": "matches in Python, but should not in jsonschema",
22
- "data": "abc\n",
23
- "valid": false
24
- },
25
- {
26
- "description": "should match",
27
- "data": "abc",
28
- "valid": true
29
- }
30
- ]
31
- },
32
- {
33
- "description": "ECMA 262 regex converts \\a to ascii BEL",
34
- "schema": {
35
- "type": "string",
36
- "pattern": "^\\a$"
37
- },
38
- "tests": [
39
- {
40
- "description": "does not match",
41
- "data": "\\a",
42
- "valid": false
43
- },
44
- {
45
- "description": "matches",
46
- "data": "\u0007",
47
- "valid": true
48
- }
49
- ]
50
- },
51
- {
52
- "description": "ECMA 262 regex escapes control codes with \\c and upper letter",
53
- "schema": {
54
- "type": "string",
55
- "pattern": "^\\cC$"
56
- },
57
- "tests": [
58
- {
59
- "description": "does not match",
60
- "data": "\\cC",
61
- "valid": false
62
- },
63
- {
64
- "description": "matches",
65
- "data": "\u0003",
66
- "valid": true
67
- }
68
- ]
69
- },
70
- {
71
- "description": "ECMA 262 regex escapes control codes with \\c and lower letter",
72
- "schema": {
73
- "type": "string",
74
- "pattern": "^\\cc$"
75
- },
76
- "tests": [
77
- {
78
- "description": "does not match",
79
- "data": "\\cc",
80
- "valid": false
81
- },
82
- {
83
- "description": "matches",
84
- "data": "\u0003",
85
- "valid": true
86
- }
87
- ]
88
- },
89
- {
90
- "description": "ECMA 262 \\d matches ascii digits only",
91
- "schema": {
92
- "type": "string",
93
- "pattern": "^\\d$"
94
- },
95
- "tests": [
96
- {
97
- "description": "ASCII zero matches",
98
- "data": "0",
99
- "valid": true
100
- },
101
- {
102
- "description": "NKO DIGIT ZERO does not match (unlike e.g. Python)",
103
- "data": "߀",
104
- "valid": false
105
- },
106
- {
107
- "description": "NKO DIGIT ZERO (as \\u escape) does not match",
108
- "data": "\u07c0",
109
- "valid": false
110
- }
111
- ]
112
- },
113
- {
114
- "description": "ECMA 262 \\D matches everything but ascii digits",
115
- "schema": {
116
- "type": "string",
117
- "pattern": "^\\D$"
118
- },
119
- "tests": [
120
- {
121
- "description": "ASCII zero does not match",
122
- "data": "0",
123
- "valid": false
124
- },
125
- {
126
- "description": "NKO DIGIT ZERO matches (unlike e.g. Python)",
127
- "data": "߀",
128
- "valid": true
129
- },
130
- {
131
- "description": "NKO DIGIT ZERO (as \\u escape) matches",
132
- "data": "\u07c0",
133
- "valid": true
134
- }
135
- ]
136
- },
137
- {
138
- "description": "ECMA 262 \\w matches ascii letters only",
139
- "schema": {
140
- "type": "string",
141
- "pattern": "^\\w$"
142
- },
143
- "tests": [
144
- {
145
- "description": "ASCII 'a' matches",
146
- "data": "a",
147
- "valid": true
148
- },
149
- {
150
- "description": "latin-1 e-acute does not match (unlike e.g. Python)",
151
- "data": "é",
152
- "valid": false
153
- }
154
- ]
155
- },
156
- {
157
- "description": "ECMA 262 \\w matches everything but ascii letters",
158
- "schema": {
159
- "type": "string",
160
- "pattern": "^\\W$"
161
- },
162
- "tests": [
163
- {
164
- "description": "ASCII 'a' does not match",
165
- "data": "a",
166
- "valid": false
167
- },
168
- {
169
- "description": "latin-1 e-acute matches (unlike e.g. Python)",
170
- "data": "é",
171
- "valid": true
172
- }
173
- ]
174
- },
175
- {
176
- "description": "ECMA 262 \\s matches ascii whitespace only",
177
- "schema": {
178
- "type": "string",
179
- "pattern": "^\\s$"
180
- },
181
- "tests": [
182
- {
183
- "description": "ASCII space matches",
184
- "data": " ",
185
- "valid": true
186
- },
187
- {
188
- "description": "latin-1 non-breaking-space does not match (unlike e.g. Python)",
189
- "data": "\u00a0",
190
- "valid": false
191
- }
192
- ]
193
- },
194
- {
195
- "description": "ECMA 262 \\S matches everything but ascii whitespace",
196
- "schema": {
197
- "type": "string",
198
- "pattern": "^\\S$"
199
- },
200
- "tests": [
201
- {
202
- "description": "ASCII space does not match",
203
- "data": " ",
204
- "valid": false
205
- },
206
- {
207
- "description": "latin-1 non-breaking-space matches (unlike e.g. Python)",
208
- "data": "\u00a0",
209
- "valid": true
210
- }
211
- ]
212
- }
213
- ]
@@ -1,53 +0,0 @@
1
- [
2
- {
3
- "description": "validation of date-time strings",
4
- "schema": {"format": "date-time"},
5
- "tests": [
6
- {
7
- "description": "a valid date-time string",
8
- "data": "1963-06-19T08:30:06.283185Z",
9
- "valid": true
10
- },
11
- {
12
- "description": "a valid date-time string without second fraction",
13
- "data": "1963-06-19T08:30:06Z",
14
- "valid": true
15
- },
16
- {
17
- "description": "a valid date-time string with plus offset",
18
- "data": "1937-01-01T12:00:27.87+00:20",
19
- "valid": true
20
- },
21
- {
22
- "description": "a valid date-time string with minus offset",
23
- "data": "1990-12-31T15:59:50.123-08:00",
24
- "valid": true
25
- },
26
- {
27
- "description": "a invalid day in date-time string",
28
- "data": "1990-02-31T15:59:60.123-08:00",
29
- "valid": false
30
- },
31
- {
32
- "description": "an invalid offset in date-time string",
33
- "data": "1990-12-31T15:59:60-24:00",
34
- "valid": false
35
- },
36
- {
37
- "description": "an invalid date-time string",
38
- "data": "06/19/1963 08:30:06 PST",
39
- "valid": false
40
- },
41
- {
42
- "description": "case-insensitive T and Z",
43
- "data": "1963-06-19t08:30:06.283185z",
44
- "valid": true
45
- },
46
- {
47
- "description": "only RFC3339 not all of ISO 8601 are valid",
48
- "data": "2013-350T01:01:01",
49
- "valid": false
50
- }
51
- ]
52
- }
53
- ]
@@ -1,23 +0,0 @@
1
- [
2
- {
3
- "description": "validation of date strings",
4
- "schema": {"format": "date"},
5
- "tests": [
6
- {
7
- "description": "a valid date string",
8
- "data": "1963-06-19",
9
- "valid": true
10
- },
11
- {
12
- "description": "an invalid date-time string",
13
- "data": "06/19/1963",
14
- "valid": false
15
- },
16
- {
17
- "description": "only RFC3339 not all of ISO 8601 are valid",
18
- "data": "2013-350",
19
- "valid": false
20
- }
21
- ]
22
- }
23
- ]
@@ -1,18 +0,0 @@
1
- [
2
- {
3
- "description": "validation of e-mail addresses",
4
- "schema": {"format": "email"},
5
- "tests": [
6
- {
7
- "description": "a valid e-mail address",
8
- "data": "joe.bloggs@example.com",
9
- "valid": true
10
- },
11
- {
12
- "description": "an invalid e-mail address",
13
- "data": "2962",
14
- "valid": false
15
- }
16
- ]
17
- }
18
- ]
@@ -1,33 +0,0 @@
1
- [
2
- {
3
- "description": "validation of host names",
4
- "schema": {"format": "hostname"},
5
- "tests": [
6
- {
7
- "description": "a valid host name",
8
- "data": "www.example.com",
9
- "valid": true
10
- },
11
- {
12
- "description": "a valid punycoded IDN hostname",
13
- "data": "xn--4gbwdl.xn--wgbh1c",
14
- "valid": true
15
- },
16
- {
17
- "description": "a host name starting with an illegal character",
18
- "data": "-a-host-name-that-starts-with--",
19
- "valid": false
20
- },
21
- {
22
- "description": "a host name containing illegal characters",
23
- "data": "not_a_valid_host_name",
24
- "valid": false
25
- },
26
- {
27
- "description": "a host name with a component too long",
28
- "data": "a-vvvvvvvvvvvvvvvveeeeeeeeeeeeeeeerrrrrrrrrrrrrrrryyyyyyyyyyyyyyyy-long-host-name-component",
29
- "valid": false
30
- }
31
- ]
32
- }
33
- ]
@@ -1,18 +0,0 @@
1
- [
2
- {
3
- "description": "validation of an internationalized e-mail addresses",
4
- "schema": {"format": "idn-email"},
5
- "tests": [
6
- {
7
- "description": "a valid idn e-mail (example@example.test in Hangul)",
8
- "data": "실례@실례.테스트",
9
- "valid": true
10
- },
11
- {
12
- "description": "an invalid idn e-mail address",
13
- "data": "2962",
14
- "valid": false
15
- }
16
- ]
17
- }
18
- ]
@@ -1,28 +0,0 @@
1
- [
2
- {
3
- "description": "validation of internationalized host names",
4
- "schema": {"format": "idn-hostname"},
5
- "tests": [
6
- {
7
- "description": "a valid host name (example.test in Hangul)",
8
- "data": "실례.테스트",
9
- "valid": true
10
- },
11
- {
12
- "description": "illegal first char U+302E Hangul single dot tone mark",
13
- "data": "〮실례.테스트",
14
- "valid": false
15
- },
16
- {
17
- "description": "contains illegal char U+302E Hangul single dot tone mark",
18
- "data": "실〮례.테스트",
19
- "valid": false
20
- },
21
- {
22
- "description": "a host name with a component too long",
23
- "data": "실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실실례례테스트례례례례례례례례례례례례례례례례례테스트례례례례례례례례례례례례례례례례례례례테스트례례례례례례례례례례례례테스트례례실례.테스트",
24
- "valid": false
25
- }
26
- ]
27
- }
28
- ]
@@ -1,33 +0,0 @@
1
- [
2
- {
3
- "description": "validation of IP addresses",
4
- "schema": {"format": "ipv4"},
5
- "tests": [
6
- {
7
- "description": "a valid IP address",
8
- "data": "192.168.0.1",
9
- "valid": true
10
- },
11
- {
12
- "description": "an IP address with too many components",
13
- "data": "127.0.0.0.1",
14
- "valid": false
15
- },
16
- {
17
- "description": "an IP address with out-of-range values",
18
- "data": "256.256.256.256",
19
- "valid": false
20
- },
21
- {
22
- "description": "an IP address without 4 components",
23
- "data": "127.0",
24
- "valid": false
25
- },
26
- {
27
- "description": "an IP address as an integer",
28
- "data": "0x7f000001",
29
- "valid": false
30
- }
31
- ]
32
- }
33
- ]
@@ -1,28 +0,0 @@
1
- [
2
- {
3
- "description": "validation of IPv6 addresses",
4
- "schema": {"format": "ipv6"},
5
- "tests": [
6
- {
7
- "description": "a valid IPv6 address",
8
- "data": "::1",
9
- "valid": true
10
- },
11
- {
12
- "description": "an IPv6 address with out-of-range values",
13
- "data": "12345::",
14
- "valid": false
15
- },
16
- {
17
- "description": "an IPv6 address with too many components",
18
- "data": "1:1:1:1:1:1:1:1:1:1:1:1:1:1:1:1",
19
- "valid": false
20
- },
21
- {
22
- "description": "an IPv6 address containing illegal characters",
23
- "data": "::laptop",
24
- "valid": false
25
- }
26
- ]
27
- }
28
- ]
@@ -1,43 +0,0 @@
1
- [
2
- {
3
- "description": "validation of IRI References",
4
- "schema": {"format": "iri-reference"},
5
- "tests": [
6
- {
7
- "description": "a valid IRI",
8
- "data": "http://ƒøø.ßår/?∂éœ=πîx#πîüx",
9
- "valid": true
10
- },
11
- {
12
- "description": "a valid protocol-relative IRI Reference",
13
- "data": "//ƒøø.ßår/?∂éœ=πîx#πîüx",
14
- "valid": true
15
- },
16
- {
17
- "description": "a valid relative IRI Reference",
18
- "data": "/âππ",
19
- "valid": true
20
- },
21
- {
22
- "description": "an invalid IRI Reference",
23
- "data": "\\\\WINDOWS\\filëßåré",
24
- "valid": false
25
- },
26
- {
27
- "description": "a valid IRI Reference",
28
- "data": "âππ",
29
- "valid": true
30
- },
31
- {
32
- "description": "a valid IRI fragment",
33
- "data": "#ƒrägmênt",
34
- "valid": true
35
- },
36
- {
37
- "description": "an invalid IRI fragment",
38
- "data": "#ƒräg\\mênt",
39
- "valid": false
40
- }
41
- ]
42
- }
43
- ]
@@ -1,53 +0,0 @@
1
- [
2
- {
3
- "description": "validation of IRIs",
4
- "schema": {"format": "iri"},
5
- "tests": [
6
- {
7
- "description": "a valid IRI with anchor tag",
8
- "data": "http://ƒøø.ßår/?∂éœ=πîx#πîüx",
9
- "valid": true
10
- },
11
- {
12
- "description": "a valid IRI with anchor tag and parantheses",
13
- "data": "http://ƒøø.com/blah_(wîkïpédiå)_blah#ßité-1",
14
- "valid": true
15
- },
16
- {
17
- "description": "a valid IRI with URL-encoded stuff",
18
- "data": "http://ƒøø.ßår/?q=Test%20URL-encoded%20stuff",
19
- "valid": true
20
- },
21
- {
22
- "description": "a valid IRI with many special characters",
23
- "data": "http://-.~_!$&'()*+,;=:%40:80%2f::::::@example.com",
24
- "valid": true
25
- },
26
- {
27
- "description": "a valid IRI based on IPv6",
28
- "data": "http://[2001:0db8:85a3:0000:0000:8a2e:0370:7334]",
29
- "valid": true
30
- },
31
- {
32
- "description": "an invalid IRI based on IPv6",
33
- "data": "http://2001:0db8:85a3:0000:0000:8a2e:0370:7334",
34
- "valid": false
35
- },
36
- {
37
- "description": "an invalid relative IRI Reference",
38
- "data": "/abc",
39
- "valid": false
40
- },
41
- {
42
- "description": "an invalid IRI",
43
- "data": "\\\\WINDOWS\\filëßåré",
44
- "valid": false
45
- },
46
- {
47
- "description": "an invalid IRI though valid IRI reference",
48
- "data": "âππ",
49
- "valid": false
50
- }
51
- ]
52
- }
53
- ]