json_schemer 0.2.9 → 0.2.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (235) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/json_schemer.gemspec +1 -1
  4. data/lib/json_schemer/version.rb +1 -1
  5. metadata +3 -234
  6. data/JSON-Schema-Test-Suite/.gitignore +0 -1
  7. data/JSON-Schema-Test-Suite/.travis.yml +0 -8
  8. data/JSON-Schema-Test-Suite/LICENSE +0 -19
  9. data/JSON-Schema-Test-Suite/README.md +0 -181
  10. data/JSON-Schema-Test-Suite/bin/jsonschema_suite +0 -298
  11. data/JSON-Schema-Test-Suite/index.js +0 -45
  12. data/JSON-Schema-Test-Suite/package.json +0 -28
  13. data/JSON-Schema-Test-Suite/remotes/folder/folderInteger.json +0 -3
  14. data/JSON-Schema-Test-Suite/remotes/integer.json +0 -3
  15. data/JSON-Schema-Test-Suite/remotes/name-defs.json +0 -15
  16. data/JSON-Schema-Test-Suite/remotes/name.json +0 -15
  17. data/JSON-Schema-Test-Suite/remotes/subSchemas.json +0 -8
  18. data/JSON-Schema-Test-Suite/test-schema.json +0 -59
  19. data/JSON-Schema-Test-Suite/tests/draft2019-09/additionalItems.json +0 -87
  20. data/JSON-Schema-Test-Suite/tests/draft2019-09/additionalProperties.json +0 -133
  21. data/JSON-Schema-Test-Suite/tests/draft2019-09/allOf.json +0 -218
  22. data/JSON-Schema-Test-Suite/tests/draft2019-09/anchor.json +0 -87
  23. data/JSON-Schema-Test-Suite/tests/draft2019-09/anyOf.json +0 -189
  24. data/JSON-Schema-Test-Suite/tests/draft2019-09/boolean_schema.json +0 -104
  25. data/JSON-Schema-Test-Suite/tests/draft2019-09/const.json +0 -170
  26. data/JSON-Schema-Test-Suite/tests/draft2019-09/contains.json +0 -95
  27. data/JSON-Schema-Test-Suite/tests/draft2019-09/default.json +0 -49
  28. data/JSON-Schema-Test-Suite/tests/draft2019-09/defs.json +0 -24
  29. data/JSON-Schema-Test-Suite/tests/draft2019-09/dependencies.json +0 -268
  30. data/JSON-Schema-Test-Suite/tests/draft2019-09/enum.json +0 -179
  31. data/JSON-Schema-Test-Suite/tests/draft2019-09/exclusiveMaximum.json +0 -30
  32. data/JSON-Schema-Test-Suite/tests/draft2019-09/exclusiveMinimum.json +0 -30
  33. data/JSON-Schema-Test-Suite/tests/draft2019-09/format.json +0 -614
  34. data/JSON-Schema-Test-Suite/tests/draft2019-09/if-then-else.json +0 -188
  35. data/JSON-Schema-Test-Suite/tests/draft2019-09/items.json +0 -250
  36. data/JSON-Schema-Test-Suite/tests/draft2019-09/maxItems.json +0 -28
  37. data/JSON-Schema-Test-Suite/tests/draft2019-09/maxLength.json +0 -33
  38. data/JSON-Schema-Test-Suite/tests/draft2019-09/maxProperties.json +0 -38
  39. data/JSON-Schema-Test-Suite/tests/draft2019-09/maximum.json +0 -28
  40. data/JSON-Schema-Test-Suite/tests/draft2019-09/minItems.json +0 -28
  41. data/JSON-Schema-Test-Suite/tests/draft2019-09/minLength.json +0 -33
  42. data/JSON-Schema-Test-Suite/tests/draft2019-09/minProperties.json +0 -38
  43. data/JSON-Schema-Test-Suite/tests/draft2019-09/minimum.json +0 -59
  44. data/JSON-Schema-Test-Suite/tests/draft2019-09/multipleOf.json +0 -60
  45. data/JSON-Schema-Test-Suite/tests/draft2019-09/not.json +0 -117
  46. data/JSON-Schema-Test-Suite/tests/draft2019-09/oneOf.json +0 -206
  47. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/bignum.json +0 -105
  48. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/content.json +0 -77
  49. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/ecmascript-regex.json +0 -213
  50. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/date-time.json +0 -53
  51. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/date.json +0 -23
  52. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/email.json +0 -18
  53. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/hostname.json +0 -33
  54. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/idn-email.json +0 -18
  55. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/idn-hostname.json +0 -28
  56. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/ipv4.json +0 -33
  57. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/ipv6.json +0 -28
  58. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/iri-reference.json +0 -43
  59. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/iri.json +0 -53
  60. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/json-pointer.json +0 -168
  61. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/regex.json +0 -18
  62. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/relative-json-pointer.json +0 -33
  63. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/time.json +0 -23
  64. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri-reference.json +0 -43
  65. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri-template.json +0 -28
  66. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri.json +0 -103
  67. data/JSON-Schema-Test-Suite/tests/draft2019-09/optional/zeroTerminatedFloats.json +0 -15
  68. data/JSON-Schema-Test-Suite/tests/draft2019-09/pattern.json +0 -34
  69. data/JSON-Schema-Test-Suite/tests/draft2019-09/patternProperties.json +0 -151
  70. data/JSON-Schema-Test-Suite/tests/draft2019-09/properties.json +0 -167
  71. data/JSON-Schema-Test-Suite/tests/draft2019-09/propertyNames.json +0 -78
  72. data/JSON-Schema-Test-Suite/tests/draft2019-09/ref.json +0 -359
  73. data/JSON-Schema-Test-Suite/tests/draft2019-09/refRemote.json +0 -167
  74. data/JSON-Schema-Test-Suite/tests/draft2019-09/required.json +0 -105
  75. data/JSON-Schema-Test-Suite/tests/draft2019-09/type.json +0 -464
  76. data/JSON-Schema-Test-Suite/tests/draft2019-09/uniqueItems.json +0 -173
  77. data/JSON-Schema-Test-Suite/tests/draft3/additionalItems.json +0 -82
  78. data/JSON-Schema-Test-Suite/tests/draft3/additionalProperties.json +0 -133
  79. data/JSON-Schema-Test-Suite/tests/draft3/default.json +0 -49
  80. data/JSON-Schema-Test-Suite/tests/draft3/dependencies.json +0 -118
  81. data/JSON-Schema-Test-Suite/tests/draft3/disallow.json +0 -80
  82. data/JSON-Schema-Test-Suite/tests/draft3/divisibleBy.json +0 -60
  83. data/JSON-Schema-Test-Suite/tests/draft3/enum.json +0 -71
  84. data/JSON-Schema-Test-Suite/tests/draft3/extends.json +0 -94
  85. data/JSON-Schema-Test-Suite/tests/draft3/format.json +0 -362
  86. data/JSON-Schema-Test-Suite/tests/draft3/items.json +0 -46
  87. data/JSON-Schema-Test-Suite/tests/draft3/maxItems.json +0 -28
  88. data/JSON-Schema-Test-Suite/tests/draft3/maxLength.json +0 -33
  89. data/JSON-Schema-Test-Suite/tests/draft3/maximum.json +0 -42
  90. data/JSON-Schema-Test-Suite/tests/draft3/minItems.json +0 -28
  91. data/JSON-Schema-Test-Suite/tests/draft3/minLength.json +0 -33
  92. data/JSON-Schema-Test-Suite/tests/draft3/minimum.json +0 -73
  93. data/JSON-Schema-Test-Suite/tests/draft3/optional/bignum.json +0 -107
  94. data/JSON-Schema-Test-Suite/tests/draft3/optional/ecmascript-regex.json +0 -18
  95. data/JSON-Schema-Test-Suite/tests/draft3/optional/format.json +0 -227
  96. data/JSON-Schema-Test-Suite/tests/draft3/optional/zeroTerminatedFloats.json +0 -15
  97. data/JSON-Schema-Test-Suite/tests/draft3/pattern.json +0 -34
  98. data/JSON-Schema-Test-Suite/tests/draft3/patternProperties.json +0 -115
  99. data/JSON-Schema-Test-Suite/tests/draft3/properties.json +0 -97
  100. data/JSON-Schema-Test-Suite/tests/draft3/ref.json +0 -192
  101. data/JSON-Schema-Test-Suite/tests/draft3/refRemote.json +0 -74
  102. data/JSON-Schema-Test-Suite/tests/draft3/required.json +0 -53
  103. data/JSON-Schema-Test-Suite/tests/draft3/type.json +0 -489
  104. data/JSON-Schema-Test-Suite/tests/draft3/uniqueItems.json +0 -163
  105. data/JSON-Schema-Test-Suite/tests/draft4/additionalItems.json +0 -87
  106. data/JSON-Schema-Test-Suite/tests/draft4/additionalProperties.json +0 -133
  107. data/JSON-Schema-Test-Suite/tests/draft4/allOf.json +0 -185
  108. data/JSON-Schema-Test-Suite/tests/draft4/anyOf.json +0 -156
  109. data/JSON-Schema-Test-Suite/tests/draft4/default.json +0 -49
  110. data/JSON-Schema-Test-Suite/tests/draft4/definitions.json +0 -32
  111. data/JSON-Schema-Test-Suite/tests/draft4/dependencies.json +0 -194
  112. data/JSON-Schema-Test-Suite/tests/draft4/enum.json +0 -179
  113. data/JSON-Schema-Test-Suite/tests/draft4/format.json +0 -218
  114. data/JSON-Schema-Test-Suite/tests/draft4/items.json +0 -195
  115. data/JSON-Schema-Test-Suite/tests/draft4/maxItems.json +0 -28
  116. data/JSON-Schema-Test-Suite/tests/draft4/maxLength.json +0 -33
  117. data/JSON-Schema-Test-Suite/tests/draft4/maxProperties.json +0 -38
  118. data/JSON-Schema-Test-Suite/tests/draft4/maximum.json +0 -73
  119. data/JSON-Schema-Test-Suite/tests/draft4/minItems.json +0 -28
  120. data/JSON-Schema-Test-Suite/tests/draft4/minLength.json +0 -33
  121. data/JSON-Schema-Test-Suite/tests/draft4/minProperties.json +0 -38
  122. data/JSON-Schema-Test-Suite/tests/draft4/minimum.json +0 -104
  123. data/JSON-Schema-Test-Suite/tests/draft4/multipleOf.json +0 -60
  124. data/JSON-Schema-Test-Suite/tests/draft4/not.json +0 -96
  125. data/JSON-Schema-Test-Suite/tests/draft4/oneOf.json +0 -162
  126. data/JSON-Schema-Test-Suite/tests/draft4/optional/bignum.json +0 -107
  127. data/JSON-Schema-Test-Suite/tests/draft4/optional/ecmascript-regex.json +0 -213
  128. data/JSON-Schema-Test-Suite/tests/draft4/optional/format.json +0 -253
  129. data/JSON-Schema-Test-Suite/tests/draft4/optional/zeroTerminatedFloats.json +0 -15
  130. data/JSON-Schema-Test-Suite/tests/draft4/pattern.json +0 -34
  131. data/JSON-Schema-Test-Suite/tests/draft4/patternProperties.json +0 -120
  132. data/JSON-Schema-Test-Suite/tests/draft4/properties.json +0 -136
  133. data/JSON-Schema-Test-Suite/tests/draft4/ref.json +0 -411
  134. data/JSON-Schema-Test-Suite/tests/draft4/refRemote.json +0 -171
  135. data/JSON-Schema-Test-Suite/tests/draft4/required.json +0 -89
  136. data/JSON-Schema-Test-Suite/tests/draft4/type.json +0 -464
  137. data/JSON-Schema-Test-Suite/tests/draft4/uniqueItems.json +0 -173
  138. data/JSON-Schema-Test-Suite/tests/draft6/additionalItems.json +0 -87
  139. data/JSON-Schema-Test-Suite/tests/draft6/additionalProperties.json +0 -133
  140. data/JSON-Schema-Test-Suite/tests/draft6/allOf.json +0 -218
  141. data/JSON-Schema-Test-Suite/tests/draft6/anyOf.json +0 -189
  142. data/JSON-Schema-Test-Suite/tests/draft6/boolean_schema.json +0 -104
  143. data/JSON-Schema-Test-Suite/tests/draft6/const.json +0 -170
  144. data/JSON-Schema-Test-Suite/tests/draft6/contains.json +0 -100
  145. data/JSON-Schema-Test-Suite/tests/draft6/default.json +0 -49
  146. data/JSON-Schema-Test-Suite/tests/draft6/definitions.json +0 -32
  147. data/JSON-Schema-Test-Suite/tests/draft6/dependencies.json +0 -268
  148. data/JSON-Schema-Test-Suite/tests/draft6/enum.json +0 -179
  149. data/JSON-Schema-Test-Suite/tests/draft6/exclusiveMaximum.json +0 -30
  150. data/JSON-Schema-Test-Suite/tests/draft6/exclusiveMinimum.json +0 -30
  151. data/JSON-Schema-Test-Suite/tests/draft6/format.json +0 -326
  152. data/JSON-Schema-Test-Suite/tests/draft6/items.json +0 -250
  153. data/JSON-Schema-Test-Suite/tests/draft6/maxItems.json +0 -28
  154. data/JSON-Schema-Test-Suite/tests/draft6/maxLength.json +0 -33
  155. data/JSON-Schema-Test-Suite/tests/draft6/maxProperties.json +0 -38
  156. data/JSON-Schema-Test-Suite/tests/draft6/maximum.json +0 -28
  157. data/JSON-Schema-Test-Suite/tests/draft6/minItems.json +0 -28
  158. data/JSON-Schema-Test-Suite/tests/draft6/minLength.json +0 -33
  159. data/JSON-Schema-Test-Suite/tests/draft6/minProperties.json +0 -38
  160. data/JSON-Schema-Test-Suite/tests/draft6/minimum.json +0 -59
  161. data/JSON-Schema-Test-Suite/tests/draft6/multipleOf.json +0 -60
  162. data/JSON-Schema-Test-Suite/tests/draft6/not.json +0 -117
  163. data/JSON-Schema-Test-Suite/tests/draft6/oneOf.json +0 -206
  164. data/JSON-Schema-Test-Suite/tests/draft6/optional/bignum.json +0 -105
  165. data/JSON-Schema-Test-Suite/tests/draft6/optional/ecmascript-regex.json +0 -213
  166. data/JSON-Schema-Test-Suite/tests/draft6/optional/format.json +0 -491
  167. data/JSON-Schema-Test-Suite/tests/draft6/optional/zeroTerminatedFloats.json +0 -15
  168. data/JSON-Schema-Test-Suite/tests/draft6/pattern.json +0 -34
  169. data/JSON-Schema-Test-Suite/tests/draft6/patternProperties.json +0 -151
  170. data/JSON-Schema-Test-Suite/tests/draft6/properties.json +0 -167
  171. data/JSON-Schema-Test-Suite/tests/draft6/propertyNames.json +0 -78
  172. data/JSON-Schema-Test-Suite/tests/draft6/ref.json +0 -443
  173. data/JSON-Schema-Test-Suite/tests/draft6/refRemote.json +0 -171
  174. data/JSON-Schema-Test-Suite/tests/draft6/required.json +0 -105
  175. data/JSON-Schema-Test-Suite/tests/draft6/type.json +0 -464
  176. data/JSON-Schema-Test-Suite/tests/draft6/uniqueItems.json +0 -173
  177. data/JSON-Schema-Test-Suite/tests/draft7/additionalItems.json +0 -87
  178. data/JSON-Schema-Test-Suite/tests/draft7/additionalProperties.json +0 -133
  179. data/JSON-Schema-Test-Suite/tests/draft7/allOf.json +0 -218
  180. data/JSON-Schema-Test-Suite/tests/draft7/anyOf.json +0 -189
  181. data/JSON-Schema-Test-Suite/tests/draft7/boolean_schema.json +0 -104
  182. data/JSON-Schema-Test-Suite/tests/draft7/const.json +0 -170
  183. data/JSON-Schema-Test-Suite/tests/draft7/contains.json +0 -100
  184. data/JSON-Schema-Test-Suite/tests/draft7/default.json +0 -49
  185. data/JSON-Schema-Test-Suite/tests/draft7/definitions.json +0 -32
  186. data/JSON-Schema-Test-Suite/tests/draft7/dependencies.json +0 -268
  187. data/JSON-Schema-Test-Suite/tests/draft7/enum.json +0 -179
  188. data/JSON-Schema-Test-Suite/tests/draft7/exclusiveMaximum.json +0 -30
  189. data/JSON-Schema-Test-Suite/tests/draft7/exclusiveMinimum.json +0 -30
  190. data/JSON-Schema-Test-Suite/tests/draft7/format.json +0 -614
  191. data/JSON-Schema-Test-Suite/tests/draft7/if-then-else.json +0 -188
  192. data/JSON-Schema-Test-Suite/tests/draft7/items.json +0 -250
  193. data/JSON-Schema-Test-Suite/tests/draft7/maxItems.json +0 -28
  194. data/JSON-Schema-Test-Suite/tests/draft7/maxLength.json +0 -33
  195. data/JSON-Schema-Test-Suite/tests/draft7/maxProperties.json +0 -38
  196. data/JSON-Schema-Test-Suite/tests/draft7/maximum.json +0 -28
  197. data/JSON-Schema-Test-Suite/tests/draft7/minItems.json +0 -28
  198. data/JSON-Schema-Test-Suite/tests/draft7/minLength.json +0 -33
  199. data/JSON-Schema-Test-Suite/tests/draft7/minProperties.json +0 -38
  200. data/JSON-Schema-Test-Suite/tests/draft7/minimum.json +0 -59
  201. data/JSON-Schema-Test-Suite/tests/draft7/multipleOf.json +0 -60
  202. data/JSON-Schema-Test-Suite/tests/draft7/not.json +0 -117
  203. data/JSON-Schema-Test-Suite/tests/draft7/oneOf.json +0 -206
  204. data/JSON-Schema-Test-Suite/tests/draft7/optional/bignum.json +0 -105
  205. data/JSON-Schema-Test-Suite/tests/draft7/optional/content.json +0 -77
  206. data/JSON-Schema-Test-Suite/tests/draft7/optional/ecmascript-regex.json +0 -213
  207. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/date-time.json +0 -53
  208. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/date.json +0 -23
  209. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/email.json +0 -18
  210. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/hostname.json +0 -33
  211. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/idn-email.json +0 -18
  212. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/idn-hostname.json +0 -28
  213. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/ipv4.json +0 -33
  214. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/ipv6.json +0 -28
  215. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/iri-reference.json +0 -43
  216. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/iri.json +0 -53
  217. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/json-pointer.json +0 -168
  218. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/regex.json +0 -18
  219. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/relative-json-pointer.json +0 -33
  220. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/time.json +0 -23
  221. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/uri-reference.json +0 -43
  222. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/uri-template.json +0 -28
  223. data/JSON-Schema-Test-Suite/tests/draft7/optional/format/uri.json +0 -103
  224. data/JSON-Schema-Test-Suite/tests/draft7/optional/zeroTerminatedFloats.json +0 -15
  225. data/JSON-Schema-Test-Suite/tests/draft7/pattern.json +0 -34
  226. data/JSON-Schema-Test-Suite/tests/draft7/patternProperties.json +0 -151
  227. data/JSON-Schema-Test-Suite/tests/draft7/properties.json +0 -167
  228. data/JSON-Schema-Test-Suite/tests/draft7/propertyNames.json +0 -78
  229. data/JSON-Schema-Test-Suite/tests/draft7/ref.json +0 -443
  230. data/JSON-Schema-Test-Suite/tests/draft7/refRemote.json +0 -171
  231. data/JSON-Schema-Test-Suite/tests/draft7/required.json +0 -105
  232. data/JSON-Schema-Test-Suite/tests/draft7/type.json +0 -464
  233. data/JSON-Schema-Test-Suite/tests/draft7/uniqueItems.json +0 -173
  234. data/JSON-Schema-Test-Suite/tests/latest +0 -1
  235. data/JSON-Schema-Test-Suite/tox.ini +0 -9
