json_schemer 0.2.9 → 0.2.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (239) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +3 -9
  3. data/Gemfile.lock +6 -6
  4. data/json_schemer.gemspec +2 -2
  5. data/lib/json_schemer.rb +2 -0
  6. data/lib/json_schemer/errors.rb +31 -0
  7. data/lib/json_schemer/schema/base.rb +13 -16
  8. data/lib/json_schemer/version.rb +1 -1
  9. metadata +5 -234
  10. data/JSON-Schema-Test-Suite/.gitignore +0 -1
  11. data/JSON-Schema-Test-Suite/.travis.yml +0 -8
  12. data/JSON-Schema-Test-Suite/LICENSE +0 -19
  13. data/JSON-Schema-Test-Suite/README.md +0 -181
  14. data/JSON-Schema-Test-Suite/bin/jsonschema_suite +0 -298
  15. data/JSON-Schema-Test-Suite/index.js +0 -45
  16. data/JSON-Schema-Test-Suite/package.json +0 -28
  17. data/JSON-Schema-Test-Suite/remotes/folder/folderInteger.json +0 -3
  18. data/JSON-Schema-Test-Suite/remotes/integer.json +0 -3
  19. data/JSON-Schema-Test-Suite/remotes/name-defs.json +0 -15
  20. data/JSON-Schema-Test-Suite/remotes/name.json +0 -15
  21. data/JSON-Schema-Test-Suite/remotes/subSchemas.json +0 -8
  22. data/JSON-Schema-Test-Suite/test-schema.json +0 -59
  23. data/JSON-Schema-Test-Suite/tests/draft2019-09/additionalItems.json +0 -87
  24. data/JSON-Schema-Test-Suite/tests/draft2019-09/additionalProperties.json +0 -133
  25. data/JSON-Schema-Test-Suite/tests/draft2019-09/allOf.json +0 -218
  26. data/JSON-Schema-Test-Suite/tests/draft2019-09/anchor.json +0 -87
  27. data/JSON-Schema-Test-Suite/tests/draft2019-09/anyOf.json +0 -189
  28. data/JSON-Schema-Test-Suite/tests/draft2019-09/boolean_schema.json +0 -104
  29. data/JSON-Schema-Test-Suite/tests/draft2019-09/const.json +0 -170
  30. data/JSON-Schema-Test-Suite/tests/draft2019-09/contains.json +0 -95
  31. data/JSON-Schema-Test-Suite/tests/draft2019-09/default.json +0 -49
  32. data/JSON-Schema-Test-Suite/tests/draft2019-09/defs.json +0 -24
  33. data/JSON-Schema-Test-Suite/tests/draft2019-09/dependencies.json +0 -268
  34. data/JSON-Schema-Test-Suite/tests/draft2019-09/enum.json +0 -179
  35. data/JSON-Schema-Test-Suite/tests/draft2019-09/exclusiveMaximum.json +0 -30
  36. data/JSON-Schema-Test-Suite/tests/draft2019-09/exclusiveMinimum.json +0 -30
  37. data/JSON-Schema-Test-Suite/tests/draft2019-09/format.json +0 -614
  38. data/JSON-Schema-Test-Suite/tests/draft2019-09/if-then-else.json +0 -188
  39. data/JSON-Schema-Test-Suite/tests/draft2019-09/items.json +0 -250
  40. data/JSON-Schema-Test-Suite/tests/draft2019-09/maxItems.json +0 -28
  41. data/JSON-Schema-Test-Suite/tests/draft2019-09/maxLength.json +0 -33
  42. data/JSON-Schema-Test-Suite/tests/draft2019-09/maxProperties.json +0 -38
  43. data/JSON-Schema-Test-Suite/tests/draft2019-09/maximum.json +0 -28
  44. data/JSON-Schema-Test-Suite/tests/draft2019-09/minItems.json +0 -28
  45. data/JSON-Schema-Test-Suite/tests/draft2019-09/minLength.json +0 -33
  46. data/JSON-Schema-Test-Suite/tests/draft2019-09/minProperties.json +0 -38
  47. data/JSON-Schema-Test-Suite/tests/draft2019-09/minimum.json +0 -59
  48. data/JSON-Schema-Test-Suite/tests/draft2019-09/multipleOf.json +0 -60
  49. data/JSON-Schema-Test-Suite/tests/draft2019-09/not.json +0 -117
  50. data/JSON-Schema-Test-Suite/tests/draft2019-09/oneOf.json +0 -206
  51. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/bignum.json +0 -105
  52. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/content.json +0 -77
  53. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/ecmascript-regex.json +0 -213
  54. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/date-time.json +0 -53
  55. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/date.json +0 -23
  56. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/email.json +0 -18
  57. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/hostname.json +0 -33
  58. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/idn-email.json +0 -18
  59. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/idn-hostname.json +0 -28
  60. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/ipv4.json +0 -33
  61. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/ipv6.json +0 -28
  62. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/iri-reference.json +0 -43
  63. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/iri.json +0 -53
  64. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/json-pointer.json +0 -168
  65. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/regex.json +0 -18
  66. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/relative-json-pointer.json +0 -33
  67. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/time.json +0 -23
  68. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri-reference.json +0 -43
  69. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri-template.json +0 -28
  70. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri.json +0 -103
  71. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/zeroTerminatedFloats.json +0 -15
  72. data/JSON-Schema-Test-Suite/tests/draft2019-09/pattern.json +0 -34
  73. data/JSON-Schema-Test-Suite/tests/draft2019-09/patternProperties.json +0 -151
  74. data/JSON-Schema-Test-Suite/tests/draft2019-09/properties.json +0 -167
  75. data/JSON-Schema-Test-Suite/tests/draft2019-09/propertyNames.json +0 -78
  76. data/JSON-Schema-Test-Suite/tests/draft2019-09/ref.json +0 -359
  77. data/JSON-Schema-Test-Suite/tests/draft2019-09/refRemote.json +0 -167
  78. data/JSON-Schema-Test-Suite/tests/draft2019-09/required.json +0 -105
  79. data/JSON-Schema-Test-Suite/tests/draft2019-09/type.json +0 -464
  80. data/JSON-Schema-Test-Suite/tests/draft2019-09/uniqueItems.json +0 -173
  81. data/JSON-Schema-Test-Suite/tests/draft3/additionalItems.json +0 -82
  82. data/JSON-Schema-Test-Suite/tests/draft3/additionalProperties.json +0 -133
  83. data/JSON-Schema-Test-Suite/tests/draft3/default.json +0 -49
  84. data/JSON-Schema-Test-Suite/tests/draft3/dependencies.json +0 -118
  85. data/JSON-Schema-Test-Suite/tests/draft3/disallow.json +0 -80
  86. data/JSON-Schema-Test-Suite/tests/draft3/divisibleBy.json +0 -60
  87. data/JSON-Schema-Test-Suite/tests/draft3/enum.json +0 -71
  88. data/JSON-Schema-Test-Suite/tests/draft3/extends.json +0 -94
  89. data/JSON-Schema-Test-Suite/tests/draft3/format.json +0 -362
  90. data/JSON-Schema-Test-Suite/tests/draft3/items.json +0 -46
  91. data/JSON-Schema-Test-Suite/tests/draft3/maxItems.json +0 -28
  92. data/JSON-Schema-Test-Suite/tests/draft3/maxLength.json +0 -33
  93. data/JSON-Schema-Test-Suite/tests/draft3/maximum.json +0 -42
  94. data/JSON-Schema-Test-Suite/tests/draft3/minItems.json +0 -28
  95. data/JSON-Schema-Test-Suite/tests/draft3/minLength.json +0 -33
  96. data/JSON-Schema-Test-Suite/tests/draft3/minimum.json +0 -73
  97. data/JSON-Schema-Test-Suite/tests/draft3/optional/bignum.json +0 -107
  98. data/JSON-Schema-Test-Suite/tests/draft3/optional/ecmascript-regex.json +0 -18
  99. data/JSON-Schema-Test-Suite/tests/draft3/optional/format.json +0 -227
  100. data/JSON-Schema-Test-Suite/tests/draft3/optional/zeroTerminatedFloats.json +0 -15
  101. data/JSON-Schema-Test-Suite/tests/draft3/pattern.json +0 -34
  102. data/JSON-Schema-Test-Suite/tests/draft3/patternProperties.json +0 -115
  103. data/JSON-Schema-Test-Suite/tests/draft3/properties.json +0 -97
  104. data/JSON-Schema-Test-Suite/tests/draft3/ref.json +0 -192
  105. data/JSON-Schema-Test-Suite/tests/draft3/refRemote.json +0 -74
  106. data/JSON-Schema-Test-Suite/tests/draft3/required.json +0 -53
  107. data/JSON-Schema-Test-Suite/tests/draft3/type.json +0 -489
  108. data/JSON-Schema-Test-Suite/tests/draft3/uniqueItems.json +0 -163
  109. data/JSON-Schema-Test-Suite/tests/draft4/additionalItems.json +0 -87
  110. data/JSON-Schema-Test-Suite/tests/draft4/additionalProperties.json +0 -133
  111. data/JSON-Schema-Test-Suite/tests/draft4/allOf.json +0 -185
  112. data/JSON-Schema-Test-Suite/tests/draft4/anyOf.json +0 -156
  113. data/JSON-Schema-Test-Suite/tests/draft4/default.json +0 -49
  114. data/JSON-Schema-Test-Suite/tests/draft4/definitions.json +0 -32
  115. data/JSON-Schema-Test-Suite/tests/draft4/dependencies.json +0 -194
  116. data/JSON-Schema-Test-Suite/tests/draft4/enum.json +0 -179
  117. data/JSON-Schema-Test-Suite/tests/draft4/format.json +0 -218
  118. data/JSON-Schema-Test-Suite/tests/draft4/items.json +0 -195
  119. data/JSON-Schema-Test-Suite/tests/draft4/maxItems.json +0 -28
  120. data/JSON-Schema-Test-Suite/tests/draft4/maxLength.json +0 -33
  121. data/JSON-Schema-Test-Suite/tests/draft4/maxProperties.json +0 -38
  122. data/JSON-Schema-Test-Suite/tests/draft4/maximum.json +0 -73
  123. data/JSON-Schema-Test-Suite/tests/draft4/minItems.json +0 -28
  124. data/JSON-Schema-Test-Suite/tests/draft4/minLength.json +0 -33
  125. data/JSON-Schema-Test-Suite/tests/draft4/minProperties.json +0 -38
  126. data/JSON-Schema-Test-Suite/tests/draft4/minimum.json +0 -104
  127. data/JSON-Schema-Test-Suite/tests/draft4/multipleOf.json +0 -60
  128. data/JSON-Schema-Test-Suite/tests/draft4/not.json +0 -96
  129. data/JSON-Schema-Test-Suite/tests/draft4/oneOf.json +0 -162
  130. data/JSON-Schema-Test-Suite/tests/draft4/optional/bignum.json +0 -107
  131. data/JSON-Schema-Test-Suite/tests/draft4/optional/ecmascript-regex.json +0 -213
  132. data/JSON-Schema-Test-Suite/tests/draft4/optional/format.json +0 -253
  133. data/JSON-Schema-Test-Suite/tests/draft4/optional/zeroTerminatedFloats.json +0 -15
  134. data/JSON-Schema-Test-Suite/tests/draft4/pattern.json +0 -34
  135. data/JSON-Schema-Test-Suite/tests/draft4/patternProperties.json +0 -120
  136. data/JSON-Schema-Test-Suite/tests/draft4/properties.json +0 -136
  137. data/JSON-Schema-Test-Suite/tests/draft4/ref.json +0 -411
  138. data/JSON-Schema-Test-Suite/tests/draft4/refRemote.json +0 -171
  139. data/JSON-Schema-Test-Suite/tests/draft4/required.json +0 -89
  140. data/JSON-Schema-Test-Suite/tests/draft4/type.json +0 -464
  141. data/JSON-Schema-Test-Suite/tests/draft4/uniqueItems.json +0 -173
  142. data/JSON-Schema-Test-Suite/tests/draft6/additionalItems.json +0 -87
  143. data/JSON-Schema-Test-Suite/tests/draft6/additionalProperties.json +0 -133
  144. data/JSON-Schema-Test-Suite/tests/draft6/allOf.json +0 -218
  145. data/JSON-Schema-Test-Suite/tests/draft6/anyOf.json +0 -189
  146. data/JSON-Schema-Test-Suite/tests/draft6/boolean_schema.json +0 -104
  147. data/JSON-Schema-Test-Suite/tests/draft6/const.json +0 -170
  148. data/JSON-Schema-Test-Suite/tests/draft6/contains.json +0 -100
  149. data/JSON-Schema-Test-Suite/tests/draft6/default.json +0 -49
  150. data/JSON-Schema-Test-Suite/tests/draft6/definitions.json +0 -32
  151. data/JSON-Schema-Test-Suite/tests/draft6/dependencies.json +0 -268
  152. data/JSON-Schema-Test-Suite/tests/draft6/enum.json +0 -179
  153. data/JSON-Schema-Test-Suite/tests/draft6/exclusiveMaximum.json +0 -30
  154. data/JSON-Schema-Test-Suite/tests/draft6/exclusiveMinimum.json +0 -30
  155. data/JSON-Schema-Test-Suite/tests/draft6/format.json +0 -326
  156. data/JSON-Schema-Test-Suite/tests/draft6/items.json +0 -250
  157. data/JSON-Schema-Test-Suite/tests/draft6/maxItems.json +0 -28
  158. data/JSON-Schema-Test-Suite/tests/draft6/maxLength.json +0 -33
  159. data/JSON-Schema-Test-Suite/tests/draft6/maxProperties.json +0 -38
  160. data/JSON-Schema-Test-Suite/tests/draft6/maximum.json +0 -28
  161. data/JSON-Schema-Test-Suite/tests/draft6/minItems.json +0 -28
  162. data/JSON-Schema-Test-Suite/tests/draft6/minLength.json +0 -33
  163. data/JSON-Schema-Test-Suite/tests/draft6/minProperties.json +0 -38
  164. data/JSON-Schema-Test-Suite/tests/draft6/minimum.json +0 -59
  165. data/JSON-Schema-Test-Suite/tests/draft6/multipleOf.json +0 -60
  166. data/JSON-Schema-Test-Suite/tests/draft6/not.json +0 -117
  167. data/JSON-Schema-Test-Suite/tests/draft6/oneOf.json +0 -206
  168. data/JSON-Schema-Test-Suite/tests/draft6/optional/bignum.json +0 -105
  169. data/JSON-Schema-Test-Suite/tests/draft6/optional/ecmascript-regex.json +0 -213
  170. data/JSON-Schema-Test-Suite/tests/draft6/optional/format.json +0 -491
  171. data/JSON-Schema-Test-Suite/tests/draft6/optional/zeroTerminatedFloats.json +0 -15
  172. data/JSON-Schema-Test-Suite/tests/draft6/pattern.json +0 -34
  173. data/JSON-Schema-Test-Suite/tests/draft6/patternProperties.json +0 -151
  174. data/JSON-Schema-Test-Suite/tests/draft6/properties.json +0 -167
  175. data/JSON-Schema-Test-Suite/tests/draft6/propertyNames.json +0 -78
  176. data/JSON-Schema-Test-Suite/tests/draft6/ref.json +0 -443
  177. data/JSON-Schema-Test-Suite/tests/draft6/refRemote.json +0 -171
  178. data/JSON-Schema-Test-Suite/tests/draft6/required.json +0 -105
  179. data/JSON-Schema-Test-Suite/tests/draft6/type.json +0 -464
  180. data/JSON-Schema-Test-Suite/tests/draft6/uniqueItems.json +0 -173
  181. data/JSON-Schema-Test-Suite/tests/draft7/additionalItems.json +0 -87
  182. data/JSON-Schema-Test-Suite/tests/draft7/additionalProperties.json +0 -133
  183. data/JSON-Schema-Test-Suite/tests/draft7/allOf.json +0 -218
  184. data/JSON-Schema-Test-Suite/tests/draft7/anyOf.json +0 -189
  185. data/JSON-Schema-Test-Suite/tests/draft7/boolean_schema.json +0 -104
  186. data/JSON-Schema-Test-Suite/tests/draft7/const.json +0 -170
  187. data/JSON-Schema-Test-Suite/tests/draft7/contains.json +0 -100
  188. data/JSON-Schema-Test-Suite/tests/draft7/default.json +0 -49
  189. data/JSON-Schema-Test-Suite/tests/draft7/definitions.json +0 -32
  190. data/JSON-Schema-Test-Suite/tests/draft7/dependencies.json +0 -268
  191. data/JSON-Schema-Test-Suite/tests/draft7/enum.json +0 -179
  192. data/JSON-Schema-Test-Suite/tests/draft7/exclusiveMaximum.json +0 -30
  193. data/JSON-Schema-Test-Suite/tests/draft7/exclusiveMinimum.json +0 -30
  194. data/JSON-Schema-Test-Suite/tests/draft7/format.json +0 -614
  195. data/JSON-Schema-Test-Suite/tests/draft7/if-then-else.json +0 -188
  196. data/JSON-Schema-Test-Suite/tests/draft7/items.json +0 -250
  197. data/JSON-Schema-Test-Suite/tests/draft7/maxItems.json +0 -28
  198. data/JSON-Schema-Test-Suite/tests/draft7/maxLength.json +0 -33
  199. data/JSON-Schema-Test-Suite/tests/draft7/maxProperties.json +0 -38
  200. data/JSON-Schema-Test-Suite/tests/draft7/maximum.json +0 -28
  201. data/JSON-Schema-Test-Suite/tests/draft7/minItems.json +0 -28
  202. data/JSON-Schema-Test-Suite/tests/draft7/minLength.json +0 -33
  203. data/JSON-Schema-Test-Suite/tests/draft7/minProperties.json +0 -38
  204. data/JSON-Schema-Test-Suite/tests/draft7/minimum.json +0 -59
  205. data/JSON-Schema-Test-Suite/tests/draft7/multipleOf.json +0 -60
  206. data/JSON-Schema-Test-Suite/tests/draft7/not.json +0 -117
  207. data/JSON-Schema-Test-Suite/tests/draft7/oneOf.json +0 -206
  208. data/JSON-Schema-Test-Suite/tests/draft7/optional/bignum.json +0 -105
  209. data/JSON-Schema-Test-Suite/tests/draft7/optional/content.json +0 -77
  210. data/JSON-Schema-Test-Suite/tests/draft7/optional/ecmascript-regex.json +0 -213
  211. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/date-time.json +0 -53
  212. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/date.json +0 -23
  213. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/email.json +0 -18
  214. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/hostname.json +0 -33
  215. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/idn-email.json +0 -18
  216. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/idn-hostname.json +0 -28
  217. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/ipv4.json +0 -33
  218. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/ipv6.json +0 -28
  219. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/iri-reference.json +0 -43
  220. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/iri.json +0 -53
  221. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/json-pointer.json +0 -168
  222. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/regex.json +0 -18
  223. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/relative-json-pointer.json +0 -33
  224. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/time.json +0 -23
  225. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/uri-reference.json +0 -43
  226. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/uri-template.json +0 -28
  227. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/uri.json +0 -103
  228. data/JSON-Schema-Test-Suite/tests/draft7/optional/zeroTerminatedFloats.json +0 -15
  229. data/JSON-Schema-Test-Suite/tests/draft7/pattern.json +0 -34
  230. data/JSON-Schema-Test-Suite/tests/draft7/patternProperties.json +0 -151
  231. data/JSON-Schema-Test-Suite/tests/draft7/properties.json +0 -167
  232. data/JSON-Schema-Test-Suite/tests/draft7/propertyNames.json +0 -78
  233. data/JSON-Schema-Test-Suite/tests/draft7/ref.json +0 -443
  234. data/JSON-Schema-Test-Suite/tests/draft7/refRemote.json +0 -171
  235. data/JSON-Schema-Test-Suite/tests/draft7/required.json +0 -105
  236. data/JSON-Schema-Test-Suite/tests/draft7/type.json +0 -464
  237. data/JSON-Schema-Test-Suite/tests/draft7/uniqueItems.json +0 -173
  238. data/JSON-Schema-Test-Suite/tests/latest +0 -1
  239. data/JSON-Schema-Test-Suite/tox.ini +0 -9
