From b0d6f496f80e632c32622754e9509fb0fe7d2833 Mon Sep 17 00:00:00 2001 From: Jose C Perea Date: Tue, 13 Aug 2019 18:57:27 +0200 Subject: [PATCH] fix(localize): update the way to obtain the group separator for a number four digit numbers can be written without separator, so it would be safer to obtain the separator by formatting a five digit number. The bug was found with the locale 'es-ES', where the format returned for '1000' was '1000' instead of the expected '1.000'. We add the specific expect clause on the test for it. On branch fix/numberGroupSeparator Changes to be committed: modified: packages/localize/src/number/getGroupSeparator.js modified: packages/localize/test/number/getGroupSeparator.test.js --- packages/localize/src/number/getGroupSeparator.js | 4 ++-- packages/localize/test/number/getGroupSeparator.test.js | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/localize/src/number/getGroupSeparator.js b/packages/localize/src/number/getGroupSeparator.js index 4a1cebb07..987bea89e 100644 --- a/packages/localize/src/number/getGroupSeparator.js +++ b/packages/localize/src/number/getGroupSeparator.js @@ -12,6 +12,6 @@ export function getGroupSeparator(locale) { const formattedNumber = Intl.NumberFormat(computedLocale, { style: 'decimal', minimumFractionDigits: 0, - }).format('1000'); - return normalSpaces(formattedNumber[1]); + }).format('10000'); + return normalSpaces(formattedNumber[2]); } diff --git a/packages/localize/test/number/getGroupSeparator.test.js b/packages/localize/test/number/getGroupSeparator.test.js index c8a14e47e..49718441c 100644 --- a/packages/localize/test/number/getGroupSeparator.test.js +++ b/packages/localize/test/number/getGroupSeparator.test.js @@ -7,5 +7,6 @@ describe('getGroupSeparator', () => { expect(getGroupSeparator('en-GB')).to.equal(','); expect(getGroupSeparator('nl-NL')).to.equal('.'); expect(getGroupSeparator('fr-FR')).to.equal(' '); + expect(getGroupSeparator('es-ES')).to.equal('.'); }); });