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
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ac13fecc37f430b393d875cd262bf5186974b42573f50b8e8b5d90298e41916f
4
- data.tar.gz: 388e7eeda51e99d0454c3832f04f342b69102982d7b559bc37c92ab312332c67
3
+ metadata.gz: 45e4c874bfbfd416a38a47a23cf9b5c561df5da3457b11b7cb6acc0f36a8f5d6
4
+ data.tar.gz: a62663e1c3f250af1b57418d666c4bbe9229212c00845dc3b5f6c34d7ab3d57c
5
5
  SHA512:
6
- metadata.gz: 9372627c0131ecfcf88904050f0b85e1fa7e3f3ca1152ce20be7750146e0804b59d199540a560f04df6d912aba02229016432d9c2015008804f7cbe8b949034d
7
- data.tar.gz: d9ea545392112f48393d78508ef383e807ffe34c041018bf461cfce51b46f638a57b3c8fd8b498beb8f3d4a1573cfc6719b16e4231d47639e7cc21e6d607d981
6
+ metadata.gz: ff9d2a99b3f964b71d1a98a9037d5465627b913616a6c0c6160d1fe71aac784891585b92339773e677fdc9637bed0e120935ad7f4c4f283dada6f96a219b2591
7
+ data.tar.gz: 78d254d698f87a46a1ba1737775178310d2cb0e9d25f095f2da7dede4bcfee58c62dcbd89899370c158638734041b59fe5f351156a713002ceeeca8552849638
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- json_schemer (0.2.8)
4
+ json_schemer (0.2.11)
5
5
  ecma-re-validator (~> 0.2)
6
6
  hana (~> 1.3)
7
7
  regexp_parser (~> 1.5)
@@ -14,8 +14,8 @@ GEM
14
14
  regexp_parser (~> 1.2)
15
15
  hana (1.3.5)
16
16
  minitest (5.11.3)
17
- rake (10.5.0)
18
- regexp_parser (1.6.0)
17
+ rake (13.0.1)
18
+ regexp_parser (1.7.0)
19
19
  uri_template (0.7.0)
20
20
 
21
21
  PLATFORMS
@@ -25,7 +25,7 @@ DEPENDENCIES
25
25
  bundler (~> 2.0)
26
26
  json_schemer!
27
27
  minitest (~> 5.0)
28
- rake (~> 10.0)
28
+ rake (~> 13.0)
29
29
 
30
30
  BUNDLED WITH