@@ -1,218 +0,0 @@
1
- [
2
- {
3
- "description": "validation of e-mail addresses",
4
- "schema": {"format": "email"},
5
- "tests": [
6
- {
7
- "description": "ignores integers",
8
- "data": 12,
9
- "valid": true
10
- },
11
- {
12
- "description": "ignores floats",
13
- "data": 13.7,
14
- "valid": true
15
- },
16
- {
17
- "description": "ignores objects",
18
- "data": {},
19
- "valid": true
20
- },
21
- {
22
- "description": "ignores arrays",
23
- "data": [],
24
- "valid": true
25
- },
26
- {
27
- "description": "ignores booleans",
28
- "data": false,
29
- "valid": true
30
- },
31
- {
32
- "description": "ignores null",
33
- "data": null,
34
- "valid": true
35
- }
36
- ]
37
- },
38
- {
39
- "description": "validation of IP addresses",
40
- "schema": {"format": "ipv4"},
41
- "tests": [
42
- {
43
- "description": "ignores integers",
44
- "data": 12,
45
- "valid": true
46
- },
47
- {
48
- "description": "ignores floats",
49
- "data": 13.7,
50
- "valid": true
51
- },
52
- {
53
- "description": "ignores objects",
54
- "data": {},
55
- "valid": true
56
- },
57
- {
58
- "description": "ignores arrays",
59
- "data": [],
60
- "valid": true
61
- },
62
- {
63
- "description": "ignores booleans",
64
- "data": false,
65
- "valid": true
66
- },
67
- {
68
- "description": "ignores null",
69
- "data": null,
70
- "valid": true
71
- }
72
- ]
73
- },
74
- {
75
- "description": "validation of IPv6 addresses",
76
- "schema": {"format": "ipv6"},
77
- "tests": [
78
- {
79
- "description": "ignores integers",
80
- "data": 12,
81
- "valid": true
82
- },
83
- {
84
- "description": "ignores floats",
85
- "data": 13.7,
86
- "valid": true
87
- },
88
- {
89
- "description": "ignores objects",
90
- "data": {},
91
- "valid": true
92
- },
93
- {
94
- "description": "ignores arrays",
95
- "data": [],
96
- "valid": true
97
- },
98
- {
99
- "description": "ignores booleans",
100
- "data": false,
101
- "valid": true
102
- },
103
- {
104
- "description": "ignores null",
105
- "data": null,
106
- "valid": true
107
- }
108
- ]
109
- },
110
- {
111
- "description": "validation of hostnames",
112
- "schema": {"format": "hostname"},
113
- "tests": [
114
- {
115
- "description": "ignores integers",
116
- "data": 12,
117
- "valid": true
118
- },
119
- {
120
- "description": "ignores floats",
121
- "data": 13.7,
122
- "valid": true
123
- },
124
- {
125
- "description": "ignores objects",
126
- "data": {},
127
- "valid": true
128
- },
129
- {
130
- "description": "ignores arrays",
131
- "data": [],
132
- "valid": true
133
- },
134
- {
135
- "description": "ignores booleans",
136
- "data": false,
137
- "valid": true
138
- },
139
- {
140
- "description": "ignores null",
141
- "data": null,
142
- "valid": true
143
- }
144
- ]
145
- },
146
- {
147
- "description": "validation of date-time strings",
148
- "schema": {"format": "date-time"},
149
- "tests": [
150
- {
151
- "description": "ignores integers",
152
- "data": 12,
153
- "valid": true
154
- },
155
- {
156
- "description": "ignores floats",
157
- "data": 13.7,
158
- "valid": true
159
- },
160
- {
161
- "description": "ignores objects",
162
- "data": {},
163
- "valid": true
164
- },
165
- {
166
- "description": "ignores arrays",
167
- "data": [],
168
- "valid": true
169
- },
170
- {
171
- "description": "ignores booleans",
172
- "data": false,
173
- "valid": true
174
- },
175
- {
176
- "description": "ignores null",
177
- "data": null,
178
- "valid": true
179
- }
180
- ]
181
- },
182
- {
183
- "description": "validation of URIs",
184
- "schema": {"format": "uri"},
185
- "tests": [
186
- {
187
- "description": "ignores integers",
188
- "data": 12,
189
- "valid": true
190
- },
191
- {
192
- "description": "ignores floats",
193
- "data": 13.7,
194
- "valid": true
195
- },
196
- {
197
- "description": "ignores objects",
198
- "data": {},
199
- "valid": true
200
- },
201
- {
202
- "description": "ignores arrays",
203
- "data": [],
204
- "valid": true
205
- },
206
- {
207
- "description": "ignores booleans",
208
- "data": false,
209
- "valid": true
210
- },
211
- {
212
- "description": "ignores null",
213
- "data": null,
214
- "valid": true
215
- }
216
- ]
217
- }
218
- ]
@@ -1,195 +0,0 @@
1
- [
2
- {
3
- "description": "a schema given for items",
4
- "schema": {
5
- "items": {"type": "integer"}
6
- },
7
- "tests": [
8
- {
9
- "description": "valid items",
10
- "data": [ 1, 2, 3 ],
11
- "valid": true
12
- },
13
- {
14
- "description": "wrong type of items",
15
- "data": [1, "x"],
16
- "valid": false
17
- },
18
- {
19
- "description": "ignores non-arrays",
20
- "data": {"foo" : "bar"},
21
- "valid": true
22
- },
23
- {
24
- "description": "JavaScript pseudo-array is valid",
25
- "data": {
26
- "0": "invalid",
27
- "length": 1
28
- },
29
- "valid": true
30
- }
31
- ]
32
- },
33
- {
34
- "description": "an array of schemas for items",
35
- "schema": {
36
- "items": [
37
- {"type": "integer"},
38
- {"type": "string"}
39
- ]
40
- },
41
- "tests": [
42
- {
43
- "description": "correct types",
44
- "data": [ 1, "foo" ],
45
- "valid": true
46
- },
47
- {
48
- "description": "wrong types",
49
- "data": [ "foo", 1 ],
50
- "valid": false
51
- },
52
- {
53
- "description": "incomplete array of items",
54
- "data": [ 1 ],
55
- "valid": true
56
- },
57
- {
58
- "description": "array with additional items",
59
- "data": [ 1, "foo", true ],
60
- "valid": true
61
- },
62
- {
63
- "description": "empty array",
64
- "data": [ ],
65
- "valid": true
66
- },
67
- {
68
- "description": "JavaScript pseudo-array is valid",
69
- "data": {
70
- "0": "invalid",
71
- "1": "valid",
72
- "length": 2
73
- },
74
- "valid": true
75
- }
76
- ]
77
- },
78
- {
79
- "description": "items and subitems",
80
- "schema": {
81
- "definitions": {
82
- "item": {
83
- "type": "array",
84
- "additionalItems": false,
85
- "items": [
86
- { "$ref": "#/definitions/sub-item" },
87
- { "$ref": "#/definitions/sub-item" }
88
- ]
89
- },
90
- "sub-item": {
91
- "type": "object",
92
- "required": ["foo"]
93
- }
94
- },
95
- "type": "array",
96
- "additionalItems": false,
97
- "items": [
98
- { "$ref": "#/definitions/item" },
99
- { "$ref": "#/definitions/item" },
100
- { "$ref": "#/definitions/item" }
101
- ]
102
- },
103
- "tests": [
104
- {
105
- "description": "valid items",
106
- "data": [
107
- [ {"foo": null}, {"foo": null} ],
108
- [ {"foo": null}, {"foo": null} ],
109
- [ {"foo": null}, {"foo": null} ]
110
- ],
111
- "valid": true
112
- },
113
- {
114
- "description": "too many items",
115
- "data": [
116
- [ {"foo": null}, {"foo": null} ],
117
- [ {"foo": null}, {"foo": null} ],
118
- [ {"foo": null}, {"foo": null} ],
119
- [ {"foo": null}, {"foo": null} ]
120
- ],
121
- "valid": false
122
- },
123
- {
124
- "description": "too many sub-items",
125
- "data": [
126
- [ {"foo": null}, {"foo": null}, {"foo": null} ],
127
- [ {"foo": null}, {"foo": null} ],
128
- [ {"foo": null}, {"foo": null} ]
129
- ],
130
- "valid": false
131
- },
132
- {
133
- "description": "wrong item",
134
- "data": [
135
- {"foo": null},
136
- [ {"foo": null}, {"foo": null} ],
137
- [ {"foo": null}, {"foo": null} ]
138
- ],
139
- "valid": false
140
- },
141
- {
142
- "description": "wrong sub-item",
143
- "data": [
144
- [ {}, {"foo": null} ],
145
- [ {"foo": null}, {"foo": null} ],
146
- [ {"foo": null}, {"foo": null} ]
147
- ],
148
- "valid": false
149
- },
150
- {
151
- "description": "fewer items is valid",
152
- "data": [
153
- [ {"foo": null} ],
154
- [ {"foo": null} ]
155
- ],
156
- "valid": true
157
- }
158
- ]
159
- },
160
- {
161
- "description": "nested items",
162
- "schema": {
163
- "type": "array",
164
- "items": {
165
- "type": "array",
166
- "items": {
167
- "type": "array",
168
- "items": {
169
- "type": "array",
170
- "items": {
171
- "type": "number"
172
- }
173
- }
174
- }
175
- }
176
- },
177
- "tests": [
178
- {
179
- "description": "valid nested array",
180
- "data": [[[[1]], [[2],[3]]], [[[4], [5], [6]]]],
181
- "valid": true
182
- },
183
- {
184
- "description": "nested array with invalid type",
185
- "data": [[[["1"]], [[2],[3]]], [[[4], [5], [6]]]],
186
- "valid": false
187
- },
188
- {
189
- "description": "not deep enough",
190
- "data": [[[1], [2],[3]], [[4], [5], [6]]],
191
- "valid": false
192
- }
193
- ]
194
- }
195
- ]
@@ -1,28 +0,0 @@
1
- [
2
- {
3
- "description": "maxItems validation",
4
- "schema": {"maxItems": 2},
5
- "tests": [
6
- {
7
- "description": "shorter is valid",
8
- "data": [1],
9
- "valid": true
10
- },
11
- {
12
- "description": "exact length is valid",
13
- "data": [1, 2],
14
- "valid": true
15
- },
16
- {
17
- "description": "too long is invalid",
18
- "data": [1, 2, 3],
19
- "valid": false
20
- },
21
- {
22
- "description": "ignores non-arrays",
23
- "data": "foobar",
24
- "valid": true
25
- }
26
- ]
27
- }
28
- ]
@@ -1,33 +0,0 @@
1
- [
2
- {
3
- "description": "maxLength validation",
4
- "schema": {"maxLength": 2},
5
- "tests": [
6
- {
7
- "description": "shorter is valid",
8
- "data": "f",
9
- "valid": true
10
- },
11
- {
12
- "description": "exact length is valid",
13
- "data": "fo",
14
- "valid": true
15
- },
16
- {
17
- "description": "too long is invalid",
18
- "data": "foo",
19
- "valid": false
20
- },
21
- {
22
- "description": "ignores non-strings",
23
- "data": 100,
24
- "valid": true
25
- },
26
- {
27
- "description": "two supplementary Unicode code points is long enough",
28
- "data": "\uD83D\uDCA9\uD83D\uDCA9",
29
- "valid": true
30
- }
31
- ]
32
- }
33
- ]