@@ -1,443 +0,0 @@
1
- [
2
- {
3
- "description": "root pointer ref",
4
- "schema": {
5
- "properties": {
6
- "foo": {"$ref": "#"}
7
- },
8
- "additionalProperties": false
9
- },
10
- "tests": [
11
- {
12
- "description": "match",
13
- "data": {"foo": false},
14
- "valid": true
15
- },
16
- {
17
- "description": "recursive match",
18
- "data": {"foo": {"foo": false}},
19
- "valid": true
20
- },
21
- {
22
- "description": "mismatch",
23
- "data": {"bar": false},
24
- "valid": false
25
- },
26
- {
27
- "description": "recursive mismatch",
28
- "data": {"foo": {"bar": false}},
29
- "valid": false
30
- }
31
- ]
32
- },
33
- {
34
- "description": "relative pointer ref to object",
35
- "schema": {
36
- "properties": {
37
- "foo": {"type": "integer"},
38
- "bar": {"$ref": "#/properties/foo"}
39
- }
40
- },
41
- "tests": [
42
- {
43
- "description": "match",
44
- "data": {"bar": 3},
45
- "valid": true
46
- },
47
- {
48
- "description": "mismatch",
49
- "data": {"bar": true},
50
- "valid": false
51
- }
52
- ]
53
- },
54
- {
55
- "description": "relative pointer ref to array",
56
- "schema": {
57
- "items": [
58
- {"type": "integer"},
59
- {"$ref": "#/items/0"}
60
- ]
61
- },
62
- "tests": [
63
- {
64
- "description": "match array",
65
- "data": [1, 2],
66
- "valid": true
67
- },
68
- {
69
- "description": "mismatch array",
70
- "data": [1, "foo"],
71
- "valid": false
72
- }
73
- ]
74
- },
75
- {
76
- "description": "escaped pointer ref",
77
- "schema": {
78
- "tilda~field": {"type": "integer"},
79
- "slash/field": {"type": "integer"},
80
- "percent%field": {"type": "integer"},
81
- "properties": {
82
- "tilda": {"$ref": "#/tilda~0field"},
83
- "slash": {"$ref": "#/slash~1field"},
84
- "percent": {"$ref": "#/percent%25field"}
85
- }
86
- },
87
- "tests": [
88
- {
89
- "description": "slash invalid",
90
- "data": {"slash": "aoeu"},
91
- "valid": false
92
- },
93
- {
94
- "description": "tilda invalid",
95
- "data": {"tilda": "aoeu"},
96
- "valid": false
97
- },
98
- {
99
- "description": "percent invalid",
100
- "data": {"percent": "aoeu"},
101
- "valid": false
102
- },
103
- {
104
- "description": "slash valid",
105
- "data": {"slash": 123},
106
- "valid": true
107
- },
108
- {
109
- "description": "tilda valid",
110
- "data": {"tilda": 123},
111
- "valid": true
112
- },
113
- {
114
- "description": "percent valid",
115
- "data": {"percent": 123},
116
- "valid": true
117
- }
118
- ]
119
- },
120
- {
121
- "description": "nested refs",
122
- "schema": {
123
- "definitions": {
124
- "a": {"type": "integer"},
125
- "b": {"$ref": "#/definitions/a"},
126
- "c": {"$ref": "#/definitions/b"}
127
- },
128
- "$ref": "#/definitions/c"
129
- },
130
- "tests": [
131
- {
132
- "description": "nested ref valid",
133
- "data": 5,
134
- "valid": true
135
- },
136
- {
137
- "description": "nested ref invalid",
138
- "data": "a",
139
- "valid": false
140
- }
141
- ]
142
- },
143
- {
144
- "description": "ref overrides any sibling keywords",
145
- "schema": {
146
- "definitions": {
147
- "reffed": {
148
- "type": "array"
149
- }
150
- },
151
- "properties": {
152
- "foo": {
153
- "$ref": "#/definitions/reffed",
154
- "maxItems": 2
155
- }
156
- }
157
- },
158
- "tests": [
159
- {
160
- "description": "ref valid",
161
- "data": { "foo": [] },
162
- "valid": true
163
- },
164
- {
165
- "description": "ref valid, maxItems ignored",
166
- "data": { "foo": [ 1, 2, 3] },
167
- "valid": true
168
- },
169
- {
170
- "description": "ref invalid",
171
- "data": { "foo": "string" },
172
- "valid": false
173
- }
174
- ]
175
- },
176
- {
177
- "description": "remote ref, containing refs itself",
178
- "schema": {"$ref": "http://json-schema.org/draft-06/schema#"},
179
- "tests": [
180
- {
181
- "description": "remote ref valid",
182
- "data": {"minLength": 1},
183
- "valid": true
184
- },
185
- {
186
- "description": "remote ref invalid",
187
- "data": {"minLength": -1},
188
- "valid": false
189
- }
190
- ]
191
- },
192
- {
193
- "description": "property named $ref that is not a reference",
194
- "schema": {
195
- "properties": {
196
- "$ref": {"type": "string"}
197
- }
198
- },
199
- "tests": [
200
- {
201
- "description": "property named $ref valid",
202
- "data": {"$ref": "a"},
203
- "valid": true
204
- },
205
- {
206
- "description": "property named $ref invalid",
207
- "data": {"$ref": 2},
208
- "valid": false
209
- }
210
- ]
211
- },
212
- {
213
- "description": "$ref to boolean schema true",
214
- "schema": {
215
- "$ref": "#/definitions/bool",
216
- "definitions": {
217
- "bool": true
218
- }
219
- },
220
- "tests": [
221
- {
222
- "description": "any value is valid",
223
- "data": "foo",
224
- "valid": true
225
- }
226
- ]
227
- },
228
- {
229
- "description": "$ref to boolean schema false",
230
- "schema": {
231
- "$ref": "#/definitions/bool",
232
- "definitions": {
233
- "bool": false
234
- }
235
- },
236
- "tests": [
237
- {
238
- "description": "any value is invalid",
239
- "data": "foo",
240
- "valid": false
241
- }
242
- ]
243
- },
244
- {
245
- "description": "Recursive references between schemas",
246
- "schema": {
247
- "$id": "http://localhost:1234/tree",
248
- "description": "tree of nodes",
249
- "type": "object",
250
- "properties": {
251
- "meta": {"type": "string"},
252
- "nodes": {
253
- "type": "array",
254
- "items": {"$ref": "node"}
255
- }
256
- },
257
- "required": ["meta", "nodes"],
258
- "definitions": {
259
- "node": {
260
- "$id": "http://localhost:1234/node",
261
- "description": "node",
262
- "type": "object",
263
- "properties": {
264
- "value": {"type": "number"},
265
- "subtree": {"$ref": "tree"}
266
- },
267
- "required": ["value"]
268
- }
269
- }
270
- },
271
- "tests": [
272
- {
273
- "description": "valid tree",
274
- "data": {
275
- "meta": "root",
276
- "nodes": [
277
- {
278
- "value": 1,
279
- "subtree": {
280
- "meta": "child",
281
- "nodes": [
282
- {"value": 1.1},
283
- {"value": 1.2}
284
- ]
285
- }
286
- },
287
- {
288
- "value": 2,
289
- "subtree": {
290
- "meta": "child",
291
- "nodes": [
292
- {"value": 2.1},
293
- {"value": 2.2}
294
- ]
295
- }
296
- }
297
- ]
298
- },
299
- "valid": true
300
- },
301
- {
302
- "description": "invalid tree",
303
- "data": {
304
- "meta": "root",
305
- "nodes": [
306
- {
307
- "value": 1,
308
- "subtree": {
309
- "meta": "child",
310
- "nodes": [
311
- {"value": "string is invalid"},
312
- {"value": 1.2}
313
- ]
314
- }
315
- },
316
- {
317
- "value": 2,
318
- "subtree": {
319
- "meta": "child",
320
- "nodes": [
321
- {"value": 2.1},
322
- {"value": 2.2}
323
- ]
324
- }
325
- }
326
- ]
327
- },
328
- "valid": false
329
- }
330
- ]
331
- },
332
- {
333
- "description": "refs with quote",
334
- "schema": {
335
- "properties": {
336
- "foo\"bar": {"$ref": "#/definitions/foo%22bar"}
337
- },
338
- "definitions": {
339
- "foo\"bar": {"type": "number"}
340
- }
341
- },
342
- "tests": [
343
- {
344
- "description": "object with numbers is valid",
345
- "data": {
346
- "foo\"bar": 1
347
- },
348
- "valid": true
349
- },
350
- {
351
- "description": "object with strings is invalid",
352
- "data": {
353
- "foo\"bar": "1"
354
- },
355
- "valid": false
356
- }
357
- ]
358
- },
359
- {
360
- "description": "Location-independent identifier",
361
- "schema": {
362
- "allOf": [{
363
- "$ref": "#foo"
364
- }],
365
- "definitions": {
366
- "A": {
367
- "$id": "#foo",
368
- "type": "integer"
369
- }
370
- }
371
- },
372
- "tests": [
373
- {
374
- "data": 1,
375
- "description": "match",
376
- "valid": true
377
- },
378
- {
379
- "data": "a",
380
- "description": "mismatch",
381
- "valid": false
382
- }
383
- ]
384
- },
385
- {
386
- "description": "Location-independent identifier with absolute URI",
387
- "schema": {
388
- "allOf": [{
389
- "$ref": "http://localhost:1234/bar#foo"
390
- }],
391
- "definitions": {
392
- "A": {
393
- "$id": "http://localhost:1234/bar#foo",
394
- "type": "integer"
395
- }
396
- }
397
- },
398
- "tests": [
399
- {
400
- "data": 1,
401
- "description": "match",
402
- "valid": true
403
- },
404
- {
405
- "data": "a",
406
- "description": "mismatch",
407
- "valid": false
408
- }
409
- ]
410
- },
411
- {
412
- "description": "Location-independent identifier with base URI change in subschema",
413
- "schema": {
414
- "$id": "http://localhost:1234/root",
415
- "allOf": [{
416
- "$ref": "http://localhost:1234/nested.json#foo"
417
- }],
418
- "definitions": {
419
- "A": {
420
- "$id": "nested.json",
421
- "definitions": {
422
- "B": {
423
- "$id": "#foo",
424
- "type": "integer"
425
- }
426
- }
427
- }
428
- }
429
- },
430
- "tests": [
431
- {
432
- "data": 1,
433
- "description": "match",
434
- "valid": true
435
- },
436
- {
437
- "data": "a",
438
- "description": "mismatch",
439
- "valid": false
440
- }
441
- ]
442
- }
443
- ]
@@ -1,171 +0,0 @@
1
- [
2
- {
3
- "description": "remote ref",
4
- "schema": {"$ref": "http://localhost:1234/integer.json"},
5
- "tests": [
6
- {
7
- "description": "remote ref valid",
8
- "data": 1,
9
- "valid": true
10
- },
11
- {
12
- "description": "remote ref invalid",
13
- "data": "a",
14
- "valid": false
15
- }
16
- ]
17
- },
18
- {
19
- "description": "fragment within remote ref",
20
- "schema": {"$ref": "http://localhost:1234/subSchemas.json#/integer"},
21
- "tests": [
22
- {
23
- "description": "remote fragment valid",
24
- "data": 1,
25
- "valid": true
26
- },
27
- {
28
- "description": "remote fragment invalid",
29
- "data": "a",
30
- "valid": false
31
- }
32
- ]
33
- },
34
- {
35
- "description": "ref within remote ref",
36
- "schema": {
37
- "$ref": "http://localhost:1234/subSchemas.json#/refToInteger"
38
- },
39
- "tests": [
40
- {
41
- "description": "ref within ref valid",
42
- "data": 1,
43
- "valid": true
44
- },
45
- {
46
- "description": "ref within ref invalid",
47
- "data": "a",
48
- "valid": false
49
- }
50
- ]
51
- },
52
- {
53
- "description": "base URI change",
54
- "schema": {
55
- "$id": "http://localhost:1234/",
56
- "items": {
57
- "$id": "folder/",
58
- "items": {"$ref": "folderInteger.json"}
59
- }
60
- },
61
- "tests": [
62
- {
63
- "description": "base URI change ref valid",
64
- "data": [[1]],
65
- "valid": true
66
- },
67
- {
68
- "description": "base URI change ref invalid",
69
- "data": [["a"]],
70
- "valid": false
71
- }
72
- ]
73
- },
74
- {
75
- "description": "base URI change - change folder",
76
- "schema": {
77
- "$id": "http://localhost:1234/scope_change_defs1.json",
78
- "type" : "object",
79
- "properties": {
80
- "list": {"$ref": "#/definitions/baz"}
81
- },
82
- "definitions": {
83
- "baz": {
84
- "$id": "folder/",
85
- "type": "array",
86
- "items": {"$ref": "folderInteger.json"}
87
- }
88
- }
89
- },
90
- "tests": [
91
- {
92
- "description": "number is valid",
93
- "data": {"list": [1]},
94
- "valid": true
95
- },
96
- {
97
- "description": "string is invalid",
98
- "data": {"list": ["a"]},
99
- "valid": false
100
- }
101
- ]
102
- },
103
- {
104
- "description": "base URI change - change folder in subschema",
105
- "schema": {
106
- "$id": "http://localhost:1234/scope_change_defs2.json",
107
- "type" : "object",
108
- "properties": {
109
- "list": {"$ref": "#/definitions/baz/definitions/bar"}
110
- },
111
- "definitions": {
112
- "baz": {
113
- "$id": "folder/",
114
- "definitions": {
115
- "bar": {
116
- "type": "array",
117
- "items": {"$ref": "folderInteger.json"}
118
- }
119
- }
120
- }
121
- }
122
- },
123
- "tests": [
124
- {
125
- "description": "number is valid",
126
- "data": {"list": [1]},
127
- "valid": true
128
- },
129
- {
130
- "description": "string is invalid",
131
- "data": {"list": ["a"]},
132
- "valid": false
133
- }
134
- ]
135
- },
136
- {
137
- "description": "root ref in remote ref",
138
- "schema": {
139
- "$id": "http://localhost:1234/object",
140
- "type": "object",
141
- "properties": {
142
- "name": {"$ref": "name.json#/definitions/orNull"}
143
- }
144
- },
145
- "tests": [
146
- {
147
- "description": "string is valid",
148
- "data": {
149
- "name": "foo"
150
- },
151
- "valid": true
152
- },
153
- {
154
- "description": "null is valid",
155
- "data": {
156
- "name": null
157
- },
158
- "valid": true
159
- },
160
- {
161
- "description": "object is invalid",
162
- "data": {
163
- "name": {
164
- "name": null
165
- }
166
- },
167
- "valid": false
168
- }
169
- ]
170
- }
171
- ]