Skip to content

Commit

Permalink
Pass value to number.base error
Browse files Browse the repository at this point in the history
  • Loading branch information
Marsup committed Aug 1, 2018
1 parent a9eb527 commit d29b6cd
Show file tree
Hide file tree
Showing 8 changed files with 72 additions and 72 deletions.
2 changes: 1 addition & 1 deletion lib/types/number/index.js
Expand Up @@ -47,7 +47,7 @@ internals.Number = class extends Any {
result.value = Math.round(result.value * precision) / precision;
}

result.errors = isNumber ? null : this.createError('number.base', null, state, options);
result.errors = isNumber ? null : this.createError('number.base', { value }, state, options);
return result;
}

Expand Down
16 changes: 8 additions & 8 deletions test/errors.js
Expand Up @@ -198,7 +198,7 @@ describe('errors', () => {
message: '"a()" must be a number',
path: ['a()'],
type: 'number.base',
context: { label: 'a()', key: 'a()' }
context: { label: 'a()', key: 'a()', value: 'x' }
}]);

const err2 = await expect(Joi.validate({ 'b()': 'x' }, schema, { escapeHtml: true })).to.reject();
Expand All @@ -223,7 +223,7 @@ describe('errors', () => {
message: '"a()" must be a number',
path: ['a()'],
type: 'number.base',
context: { label: 'a()', key: 'a()' }
context: { label: 'a()', key: 'a()', value: 'x' }
}]);

const err2 = await expect(Joi.validate({ 'b()': 'x' }, schema)).to.reject();
Expand Down Expand Up @@ -257,7 +257,7 @@ describe('errors', () => {
message: '"notNumber" must be a number',
path: ['notNumber'],
type: 'number.base',
context: { label: 'notNumber', key: 'notNumber' }
context: { label: 'notNumber', key: 'notNumber', value: '' }
},
{
message: '"notString" must be a string',
Expand Down Expand Up @@ -288,7 +288,7 @@ describe('errors', () => {
message: '"x" must be a number',
path: [1, 1, 'x'],
type: 'number.base',
context: { label: 'x', key: 'x' }
context: { label: 'x', key: 'x', value: 'a' }
}]);
});

Expand Down Expand Up @@ -326,7 +326,7 @@ describe('errors', () => {
message: '"x" must be a number',
path: ['x', 1, 'x'],
type: 'number.base',
context: { label: 'x', key: 'x' }
context: { label: 'x', key: 'x', value: 'a' }
}]);
});

