diff --git a/addon/number.js b/addon/number.js index 0f9a571..a87b2a3 100755 --- a/addon/number.js +++ b/addon/number.js @@ -39,6 +39,10 @@ const { * @param {String} attribute */ export default function validateNumber(value, options) { + if (typeof value === 'string') { + value = value.replace(/,/g, '.'); + } + let numValue = Number(value); let optionKeys = Object.keys(options); let { allowBlank, allowNone = true, allowString, integer } = getProperties(options, ['allowBlank', 'allowNone', 'allowString', 'integer']); diff --git a/tests/unit/validators/number-test.js b/tests/unit/validators/number-test.js index bd8fb8a..2fc0956 100644 --- a/tests/unit/validators/number-test.js +++ b/tests/unit/validators/number-test.js @@ -23,7 +23,7 @@ test('no options', function(assert) { }); test('allow string', function(assert) { - assert.expect(6); + assert.expect(7); options = { allowString: true @@ -35,6 +35,9 @@ test('allow string', function(assert) { result = validate('22.22', cloneOptions(options)); assert.equal(processResult(result), true); + result = validate('22,22', cloneOptions(options)); + assert.equal(processResult(result), true); + result = validate('test', cloneOptions(options)); assert.equal(processResult(result), 'This field must be a number');