joi 4.6.2 → 4.9.0

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 (66) hide show
  1. package/.c9/.nakignore +17 -0
  2. package/.c9/metadata/tab0 +1 -0
  3. package/.c9/metadata/workspace/.c9/project.settings +1 -0
  4. package/.c9/metadata/workspace/.travis.yml +1 -0
  5. package/.c9/metadata/workspace/Makefile +1 -0
  6. package/.c9/metadata/workspace/README.md +1 -0
  7. package/.c9/metadata/workspace/lib/any.js +1 -0
  8. package/.c9/metadata/workspace/lib/array.js +1 -0
  9. package/.c9/metadata/workspace/lib/binary.js +1 -0
  10. package/.c9/metadata/workspace/lib/boolean.js +1 -0
  11. package/.c9/metadata/workspace/lib/cast.js +1 -0
  12. package/.c9/metadata/workspace/lib/date.js +1 -0
  13. package/.c9/metadata/workspace/lib/errors.js +1 -0
  14. package/.c9/metadata/workspace/lib/function.js +1 -0
  15. package/.c9/metadata/workspace/lib/index.js +1 -0
  16. package/.c9/metadata/workspace/lib/language.js +1 -0
  17. package/.c9/metadata/workspace/lib/number.js +1 -0
  18. package/.c9/metadata/workspace/lib/object.js +1 -0
  19. package/.c9/metadata/workspace/lib/string.js +1 -0
  20. package/.c9/metadata/workspace/package.json +1 -0
  21. package/.c9/metadata/workspace/test/alternatives.js +1 -0
  22. package/.c9/metadata/workspace/test/any.js +1 -0
  23. package/.c9/metadata/workspace/test/array.js +1 -0
  24. package/.c9/metadata/workspace/test/binary.js +1 -0
  25. package/.c9/metadata/workspace/test/boolean.js +1 -0
  26. package/.c9/metadata/workspace/test/date.js +1 -0
  27. package/.c9/metadata/workspace/test/errors.js +1 -0
  28. package/.c9/metadata/workspace/test/function.js +1 -0
  29. package/.c9/metadata/workspace/test/helper.js +1 -0
  30. package/.c9/metadata/workspace/test/index.js +1 -0
  31. package/.c9/metadata/workspace/test/number.js +1 -0
  32. package/.c9/metadata/workspace/test/object.js +1 -0
  33. package/.c9/metadata/workspace/test/ref.js +1 -0
  34. package/.c9/metadata/workspace/test/string.js +1 -0
  35. package/.c9/project.settings +34 -0
  36. package/.travis.yml +1 -0
  37. package/Makefile +3 -3
  38. package/README.md +162 -31
  39. package/examples/conditionalRequire.js +43 -0
  40. package/examples/customMessage.js +22 -0
  41. package/examples/multipleWhen.js +17 -0
  42. package/lib/any.js +35 -24
  43. package/lib/array.js +25 -0
  44. package/lib/date.js +64 -9
  45. package/lib/errors.js +18 -2
  46. package/lib/index.js +3 -2
  47. package/lib/language.js +17 -6
  48. package/lib/number.js +50 -0
  49. package/lib/object.js +69 -5
  50. package/lib/string.js +27 -6
  51. package/package.json +5 -3
  52. package/test/alternatives.js +12 -10
  53. package/test/any.js +64 -15
  54. package/test/array.js +55 -16
  55. package/test/binary.js +13 -11
  56. package/test/boolean.js +9 -7
  57. package/test/date.js +143 -20
  58. package/test/errors.js +26 -15
  59. package/test/function.js +7 -5
  60. package/test/helper.js +7 -5
  61. package/test/index.js +116 -73
  62. package/test/number.js +125 -12
  63. package/test/object.js +192 -43
  64. package/test/ref.js +22 -20
  65. package/test/string.js +255 -106
  66. package/AUTHORS +0 -3
package/test/ref.js CHANGED
@@ -1,6 +1,7 @@
1
1
  // Load modules
2
2
 
3
3
  var Lab = require('lab');
4
+ var Code = require('code');
4
5
  var Joi = require('../lib');
5
6
  var Helper = require('./helper');
6
7
 
@@ -12,11 +13,12 @@ var internals = {};
12
13
 
13
14
  // Test shortcuts
14
15
 
15
- var expect = Lab.expect;
16
- var before = Lab.before;
17
- var after = Lab.after;
18
- var describe = Lab.experiment;
19
- var it = Lab.test;
16
+ var lab = exports.lab = Lab.script();
17
+ var before = lab.before;
18
+ var after = lab.after;
19
+ var describe = lab.describe;
20
+ var it = lab.it;
21
+ var expect = Code.expect;
20
22
 
21
23
 
