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,411 +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-04/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": "Recursive references between schemas",
214
- "schema": {
215
- "id": "http://localhost:1234/tree",
216
- "description": "tree of nodes",
217
- "type": "object",
218
- "properties": {
219
- "meta": {"type": "string"},
220
- "nodes": {
221
- "type": "array",
222
- "items": {"$ref": "node"}
223
- }
224
- },
225
- "required": ["meta", "nodes"],
226
- "definitions": {
227
- "node": {
228
- "id": "http://localhost:1234/node",
229
- "description": "node",
230
- "type": "object",
231
- "properties": {
232
- "value": {"type": "number"},
233
- "subtree": {"$ref": "tree"}
234
- },
235
- "required": ["value"]
236
- }
237
- }
238
- },
239
- "tests": [
240
- {
241
- "description": "valid tree",
242
- "data": {
243
- "meta": "root",
244
- "nodes": [
245
- {
246
- "value": 1,
247
- "subtree": {
248
- "meta": "child",
249
- "nodes": [
250
- {"value": 1.1},
251
- {"value": 1.2}
252
- ]
253
- }
254
- },
255
- {
256
- "value": 2,
257
- "subtree": {
258
- "meta": "child",
259
- "nodes": [
260
- {"value": 2.1},
261
- {"value": 2.2}
262
- ]
263
- }
264
- }
265
- ]
266
- },
267
- "valid": true
268
- },
269
- {
270
- "description": "invalid tree",
271
- "data": {
272
- "meta": "root",
273
- "nodes": [
274
- {
275
- "value": 1,
276
- "subtree": {
277
- "meta": "child",
278
- "nodes": [
279
- {"value": "string is invalid"},
280
- {"value": 1.2}
281
- ]
282
- }
283
- },
284
- {
285
- "value": 2,
286
- "subtree": {
287
- "meta": "child",
288
- "nodes": [
289
- {"value": 2.1},
290
- {"value": 2.2}
291
- ]
292
- }
293
- }
294
- ]
295
- },
296
- "valid": false
297
- }
298
- ]
299
- },
300
- {
301
- "description": "refs with quote",
302
- "schema": {
303
- "properties": {
304
- "foo\"bar": {"$ref": "#/definitions/foo%22bar"}
305
- },
306
- "definitions": {
307
- "foo\"bar": {"type": "number"}
308
- }
309
- },
310
- "tests": [
311
- {
312
- "description": "object with numbers is valid",
313
- "data": {
314
- "foo\"bar": 1
315
- },
316
- "valid": true
317
- },
318
- {
319
- "description": "object with strings is invalid",
320
- "data": {
321
- "foo\"bar": "1"
322
- },
323
- "valid": false
324
- }
325
- ]
326
- },
327
- {
328
- "description": "Location-independent identifier",
329
- "schema": {
330
- "allOf": [{
331
- "$ref": "#foo"
332
- }],
333
- "definitions": {
334
- "A": {
335
- "id": "#foo",
336
- "type": "integer"
337
- }
338
- }
339
- },
340
- "tests": [
341
- {
342
- "data": 1,
343
- "description": "match",
344
- "valid": true
345
- },
346
- {
347
- "data": "a",
348
- "description": "mismatch",
349
- "valid": false
350
- }
351
- ]
352
- },
353
- {
354
- "description": "Location-independent identifier with absolute URI",
355
- "schema": {
356
- "allOf": [{
357
- "$ref": "http://localhost:1234/bar#foo"
358
- }],
359
- "definitions": {
360
- "A": {
361
- "id": "http://localhost:1234/bar#foo",
362
- "type": "integer"
363
- }
364
- }
365
- },
366
- "tests": [
367
- {
368
- "data": 1,
369
- "description": "match",
370
- "valid": true
371
- },
372
- {
373
- "data": "a",
374
- "description": "mismatch",
375
- "valid": false
376
- }
377
- ]
378
- },
379
- {
380
- "description": "Location-independent identifier with base URI change in subschema",
381
- "schema": {
382
- "id": "http://localhost:1234/root",
383
- "allOf": [{
384
- "$ref": "http://localhost:1234/nested.json#foo"
385
- }],
386
- "definitions": {
387
- "A": {
388
- "id": "nested.json",
389
- "definitions": {
390
- "B": {
391
- "id": "#foo",
392
- "type": "integer"
393
- }
394
- }
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
- ]
@@ -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
- ]