json_schemer 0.2.9 → 0.2.10

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 (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,15 +0,0 @@
1
- [
2
- {
3
- "description": "some languages do not distinguish between different types of numeric value",
4
- "schema": {
5
- "type": "integer"
6
- },
7
- "tests": [
8
- {
9
- "description": "a float without fractional part is an integer",
10
- "data": 1.0,
11
- "valid": true
12
- }
13
- ]
14
- }
15
- ]
@@ -1,34 +0,0 @@
1
- [
2
- {
3
- "description": "pattern validation",
4
- "schema": {"pattern": "^a*$"},
5
- "tests": [
6
- {
7
- "description": "a matching pattern is valid",
8
- "data": "aaa",
9
- "valid": true
10
- },
11
- {
12
- "description": "a non-matching pattern is invalid",
13
- "data": "abc",
14
- "valid": false
15
- },
16
- {
17
- "description": "ignores non-strings",
18
- "data": true,
19
- "valid": true
20
- }
21
- ]
22
- },
23
- {
24
- "description": "pattern is not anchored",
25
- "schema": {"pattern": "a+"},
26
- "tests": [
27
- {
28
- "description": "matches a substring",
29
- "data": "xxaayy",
30
- "valid": true
31
- }
32
- ]
33
- }
34
- ]
@@ -1,151 +0,0 @@
1
- [
2
- {
3
- "description":
4
- "patternProperties validates properties matching a regex",
5
- "schema": {
6
- "patternProperties": {
7
- "f.*o": {"type": "integer"}
8
- }
9
- },
10
- "tests": [
11
- {
12
- "description": "a single valid match is valid",
13
- "data": {"foo": 1},
14
- "valid": true
15
- },
16
- {
17
- "description": "multiple valid matches is valid",
18
- "data": {"foo": 1, "foooooo" : 2},
19
- "valid": true
20
- },
21
- {
22
- "description": "a single invalid match is invalid",
23
- "data": {"foo": "bar", "fooooo": 2},
24
- "valid": false
25
- },
26
- {
27
- "description": "multiple invalid matches is invalid",
28
- "data": {"foo": "bar", "foooooo" : "baz"},
29
- "valid": false
30
- },
31
- {
32
- "description": "ignores arrays",
33
- "data": ["foo"],
34
- "valid": true
35
- },
36
- {
37
- "description": "ignores strings",
38
- "data": "foo",
39
- "valid": true
40
- },
41
- {
42
- "description": "ignores other non-objects",
43
- "data": 12,
44
- "valid": true
45
- }
46
- ]
47
- },
48
- {
49
- "description": "multiple simultaneous patternProperties are validated",
50
- "schema": {
51
- "patternProperties": {
52
- "a*": {"type": "integer"},
53
- "aaa*": {"maximum": 20}
54
- }
55
- },
56
- "tests": [
57
- {
58
- "description": "a single valid match is valid",
59
- "data": {"a": 21},
60
- "valid": true
61
- },
62
- {
63
- "description": "a simultaneous match is valid",
64
- "data": {"aaaa": 18},
65
- "valid": true
66
- },
67
- {
68
- "description": "multiple matches is valid",
69
- "data": {"a": 21, "aaaa": 18},
70
- "valid": true
71
- },
72
- {
73
- "description": "an invalid due to one is invalid",
74
- "data": {"a": "bar"},
75
- "valid": false
76
- },
77
- {
78
- "description": "an invalid due to the other is invalid",
79
- "data": {"aaaa": 31},
80
- "valid": false
81
- },
82
- {
83
- "description": "an invalid due to both is invalid",
84
- "data": {"aaa": "foo", "aaaa": 31},
85
- "valid": false
86
- }
87
- ]
88
- },
89
- {
90
- "description": "regexes are not anchored by default and are case sensitive",
91
- "schema": {
92
- "patternProperties": {
93
- "[0-9]{2,}": { "type": "boolean" },
94
- "X_": { "type": "string" }
95
- }
96
- },
97
- "tests": [
98
- {
99
- "description": "non recognized members are ignored",
100
- "data": { "answer 1": "42" },
101
- "valid": true
102
- },
103
- {
104
- "description": "recognized members are accounted for",
105
- "data": { "a31b": null },
106
- "valid": false
107
- },
108
- {
109
- "description": "regexes are case sensitive",
110
- "data": { "a_x_3": 3 },
111
- "valid": true
112
- },
113
- {
114
- "description": "regexes are case sensitive, 2",
115
- "data": { "a_X_3": 3 },
116
- "valid": false
117
- }
118
- ]
119
- },
120
- {
121
- "description": "patternProperties with boolean schemas",
122
- "schema": {
123
- "patternProperties": {
124
- "f.*": true,
125
- "b.*": false
126
- }
127
- },
128
- "tests": [
129
- {
130
- "description": "object with property matching schema true is valid",
131
- "data": {"foo": 1},
132
- "valid": true
133
- },
134
- {
135
- "description": "object with property matching schema false is invalid",
136
- "data": {"bar": 2},
137
- "valid": false
138
- },
139
- {
140
- "description": "object with both properties is invalid",
141
- "data": {"foo": 1, "bar": 2},
142
- "valid": false
143
- },
144
- {
145
- "description": "empty object is valid",
146
- "data": {},
147
- "valid": true
148
- }
149
- ]
150
- }
151
- ]
@@ -1,167 +0,0 @@
1
- [
2
- {
3
- "description": "object properties validation",
4
- "schema": {
5
- "properties": {
6
- "foo": {"type": "integer"},
7
- "bar": {"type": "string"}
8
- }
9
- },
10
- "tests": [
11
- {
12
- "description": "both properties present and valid is valid",
13
- "data": {"foo": 1, "bar": "baz"},
14
- "valid": true
15
- },
16
- {
17
- "description": "one property invalid is invalid",
18
- "data": {"foo": 1, "bar": {}},
19
- "valid": false
20
- },
21
- {
22
- "description": "both properties invalid is invalid",
23
- "data": {"foo": [], "bar": {}},
24
- "valid": false
25
- },
26
- {
27
- "description": "doesn't invalidate other properties",
28
- "data": {"quux": []},
29
- "valid": true
30
- },
31
- {
32
- "description": "ignores arrays",
33
- "data": [],
34
- "valid": true
35
- },
36
- {
37
- "description": "ignores other non-objects",
38
- "data": 12,
39
- "valid": true
40
- }
41
- ]
42
- },
43
- {
44
- "description":
45
- "properties, patternProperties, additionalProperties interaction",
46
- "schema": {
47
- "properties": {
48
- "foo": {"type": "array", "maxItems": 3},
49
- "bar": {"type": "array"}
50
- },
51
- "patternProperties": {"f.o": {"minItems": 2}},
52
- "additionalProperties": {"type": "integer"}
53
- },
54
- "tests": [
55
- {
56
- "description": "property validates property",
57
- "data": {"foo": [1, 2]},
58
- "valid": true
59
- },
60
- {
61
- "description": "property invalidates property",
62
- "data": {"foo": [1, 2, 3, 4]},
63
- "valid": false
64
- },
65
- {
66
- "description": "patternProperty invalidates property",
67
- "data": {"foo": []},
68
- "valid": false
69
- },
70
- {
71
- "description": "patternProperty validates nonproperty",
72
- "data": {"fxo": [1, 2]},
73
- "valid": true
74
- },
75
- {
76
- "description": "patternProperty invalidates nonproperty",
77
- "data": {"fxo": []},
78
- "valid": false
79
- },
80
- {
81
- "description": "additionalProperty ignores property",
82
- "data": {"bar": []},
83
- "valid": true
84
- },
85
- {
86
- "description": "additionalProperty validates others",
87
- "data": {"quux": 3},
88
- "valid": true
89
- },
90
- {
91
- "description": "additionalProperty invalidates others",
92
- "data": {"quux": "foo"},
93
- "valid": false
94
- }
95
- ]
96
- },
97
- {
98
- "description": "properties with boolean schema",
99
- "schema": {
100
- "properties": {
101
- "foo": true,
102
- "bar": false
103
- }
104
- },
105
- "tests": [
106
- {
107
- "description": "no property present is valid",
108
- "data": {},
109
- "valid": true
110
- },
111
- {
112
- "description": "only 'true' property present is valid",
113
- "data": {"foo": 1},
114
- "valid": true
115
- },
116
- {
117
- "description": "only 'false' property present is invalid",
118
- "data": {"bar": 2},
119
- "valid": false
120
- },
121
- {
122
- "description": "both properties present is invalid",
123
- "data": {"foo": 1, "bar": 2},
124
- "valid": false
125
- }
126
- ]
127
- },
128
- {
129
- "description": "properties with escaped characters",
130
- "schema": {
131
- "properties": {
132
- "foo\nbar": {"type": "number"},
133
- "foo\"bar": {"type": "number"},
134
- "foo\\bar": {"type": "number"},
135
- "foo\rbar": {"type": "number"},
136
- "foo\tbar": {"type": "number"},
137
- "foo\fbar": {"type": "number"}
138
- }
139
- },
140
- "tests": [
141
- {
142
- "description": "object with all numbers is valid",
143
- "data": {
144
- "foo\nbar": 1,
145
- "foo\"bar": 1,
146
- "foo\\bar": 1,
147
- "foo\rbar": 1,
148
- "foo\tbar": 1,
149
- "foo\fbar": 1
150
- },
151
- "valid": true
152
- },
153
- {
154
- "description": "object with strings is invalid",
155
- "data": {
156
- "foo\nbar": "1",
157
- "foo\"bar": "1",
158
- "foo\\bar": "1",
159
- "foo\rbar": "1",
160
- "foo\tbar": "1",
161
- "foo\fbar": "1"
162
- },
163
- "valid": false
164
- }
165
- ]
166
- }
167
- ]
@@ -1,78 +0,0 @@
1
- [
2
- {
3
- "description": "propertyNames validation",
4
- "schema": {
5
- "propertyNames": {"maxLength": 3}
6
- },
7
- "tests": [
8
- {
9
- "description": "all property names valid",
10
- "data": {
11
- "f": {},
12
- "foo": {}
13
- },
14
- "valid": true
15
- },
16
- {
17
- "description": "some property names invalid",
18
- "data": {
19
- "foo": {},
20
- "foobar": {}
21
- },
22
- "valid": false
23
- },
24
- {
25
- "description": "object without properties is valid",
26
- "data": {},
27
- "valid": true
28
- },
29
- {
30
- "description": "ignores arrays",
31
- "data": [1, 2, 3, 4],
32
- "valid": true
33
- },
34
- {
35
- "description": "ignores strings",
36
- "data": "foobar",
37
- "valid": true
38
- },
39
- {
40
- "description": "ignores other non-objects",
41
- "data": 12,
42
- "valid": true
43
- }
44
- ]
45
- },
46
- {
47
- "description": "propertyNames with boolean schema true",
48
- "schema": {"propertyNames": true},
49
- "tests": [
50
- {
51
- "description": "object with any properties is valid",
52
- "data": {"foo": 1},
53
- "valid": true
54
- },
55
- {
56
- "description": "empty object is valid",
57
- "data": {},
58
- "valid": true
59
- }
60
- ]
61
- },
62
- {
63
- "description": "propertyNames with boolean schema false",
64
- "schema": {"propertyNames": false},
65
- "tests": [
66
- {
67
- "description": "object with any properties is invalid",
68
- "data": {"foo": 1},
69
- "valid": false
70
- },
71
- {
72
- "description": "empty object is valid",
73
- "data": {},
74
- "valid": true
75
- }
76
- ]
77
- }
78
- ]