31
- 2.0.2
31
+ 2.1.4
data/json_schemer.gemspec CHANGED
@@ -14,7 +14,7 @@ Gem::Specification.new do |spec|
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files -z`.split("\x0").reject do |f|
17
- f.match(%r{^(test|spec|features)/})
17
+ f.match(%r{^(test|spec|features|JSON-Schema-Test-Suite)/})
18
18
  end
19
19
  spec.bindir = "exe"
20
20
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
23
23
  spec.required_ruby_version = '~> 2.4'
24
24
 
25
25
  spec.add_development_dependency "bundler", "~> 2.0"
26
- spec.add_development_dependency "rake", "~> 10.0"
26
+ spec.add_development_dependency "rake", "~> 13.0"
27
27
  spec.add_development_dependency "minitest", "~> 5.0"
28
28
 
29
29
  # spec.add_development_dependency "benchmark-ips", "~> 2.7.2"
@@ -4,15 +4,16 @@ module JSONSchemer
4
4
  class Base
5
5
  include Format
6
6
 
7
- Instance = Struct.new(:data, :data_pointer, :schema, :schema_pointer, :parent_uri) do
7
+ Instance = Struct.new(:data, :data_pointer, :schema, :schema_pointer, :parent_uri, :insert_property_defaults) do
8
8
  def merge(
9
9
  data: self.data,
10
10
  data_pointer: self.data_pointer,
11
11
  schema: self.schema,
12
12
  schema_pointer: self.schema_pointer,
13
- parent_uri: self.parent_uri
13
+ parent_uri: self.parent_uri,
14
+ insert_property_defaults: self.insert_property_defaults
14
15
  )
15
- self.class.new(data, data_pointer, schema, schema_pointer, parent_uri)
16
+ self.class.new(data, data_pointer, schema, schema_pointer, parent_uri, insert_property_defaults)
16
17
  end
17
18
  end
18
19
 
@@ -46,11 +47,11 @@ module JSONSchemer
46
47
  end
47
48
 
48
49
  def valid?(data)
49
- valid_instance?(Instance.new(data, '', root, '', nil))
50
+ valid_instance?(Instance.new(data, '', root, '', nil, !!@insert_property_defaults))
50
51
  end
51
52
 
52
53
  def validate(data)
53
- validate_instance(Instance.new(data, '', root, '', nil))
54
+ validate_instance(Instance.new(data, '', root, '', nil, !!@insert_property_defaults))
54
55
  end
55
56
 
56
57
  protected
@@ -115,20 +116,35 @@ module JSONSchemer
115
116
 
116
117
  if all_of
117
118
  all_of.each_with_index do |subschema, index|
118
- validate_instance(instance.merge(schema: subschema, schema_pointer: "#{instance.schema_pointer}/allOf/#{index}"), &block)
119
+ subinstance = instance.merge(
120
+ schema: subschema,
121
+ schema_pointer: "#{instance.schema_pointer}/allOf/#{index}",
122
+ insert_property_defaults: false
123
+ )
124
+ validate_instance(subinstance, &block)
119
125
  end
120
126
  end
121
127
 
122
128
  if any_of
123
129
  subschemas = any_of.lazy.with_index.map do |subschema, index|
124
- validate_instance(instance.merge(schema: subschema, schema_pointer: "#{instance.schema_pointer}/anyOf/#{index}"))
130
+ subinstance = instance.merge(
131
+ schema: subschema,
132
+ schema_pointer: "#{instance.schema_pointer}/anyOf/#{index}",
133
+ insert_property_defaults: false
134
+ )
135
+ validate_instance(subinstance)
125
136
  end
126
137
  subschemas.each { |subschema| subschema.each(&block) } unless subschemas.any?(&:none?)
127
138
  end
128
139
 
129
140
  if one_of
130
141
  subschemas = one_of.map.with_index do |subschema, index|
131
- validate_instance(instance.merge(schema: subschema, schema_pointer: "#{instance.schema_pointer}/oneOf/#{index}"))
142
+ subinstance = instance.merge(
143
+ schema: subschema,
144
+ schema_pointer: "#{instance.schema_pointer}/oneOf/#{index}",
145
+ insert_property_defaults: false
146
+ )
147
+ validate_instance(subinstance)
132
148
  end
133
149
  valid_subschema_count = subschemas.count(&:none?)
134
150
  if valid_subschema_count > 1
@@ -139,11 +155,15 @@ module JSONSchemer
139
155
  end
140
156
 
141
157
  unless not_schema.nil?
142
- subinstance = instance.merge(schema: not_schema, schema_pointer: "#{instance.schema_pointer}/not")
158
+ subinstance = instance.merge(
159
+ schema: not_schema,
160
+ schema_pointer: "#{instance.schema_pointer}/not",
161
+ insert_property_defaults: false
162
+ )
143
163
  yield error(subinstance, 'not') if valid_instance?(subinstance)
144
164
  end
145
165
 
146
- if if_schema && valid_instance?(instance.merge(schema: if_schema))
166
+ if if_schema && valid_instance?(instance.merge(schema: if_schema, insert_property_defaults: false))
147
167
  validate_instance(instance.merge(schema: then_schema, schema_pointer: "#{instance.schema_pointer}/then"), &block) unless then_schema.nil?
148
168
  elsif if_schema
149
169
  validate_instance(instance.merge(schema: else_schema, schema_pointer: "#{instance.schema_pointer}/else"), &block) unless else_schema.nil?
@@ -179,10 +199,6 @@ module JSONSchemer
179
199
  !!@format
180
200
  end
181
201
 
182
- def insert_property_defaults?
183
- !!@insert_property_defaults
184
- end
185
-
186
202
  def custom_format?(format)
187
203
  !!(formats && formats.key?(format))
188
204
  end
@@ -195,7 +211,6 @@ module JSONSchemer
195
211
  JSONSchemer.schema(
196
212
  schema,
197
213
  format: format?,
198
- insert_property_defaults: insert_property_defaults?,
199
214
  formats: formats,
200
215
  keywords: keywords,
201
216
  ref_resolver: ref_resolver
@@ -250,27 +265,32 @@ module JSONSchemer
250
265
  end
251
266
 
252
267
  def validate_ref(instance, ref, &block)
253
- ref_uri = join_uri(instance.parent_uri, ref)
254
-
255
- if valid_json_pointer?(ref_uri.fragment)
256
- ref_pointer = Hana::Pointer.new(URI.decode_www_form_component(ref_uri.fragment))
257
- if ref.start_with?('#')
268
+ if ref.start_with?('#')
269
+ schema_pointer = ref.slice(1..-1)
270
+ if valid_json_pointer?(schema_pointer)
271
+ ref_pointer = Hana::Pointer.new(URI.decode_www_form_component(schema_pointer))
258
272
  subinstance = instance.merge(
259
273
  schema: ref_pointer.eval(root),
260
- schema_pointer: ref_uri.fragment,
261
- parent_uri: (pointer_uri(root, ref_pointer) || ref_uri)
274
+ schema_pointer: schema_pointer,
275
+ parent_uri: (pointer_uri(root, ref_pointer) || instance.parent_uri)
262
276
  )
263
277
  validate_instance(subinstance, &block)
264
- else
265
- ref_root = resolve_ref(ref_uri)
266
- ref_object = child(ref_root)
267
- subinstance = instance.merge(
268
- schema: ref_pointer.eval(ref_root),
269
- schema_pointer: ref_uri.fragment,
270
- parent_uri: (pointer_uri(ref_root, ref_pointer) || ref_uri)
271
- )
272
- ref_object.validate_instance(subinstance, &block)
278
+ return
273
279
  end
280
+ end
281
+
282
+ ref_uri = join_uri(instance.parent_uri, ref)
283
+
284
+ if valid_json_pointer?(ref_uri.fragment)
285
+ ref_pointer = Hana::Pointer.new(URI.decode_www_form_component(ref_uri.fragment))
286
+ ref_root = resolve_ref(ref_uri)
287
+ ref_object = child(ref_root)
288
+ subinstance = instance.merge(
289
+ schema: ref_pointer.eval(ref_root),
290
+ schema_pointer: ref_uri.fragment,
291
+ parent_uri: (pointer_uri(ref_root, ref_pointer) || ref_uri)
292
+ )
293
+ ref_object.validate_instance(subinstance, &block)
274
294
  elsif id = ids[ref_uri.to_s]
275
295
  subinstance = instance.merge(
276
296
  schema: id.fetch(:schema),
@@ -467,7 +487,7 @@ module JSONSchemer
467
487
  dependencies = schema['dependencies']
468
488
  property_names = schema['propertyNames']
469
489
 
470
- if insert_property_defaults? && properties
490
+ if instance.insert_property_defaults && properties
471
491
  properties.each do |property, property_schema|
472
492
  if !data.key?(property) && property_schema.is_a?(Hash) && property_schema.key?('default')
473
493
  data[property] = property_schema.fetch('default').clone
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module JSONSchemer
3
- VERSION = '0.2.8'
3
+ VERSION = '0.2.11'
4
4
  end
data/lib/json_schemer.rb CHANGED
@@ -28,6 +28,7 @@ module JSONSchemer
28
28
  class InvalidSymbolKey < StandardError; end
29
29
 
30
30
  DRAFT_CLASS_BY_META_SCHEMA = {
31
+ 'http://json-schema.org/schema#' => Schema::Draft4, # Version-less $schema deprecated after Draft 4
31
32
  'http://json-schema.org/draft-04/schema#' => Schema::Draft4,
32
33
  'http://json-schema.org/draft-06/schema#' => Schema::Draft6,
33
34
  'http://json-schema.org/draft-07/schema#' => Schema::Draft7
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: json_schemer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.8
4
+ version: 0.2.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Harsha
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-10-20 00:00:00.000000000 Z
11
+ date: 2020-03-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '13.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '13.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: minitest
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -119,236 +119,6 @@ files:
119
119
  - ".gitignore"
120
120
  - Gemfile
121
121
  - Gemfile.lock
122
- - JSON-Schema-Test-Suite/.gitignore
123
- - JSON-Schema-Test-Suite/.travis.yml
124
- - JSON-Schema-Test-Suite/LICENSE
125
- - JSON-Schema-Test-Suite/README.md
126
- - JSON-Schema-Test-Suite/bin/jsonschema_suite
127
- - JSON-Schema-Test-Suite/index.js
128
- - JSON-Schema-Test-Suite/package.json
129
- - JSON-Schema-Test-Suite/remotes/folder/folderInteger.json
130
- - JSON-Schema-Test-Suite/remotes/integer.json
131
- - JSON-Schema-Test-Suite/remotes/name-defs.json
132
- - JSON-Schema-Test-Suite/remotes/name.json
133
- - JSON-Schema-Test-Suite/remotes/subSchemas.json
134
- - JSON-Schema-Test-Suite/test-schema.json
135
- - JSON-Schema-Test-Suite/tests/draft2019-09/additionalItems.json
136
- - JSON-Schema-Test-Suite/tests/draft2019-09/additionalProperties.json
137
- - JSON-Schema-Test-Suite/tests/draft2019-09/allOf.json
138
- - JSON-Schema-Test-Suite/tests/draft2019-09/anchor.json
139
- - JSON-Schema-Test-Suite/tests/draft2019-09/anyOf.json
140
- - JSON-Schema-Test-Suite/tests/draft2019-09/boolean_schema.json
141
- - JSON-Schema-Test-Suite/tests/draft2019-09/const.json
142
- - JSON-Schema-Test-Suite/tests/draft2019-09/contains.json
143
- - JSON-Schema-Test-Suite/tests/draft2019-09/default.json
144
- - JSON-Schema-Test-Suite/tests/draft2019-09/defs.json
145
- - JSON-Schema-Test-Suite/tests/draft2019-09/dependencies.json
146
- - JSON-Schema-Test-Suite/tests/draft2019-09/enum.json
147
- - JSON-Schema-Test-Suite/tests/draft2019-09/exclusiveMaximum.json
148
- - JSON-Schema-Test-Suite/tests/draft2019-09/exclusiveMinimum.json
149
- - JSON-Schema-Test-Suite/tests/draft2019-09/format.json
150
- - JSON-Schema-Test-Suite/tests/draft2019-09/if-then-else.json
151
- - JSON-Schema-Test-Suite/tests/draft2019-09/items.json
152
- - JSON-Schema-Test-Suite/tests/draft2019-09/maxItems.json
153
- - JSON-Schema-Test-Suite/tests/draft2019-09/maxLength.json
154
- - JSON-Schema-Test-Suite/tests/draft2019-09/maxProperties.json
155
- - JSON-Schema-Test-Suite/tests/draft2019-09/maximum.json
156
- - JSON-Schema-Test-Suite/tests/draft2019-09/minItems.json
157
- - JSON-Schema-Test-Suite/tests/draft2019-09/minLength.json
158
- - JSON-Schema-Test-Suite/tests/draft2019-09/minProperties.json
159
- - JSON-Schema-Test-Suite/tests/draft2019-09/minimum.json
160
- - JSON-Schema-Test-Suite/tests/draft2019-09/multipleOf.json
161
- - JSON-Schema-Test-Suite/tests/draft2019-09/not.json
162
- - JSON-Schema-Test-Suite/tests/draft2019-09/oneOf.json
163
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/bignum.json
164
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/content.json
165
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/ecmascript-regex.json
166
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/date-time.json
167
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/date.json
168
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/email.json
169
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/hostname.json
170
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/idn-email.json
171
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/idn-hostname.json
172
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/ipv4.json
173
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/ipv6.json
174
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/iri-reference.json
175
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/iri.json
176
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/json-pointer.json
177
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/regex.json
178
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/relative-json-pointer.json
179
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/time.json
180
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri-reference.json
181
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri-template.json
182
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/format/uri.json
183
- - JSON-Schema-Test-Suite/tests/draft2019-09/optional/zeroTerminatedFloats.json
184
- - JSON-Schema-Test-Suite/tests/draft2019-09/pattern.json
185
- - JSON-Schema-Test-Suite/tests/draft2019-09/patternProperties.json
186
- - JSON-Schema-Test-Suite/tests/draft2019-09/properties.json
187
- - JSON-Schema-Test-Suite/tests/draft2019-09/propertyNames.json
188
- - JSON-Schema-Test-Suite/tests/draft2019-09/ref.json
189
- - JSON-Schema-Test-Suite/tests/draft2019-09/refRemote.json
190
- - JSON-Schema-Test-Suite/tests/draft2019-09/required.json
191
- - JSON-Schema-Test-Suite/tests/draft2019-09/type.json
192
- - JSON-Schema-Test-Suite/tests/draft2019-09/uniqueItems.json
193
- - JSON-Schema-Test-Suite/tests/draft3/additionalItems.json
194
- - JSON-Schema-Test-Suite/tests/draft3/additionalProperties.json
195
- - JSON-Schema-Test-Suite/tests/draft3/default.json
196
- - JSON-Schema-Test-Suite/tests/draft3/dependencies.json
197
- - JSON-Schema-Test-Suite/tests/draft3/disallow.json
198
- - JSON-Schema-Test-Suite/tests/draft3/divisibleBy.json
199
- - JSON-Schema-Test-Suite/tests/draft3/enum.json
200
- - JSON-Schema-Test-Suite/tests/draft3/extends.json
201
- - JSON-Schema-Test-Suite/tests/draft3/format.json
202
- - JSON-Schema-Test-Suite/tests/draft3/items.json
203
- - JSON-Schema-Test-Suite/tests/draft3/maxItems.json
204
- - JSON-Schema-Test-Suite/tests/draft3/maxLength.json
205
- - JSON-Schema-Test-Suite/tests/draft3/maximum.json
206
- - JSON-Schema-Test-Suite/tests/draft3/minItems.json
207
- - JSON-Schema-Test-Suite/tests/draft3/minLength.json
208
- - JSON-Schema-Test-Suite/tests/draft3/minimum.json
209
- - JSON-Schema-Test-Suite/tests/draft3/optional/bignum.json
210
- - JSON-Schema-Test-Suite/tests/draft3/optional/ecmascript-regex.json
211
- - JSON-Schema-Test-Suite/tests/draft3/optional/format.json
212
- - JSON-Schema-Test-Suite/tests/draft3/optional/zeroTerminatedFloats.json
213
- - JSON-Schema-Test-Suite/tests/draft3/pattern.json
214
- - JSON-Schema-Test-Suite/tests/draft3/patternProperties.json
215
- - JSON-Schema-Test-Suite/tests/draft3/properties.json
216
- - JSON-Schema-Test-Suite/tests/draft3/ref.json
217
- - JSON-Schema-Test-Suite/tests/draft3/refRemote.json
218
- - JSON-Schema-Test-Suite/tests/draft3/required.json
219
- - JSON-Schema-Test-Suite/tests/draft3/type.json
220
- - JSON-Schema-Test-Suite/tests/draft3/uniqueItems.json
221
- - JSON-Schema-Test-Suite/tests/draft4/additionalItems.json
222
- - JSON-Schema-Test-Suite/tests/draft4/additionalProperties.json
223
- - JSON-Schema-Test-Suite/tests/draft4/allOf.json
224
- - JSON-Schema-Test-Suite/tests/draft4/anyOf.json
225
- - JSON-Schema-Test-Suite/tests/draft4/default.json
226
- - JSON-Schema-Test-Suite/tests/draft4/definitions.json
227
- - JSON-Schema-Test-Suite/tests/draft4/dependencies.json
228
- - JSON-Schema-Test-Suite/tests/draft4/enum.json
229
- - JSON-Schema-Test-Suite/tests/draft4/format.json
230
- - JSON-Schema-Test-Suite/tests/draft4/items.json
231
- - JSON-Schema-Test-Suite/tests/draft4/maxItems.json
232
- - JSON-Schema-Test-Suite/tests/draft4/maxLength.json
233
- - JSON-Schema-Test-Suite/tests/draft4/maxProperties.json
234
- - JSON-Schema-Test-Suite/tests/draft4/maximum.json
235
- - JSON-Schema-Test-Suite/tests/draft4/minItems.json
236
- - JSON-Schema-Test-Suite/tests/draft4/minLength.json
237
- - JSON-Schema-Test-Suite/tests/draft4/minProperties.json
238
- - JSON-Schema-Test-Suite/tests/draft4/minimum.json
239
- - JSON-Schema-Test-Suite/tests/draft4/multipleOf.json
240
- - JSON-Schema-Test-Suite/tests/draft4/not.json
241
- - JSON-Schema-Test-Suite/tests/draft4/oneOf.json
242
- - JSON-Schema-Test-Suite/tests/draft4/optional/bignum.json
243
- - JSON-Schema-Test-Suite/tests/draft4/optional/ecmascript-regex.json
244
- - JSON-Schema-Test-Suite/tests/draft4/optional/format.json
245
- - JSON-Schema-Test-Suite/tests/draft4/optional/zeroTerminatedFloats.json
246
- - JSON-Schema-Test-Suite/tests/draft4/pattern.json
247
- - JSON-Schema-Test-Suite/tests/draft4/patternProperties.json
248
- - JSON-Schema-Test-Suite/tests/draft4/properties.json
249
- - JSON-Schema-Test-Suite/tests/draft4/ref.json
250
- - JSON-Schema-Test-Suite/tests/draft4/refRemote.json
251
- - JSON-Schema-Test-Suite/tests/draft4/required.json
252
- - JSON-Schema-Test-Suite/tests/draft4/type.json
253
- - JSON-Schema-Test-Suite/tests/draft4/uniqueItems.json
254
- - JSON-Schema-Test-Suite/tests/draft6/additionalItems.json
255
- - JSON-Schema-Test-Suite/tests/draft6/additionalProperties.json
256
- - JSON-Schema-Test-Suite/tests/draft6/allOf.json
257
- - JSON-Schema-Test-Suite/tests/draft6/anyOf.json
258
- - JSON-Schema-Test-Suite/tests/draft6/boolean_schema.json
259
- - JSON-Schema-Test-Suite/tests/draft6/const.json
260
- - JSON-Schema-Test-Suite/tests/draft6/contains.json
261
- - JSON-Schema-Test-Suite/tests/draft6/default.json
262
- - JSON-Schema-Test-Suite/tests/draft6/definitions.json
263
- - JSON-Schema-Test-Suite/tests/draft6/dependencies.json
264
- - JSON-Schema-Test-Suite/tests/draft6/enum.json
265
- - JSON-Schema-Test-Suite/tests/draft6/exclusiveMaximum.json
266
- - JSON-Schema-Test-Suite/tests/draft6/exclusiveMinimum.json
267
- - JSON-Schema-Test-Suite/tests/draft6/format.json
268
- - JSON-Schema-Test-Suite/tests/draft6/items.json
269
- - JSON-Schema-Test-Suite/tests/draft6/maxItems.json
270
- - JSON-Schema-Test-Suite/tests/draft6/maxLength.json
271
- - JSON-Schema-Test-Suite/tests/draft6/maxProperties.json
272
- - JSON-Schema-Test-Suite/tests/draft6/maximum.json
273
- - JSON-Schema-Test-Suite/tests/draft6/minItems.json
274
- - JSON-Schema-Test-Suite/tests/draft6/minLength.json
275
- - JSON-Schema-Test-Suite/tests/draft6/minProperties.json
276
- - JSON-Schema-Test-Suite/tests/draft6/minimum.json
277
- - JSON-Schema-Test-Suite/tests/draft6/multipleOf.json
278
- - JSON-Schema-Test-Suite/tests/draft6/not.json
279
- - JSON-Schema-Test-Suite/tests/draft6/oneOf.json
280
- - JSON-Schema-Test-Suite/tests/draft6/optional/bignum.json
281
- - JSON-Schema-Test-Suite/tests/draft6/optional/ecmascript-regex.json
282
- - JSON-Schema-Test-Suite/tests/draft6/optional/format.json
283
- - JSON-Schema-Test-Suite/tests/draft6/optional/zeroTerminatedFloats.json
284
- - JSON-Schema-Test-Suite/tests/draft6/pattern.json
285
- - JSON-Schema-Test-Suite/tests/draft6/patternProperties.json
286
- - JSON-Schema-Test-Suite/tests/draft6/properties.json
287
- - JSON-Schema-Test-Suite/tests/draft6/propertyNames.json
288
- - JSON-Schema-Test-Suite/tests/draft6/ref.json
289
- - JSON-Schema-Test-Suite/tests/draft6/refRemote.json
290
- - JSON-Schema-Test-Suite/tests/draft6/required.json
291
- - JSON-Schema-Test-Suite/tests/draft6/type.json
292
- - JSON-Schema-Test-Suite/tests/draft6/uniqueItems.json
293
- - JSON-Schema-Test-Suite/tests/draft7/additionalItems.json
294
- - JSON-Schema-Test-Suite/tests/draft7/additionalProperties.json
295
- - JSON-Schema-Test-Suite/tests/draft7/allOf.json
296
- - JSON-Schema-Test-Suite/tests/draft7/anyOf.json
297
- - JSON-Schema-Test-Suite/tests/draft7/boolean_schema.json
298
- - JSON-Schema-Test-Suite/tests/draft7/const.json
299
- - JSON-Schema-Test-Suite/tests/draft7/contains.json
300
- - JSON-Schema-Test-Suite/tests/draft7/default.json
301
- - JSON-Schema-Test-Suite/tests/draft7/definitions.json
302
- - JSON-Schema-Test-Suite/tests/draft7/dependencies.json
303
- - JSON-Schema-Test-Suite/tests/draft7/enum.json
304
- - JSON-Schema-Test-Suite/tests/draft7/exclusiveMaximum.json
305
- - JSON-Schema-Test-Suite/tests/draft7/exclusiveMinimum.json
306
- - JSON-Schema-Test-Suite/tests/draft7/format.json
307
- - JSON-Schema-Test-Suite/tests/draft7/if-then-else.json
308
- - JSON-Schema-Test-Suite/tests/draft7/items.json
309
- - JSON-Schema-Test-Suite/tests/draft7/maxItems.json
310
- - JSON-Schema-Test-Suite/tests/draft7/maxLength.json
311
- - JSON-Schema-Test-Suite/tests/draft7/maxProperties.json
312
- - JSON-Schema-Test-Suite/tests/draft7/maximum.json
313
- - JSON-Schema-Test-Suite/tests/draft7/minItems.json
314
- - JSON-Schema-Test-Suite/tests/draft7/minLength.json
315
- - JSON-Schema-Test-Suite/tests/draft7/minProperties.json
316
- - JSON-Schema-Test-Suite/tests/draft7/minimum.json
317
- - JSON-Schema-Test-Suite/tests/draft7/multipleOf.json
318
- - JSON-Schema-Test-Suite/tests/draft7/not.json
319
- - JSON-Schema-Test-Suite/tests/draft7/oneOf.json
320
- - JSON-Schema-Test-Suite/tests/draft7/optional/bignum.json
321
- - JSON-Schema-Test-Suite/tests/draft7/optional/content.json
322
- - JSON-Schema-Test-Suite/tests/draft7/optional/ecmascript-regex.json
323
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/date-time.json
324
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/date.json
325
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/email.json
326
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/hostname.json
327
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/idn-email.json
328
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/idn-hostname.json
329
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/ipv4.json
330
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/ipv6.json
331
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/iri-reference.json
332
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/iri.json
333
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/json-pointer.json
334
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/regex.json
335
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/relative-json-pointer.json
336
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/time.json
337
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/uri-reference.json
338
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/uri-template.json
339
- - JSON-Schema-Test-Suite/tests/draft7/optional/format/uri.json
340
- - JSON-Schema-Test-Suite/tests/draft7/optional/zeroTerminatedFloats.json
341
- - JSON-Schema-Test-Suite/tests/draft7/pattern.json
342
- - JSON-Schema-Test-Suite/tests/draft7/patternProperties.json
343
- - JSON-Schema-Test-Suite/tests/draft7/properties.json
344
- - JSON-Schema-Test-Suite/tests/draft7/propertyNames.json
345
- - JSON-Schema-Test-Suite/tests/draft7/ref.json
346
- - JSON-Schema-Test-Suite/tests/draft7/refRemote.json
347
- - JSON-Schema-Test-Suite/tests/draft7/required.json
348
- - JSON-Schema-Test-Suite/tests/draft7/type.json
349
- - JSON-Schema-Test-Suite/tests/draft7/uniqueItems.json
350
- - JSON-Schema-Test-Suite/tests/latest
351
- - JSON-Schema-Test-Suite/tox.ini
352
122
  - LICENSE.txt
353
123
  - README.md
354
124
  - Rakefile
@@ -1 +0,0 @@
1
- TODO
@@ -1,8 +0,0 @@
1
- language: python
2
- python: "3.7"
3
- node_js: "9"
4
- install:
5
- - pip install tox
6
- script:
7
- - tox
8
- - npm install && npm test || true
@@ -1,19 +0,0 @@
1
- Copyright (c) 2012 Julian Berman
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining a copy
4
- of this software and associated documentation files (the "Software"), to deal
5
- in the Software without restriction, including without limitation the rights
6
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
- copies of the Software, and to permit persons to whom the Software is
8
- furnished to do so, subject to the following conditions:
9
-
10
- The above copyright notice and this permission notice shall be included in
11
- all copies or substantial portions of the Software.
12
-
13
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
- THE SOFTWARE.