Expand Down Expand Up @@ -593,7 +593,7 @@ describe('errors', () => {
message: '"0" must be a number',
path: ['a', 0],
type: 'number.base',
context: { label: 0, key: 0 }
context: { label: 0, key: 0, value: { b: 2 } }
}]);
expect(err.annotate()).to.equal('{\n \"a\": [\n { \u001b[31m[1]\u001b[0m\n \"b\": 2\n }\n ]\n}\n\u001b[31m\n[1] \"0\" must be a number\u001b[0m');
});
Expand Down Expand Up @@ -688,7 +688,7 @@ describe('errors', () => {
message: '"x" must be a number',
path: ['x'],
type: 'number.base',
context: { label: 'x', key: 'x' }
context: { label: 'x', key: 'x', value: true }
},
{
message: '"x" must be a number of milliseconds or valid date string',
Expand Down Expand Up @@ -743,7 +743,7 @@ describe('errors', () => {
message: '"z" must be a number',
path: ['x', 'y', 'z'],
type: 'number.base',
context: { label: 'z', key: 'z' }
context: { label: 'z', key: 'z', value: input.x.y }
}]);
expect(err.annotate()).to.equal('{\n \"x\": {\n \"y\": {\n \"z\" \u001b[31m[1]\u001b[0m: \"[Circular ~.x.y]\"\n }\n }\n}\n\u001b[31m\n[1] \"z\" must be a number\u001b[0m');
});
Expand Down
18 changes: 9 additions & 9 deletions test/index.js
Expand Up @@ -212,7 +212,7 @@ describe('Joi', () => {
message: '"value" must be a number',
path: [],
type: 'number.base',
context: { label: 'value', key: undefined }
context: { label: 'value', key: undefined, value: 'other' }
},
{
message: '"value" must be an object',
Expand Down Expand Up @@ -258,7 +258,7 @@ describe('Joi', () => {
message: '"value" must be a number',
path: [],
type: 'number.base',
context: { label: 'value', key: undefined }
context: { label: 'value', key: undefined, value: { c: 5 } }
},
{
message: '"c" is not allowed',
Expand All @@ -284,7 +284,7 @@ describe('Joi', () => {
message: '"value" must be a number',
path: [],
type: 'number.base',
context: { label: 'value', key: undefined }
context: { label: 'value', key: undefined, value: { a: 5, b: 'a' } }
},
{
message: '"a" must be a boolean',
Expand Down Expand Up @@ -316,7 +316,7 @@ describe('Joi', () => {
message: '"value" must be a number',
path: [],
type: 'number.base',
context: { label: 'value', key: undefined }
context: { label: 'value', key: undefined, value: 'other' }
},
{
message: '"value" must be an object',
Expand Down Expand Up @@ -362,7 +362,7 @@ describe('Joi', () => {
message: '"value" must be a number',
path: [],
type: 'number.base',
context: { label: 'value', key: undefined }
context: { label: 'value', key: undefined, value: { c: 5 } }
},
{
message: '"c" is not allowed',
Expand All @@ -388,7 +388,7 @@ describe('Joi', () => {
message: '"value" must be a number',
path: [],
type: 'number.base',
context: { label: 'value', key: undefined }
context: { label: 'value', key: undefined, value: { a: 5, b: 'a' } }
},
{
message: '"a" must be a boolean',
Expand Down Expand Up @@ -830,7 +830,7 @@ describe('Joi', () => {
message: '"code" must be a number',
path: ['code'],
type: 'number.base',
context: { label: 'code', key: 'code' }
context: { label: 'code', key: 'code', value: null }
}]
}],
[{ code: 123 }, true],
Expand Down Expand Up @@ -988,7 +988,7 @@ describe('Joi', () => {
message: '"code" must be a number',
path: ['code'],
type: 'number.base',
context: { label: 'code', key: 'code' }
context: { label: 'code', key: 'code', value: null }
}]
}],
[{ code: 123 }, false, null, {
Expand Down Expand Up @@ -3030,7 +3030,7 @@ describe('Joi', () => {
message: '"a" must be a number',
path: ['a'],
type: 'number.base',
context: { key: 'a', label: 'a' }
context: { key: 'a', label: 'a', value: 'a' }
}]
}]
]);
Expand Down
2 changes: 1 addition & 1 deletion test/types/alternatives.js
Expand Up @@ -507,7 +507,7 @@ describe('alternatives', () => {
message: '"a" must be a number',
path: ['a'],
type: 'number.base',
context: { label: 'a', key: 'a' }
context: { label: 'a', key: 'a', value: 'y' }
}]
}],
[{ a: 'x', b: null }, true],
Expand Down
18 changes: 9 additions & 9 deletions test/types/any.js
Expand Up @@ -319,7 +319,7 @@ describe('any', () => {
message: '"a" must be a number',
path: ['a'],
type: 'number.base',
context: { label: 'a', key: 'a' }
context: { label: 'a', key: 'a', value: 'a' }
}]);
});

Expand All @@ -333,7 +333,7 @@ describe('any', () => {
message: '"a" must be a number',
path: [0, 'a'],
type: 'number.base',
context: { label: 'a', key: 'a' }
context: { label: 'a', key: 'a', value: 'a' }
}]);
});