22
24
  describe('ref', function () {
@@ -30,7 +32,7 @@ describe('ref', function () {
30
32
 
31
33
  schema.validate({ a: 5, b: 6 }, function (err, value) {
32
34
 
33
- expect(err).to.exist;
35
+ expect(err).to.exist();
34
36
  expect(err.message).to.equal('a must be one of ref:b');
35
37
 
36
38
  Helper.validate(schema, [
@@ -51,7 +53,7 @@ describe('ref', function () {
51
53
 
52
54
  schema.validate({ a: 5, '': 6 }, function (err, value) {
53
55
 
54
- expect(err).to.exist;
56
+ expect(err).to.exist();
55
57
  expect(err.message).to.equal('a must be one of ref:');
56
58
 
57
59
  Helper.validate(schema, [
@@ -74,7 +76,7 @@ describe('ref', function () {
74
76
 
75
77
  schema.validate({ a: 5, b: { c: 6 } }, function (err, value) {
76
78
 
77
- expect(err).to.exist;
79
+ expect(err).to.exist();
78
80
  expect(err.message).to.equal('a must be one of ref:b.c');
79
81
 
80
82
  Helper.validate(schema, [
@@ -101,7 +103,7 @@ describe('ref', function () {
101
103
  var input = { a: 5, b: { c: 5 } };
102
104
  schema.validate(input, function (err, value) {
103
105
 
104
- expect(err).to.not.exist;
106
+ expect(err).to.not.exist();
105
107
 
106
108
  var parent = Joi.object({
107
109
  e: schema
@@ -109,7 +111,7 @@ describe('ref', function () {
109
111
 
110
112
  parent.validate({ e: input }, function (err, value) {
111
113
 
112
- expect(err).to.not.exist;
114
+ expect(err).to.not.exist();
113
115
  done();
114
116
  });
115
117
  });
@@ -129,7 +131,7 @@ describe('ref', function () {
129
131
 
130
132
  schema.validate({ a: 5, b: { c: 5 } }, function (err, value) {
131
133
 
132
- expect(err).to.not.exist;
134
+ expect(err).to.not.exist();
133
135
  done();
134
136
  });
135
137
  });
@@ -145,7 +147,7 @@ describe('ref', function () {
145
147
 
146
148
  ab.validate({ a: { c: '5' }, b: 5 }, function (err, value) {
147
149
 
148
- expect(err).to.not.exist;
150
+ expect(err).to.not.exist();
149
151
 
150
152
  var ba = Joi.object({
151
153
  b: Joi.ref('a.c'),
@@ -156,7 +158,7 @@ describe('ref', function () {
156
158
 
157
159
  ba.validate({ a: { c: '5' }, b: 5 }, function (err, value) {
158
160
 
159
- expect(err).to.not.exist;
161
+ expect(err).to.not.exist();
160
162
  done();
161
163
  });
162
164
  });
@@ -171,7 +173,7 @@ describe('ref', function () {
171
173
 
172
174
  schema.validate({ b: 6 }, function (err, value) {
173
175
 
174
- expect(err).to.not.exist;
176
+ expect(err).to.not.exist();
175
177
  expect(value).to.deep.equal({ a: 6, b: 6 });
176
178
  done();
177
179
  });
@@ -186,7 +188,7 @@ describe('ref', function () {
186
188
 
187
189
  ab.validate({ b: '6' }, function (err, value) {
188
190
 
189
- expect(err).to.not.exist;
191
+ expect(err).to.not.exist();
190
192
  expect(value).to.deep.equal({ a: 6, b: 6 });
191
193
 
192
194
  var ba = Joi.object({
@@ -196,7 +198,7 @@ describe('ref', function () {
196
198
 
197
199
  ba.validate({ b: '6' }, function (err, value) {
198
200
 
199
- expect(err).to.not.exist;
201
+ expect(err).to.not.exist();
200
202
  expect(value).to.deep.equal({ a: 6, b: 6 });
201
203
  done();
202
204
  });
@@ -261,7 +263,7 @@ describe('ref', function () {
261
263
 
262
264
  Joi.validate({ b: 6 }, schema, { context: { x: 22 } }, function (err, value) {
263
265
 
264
- expect(err).to.not.exist;
266
+ expect(err).to.not.exist();
265
267
  expect(value).to.deep.equal({ a: 22, b: 6 });
266
268
  done();
267
269
  });
@@ -276,7 +278,7 @@ describe('ref', function () {
276
278
 
277
279
  Joi.validate({ b: 6 }, schema, { context: { x: 22 } }, function (err, value) {
278
280
 
279
- expect(err).to.not.exist;
281
+ expect(err).to.not.exist();
280
282
  expect(value).to.deep.equal({ a: 22, b: 6 });
281
283
  done();
282
284
  });
@@ -291,7 +293,7 @@ describe('ref', function () {
291
293
 
292
294
  Joi.validate({ a: 5, b: 6 }, schema, { context: { x: 22 } }, function (err, value) {
293
295
 
294
- expect(err).to.exist;
296
+ expect(err).to.exist();
295
297
  expect(err.message).to.equal('a must be one of context:x');
296
298
 
297
299
  Helper.validateOptions(schema, [
@@ -351,7 +353,7 @@ describe('ref', function () {
351
353
  it('describes schema with ref', function (done) {
352
354
 
353
355
  var desc = Joi.compile(Joi.ref('a.b')).describe();
354
- expect(Joi.isRef(desc.valids[0])).to.be.true;
356
+ expect(Joi.isRef(desc.valids[0])).to.be.true();
355
357
  done();
356
358
  });
357
359