From 1cafebdb42186361bfabcc98fbe5674c90ec708b Mon Sep 17 00:00:00 2001 From: Peter Bacon Darwin Date: Mon, 14 Sep 2015 21:23:43 +0100 Subject: [PATCH] fix(filters): ensure `formatNumber` observes i18n decimal separators Closes #10342 --- src/ng/filter/filters.js | 1 + test/ng/filter/filtersSpec.js | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/ng/filter/filters.js b/src/ng/filter/filters.js index 7805085fd7d6..bc84deb76612 100644 --- a/src/ng/filter/filters.js +++ b/src/ng/filter/filters.js @@ -214,6 +214,7 @@ function formatNumber(number, pattern, groupSep, decimalSep, fractionSize) { if (fractionSize > 0 && number < 1) { formatedText = number.toFixed(fractionSize); number = parseFloat(formatedText); + formatedText = formatedText.replace(DECIMAL_SEP, decimalSep); } } diff --git a/test/ng/filter/filtersSpec.js b/test/ng/filter/filtersSpec.js index 52ad6fbd6a4d..4bb58f45e3a3 100644 --- a/test/ng/filter/filtersSpec.js +++ b/test/ng/filter/filtersSpec.js @@ -62,6 +62,8 @@ describe('filters', function() { it('should format according different separators', function() { var num = formatNumber(1234567.1, pattern, '.', ',', 2); expect(num).toBe('1.234.567,10'); + num = formatNumber(1e-14, pattern, '.', ',', 14); + expect(num).toBe('0,00000000000001'); }); it('should format with or without fractionSize', function() {