Skip to content

Commit 8816969

Browse files
authored
ENGCOM-5420: Fixed issue #21650 #23253
2 parents fe5a481 + 4361244 commit 8816969

File tree

2 files changed

+26
-1
lines changed
  • app/code/Magento/Ui/view/base/web/js/lib/validation
  • dev/tests/js/jasmine/tests/app/code/Magento/Ui/base/js/lib/validation

2 files changed

+26
-1
lines changed

app/code/Magento/Ui/view/base/web/js/lib/validation/rules.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -651,7 +651,8 @@ define([
651651
'validate-number': [
652652
function (value) {
653653
return utils.isEmptyNoTrim(value) ||
654-
!isNaN(utils.parseNumber(value)) && /^\s*-?\d*(,\d*)*(\.\d*)?\s*$/.test(value);
654+
!isNaN(utils.parseNumber(value)) &&
655+
/^\s*-?\d*(?:[.,|'|\s]\d+)*(?:[.,|'|\s]\d{2})?-?\s*$/.test(value);
655656
},
656657
$.mage.__('Please enter a valid number in this field.')
657658
],

dev/tests/js/jasmine/tests/app/code/Magento/Ui/base/js/lib/validation/rules.test.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,35 @@ define([
5858
expect(rules['validate-number'].handler(value)).toBe(true);
5959
});
6060

61+
it('Check on float without leading zero', function () {
62+
var value = '.50';
63+
64+
expect(rules['validate-number'].handler(value)).toBe(true);
65+
});
66+
6167
it('Check on formatted float', function () {
6268
var value = '1,000,000.50';
6369

6470
expect(rules['validate-number'].handler(value)).toBe(true);
6571
});
72+
73+
it('Check on space', function () {
74+
var value = '10 000';
75+
76+
expect(rules['validate-number'].handler(value)).toBe(true);
77+
});
78+
79+
it('Check on formatted float (For International price)', function () {
80+
var value = '10.000,00';
81+
82+
expect(rules['validate-number'].handler(value)).toBe(true);
83+
});
84+
85+
it('Check on formatted float (For International price)', function () {
86+
var value = "10'000.00";
87+
88+
expect(rules['validate-number'].handler(value)).toBe(true);
89+
});
6690

6791
it('Check on not a number', function () {
6892
var value = 'string';

0 commit comments

Comments
 (0)