Expand Down Expand Up @@ -364,7 +364,7 @@ describe('any', () => {
message: '"b" must be a number',
path: ['b'],
type: 'number.base',
context: { label: 'b', key: 'b' }
context: { label: 'b', key: 'b', value: '2' }
}]);
});
});
Expand Down Expand Up @@ -1006,7 +1006,7 @@ describe('any', () => {
message: '"a" must be a number',
path: ['a'],
type: 'number.base',
context: { label: 'a', key: 'a' }
context: { label: 'a', key: 'a', value: 'a' }
}]
}],
[{}, true],
Expand Down Expand Up @@ -1245,7 +1245,7 @@ describe('any', () => {
message: '"value" must be a number',
path: [],
type: 'number.base',
context: { label: 'value', key: undefined }
context: { label: 'value', key: undefined, value: '2' }
}]);
});

Expand All @@ -1258,7 +1258,7 @@ describe('any', () => {
message: '"value" must be a number',
path: [],
type: 'number.base',
context: { label: 'value', key: undefined }
context: { label: 'value', key: undefined, value: '2' }
}]);
});
});
Expand Down Expand Up @@ -1307,7 +1307,7 @@ describe('any', () => {
message: '"value" must be a number',
path: [],
type: 'number.base',
context: { label: 'value', key: undefined }
context: { label: 'value', key: undefined, value: '1' }
}]
}]
]);
Expand Down Expand Up @@ -2126,7 +2126,7 @@ describe('any', () => {
message: '"b" must be a number',
path: ['b'],
type: 'number.base',
context: { key: 'b', label: 'b' }
context: { key: 'b', label: 'b', value: 'b' }
}]
}],
[{ a: 'a', b: 0 }, true],
Expand Down Expand Up @@ -2632,7 +2632,7 @@ describe('any', () => {
message: '"c" must be a number',
path: ['b', 'c'],
type: 'number.base',
context: { key: 'c', label: 'c' }
context: { key: 'c', label: 'c', value: 'x' }
}]);
});

Expand Down
16 changes: 8 additions & 8 deletions test/types/array.js
Expand Up @@ -799,7 +799,7 @@ describe('array', () => {
message: '"0" must be a number',
path: [0],
type: 'number.base',
context: { label: 0, key: 0 }
context: { label: 0, key: 0, value: 'a' }
}]
}],
[['1', '2', 4], true]
Expand Down Expand Up @@ -851,7 +851,7 @@ describe('array', () => {
message: '"2" must be a number',
path: [2],
type: 'number.base',
context: { label: 2, key: 2 }
context: { label: 2, key: 2, value: [1] }
}]
}]
]);
Expand Down Expand Up @@ -1869,7 +1869,7 @@ describe('array', () => {
message: '"0" must be a number',
path: [0],
type: 'number.base',
context: { label: 0, key: 0 }
context: { label: 0, key: 0, value: 'a' }
}]
}],
['a', false, null, {
Expand All @@ -1878,7 +1878,7 @@ describe('array', () => {
message: '"value" must be a number',
path: [],
type: 'number.base',
context: { label: 'value', key: undefined }
context: { label: 'value', key: undefined, value: 'a' }
}]
}],
[true, false, null, {
Expand Down Expand Up @@ -1927,7 +1927,7 @@ describe('array', () => {
message: '"0" must be a number',
path: [0, 0],
type: 'number.base',
context: { label: 0, key: 0 }
context: { label: 0, key: 0, value: 'a' }
}]
}],
[['a'], false, null, {
Expand Down Expand Up @@ -2125,7 +2125,7 @@ describe('array', () => {
message: '"0" must be a number',
path: [0],
type: 'number.base',
context: { label: 0, key: 0 }
context: { label: 0, key: 0, value: 's1' }
}]);
});

Expand Down Expand Up @@ -2199,7 +2199,7 @@ describe('array', () => {
message: '"4" must be a number',
path: [4],
type: 'number.base',
context: { label: 4, key: 4 }
context: { label: 4, key: 4, value: 's5' }
}]);
});

Expand Down Expand Up @@ -2263,7 +2263,7 @@ describe('array', () => {
message: '"0" must be a number',
path: [0],
type: 'number.base',
context: { label: 0, key: 0 }
context: { label: 0, key: 0, value: 's1' }
},
{
message: '"1" must be a string',
Expand Down

0 comments on commit d29b6cd

Please sign in to comment.