|
|
@@ -0,0 +1,65 @@
|
|
|
+import {formatNumber, unformatNumber} from '../../packages/input-number/src/NumberTransform.js';
|
|
|
+
|
|
|
+
|
|
|
+test('number formate test', () => {
|
|
|
+ var number = 123456.789;
|
|
|
+ //let value1 = formatNumber('de-DE', { style: 'currency', currency: 'EUR' }, number);
|
|
|
+ // console.log(value1);
|
|
|
+ //expect(value1).toEqual("123.456,79 €");
|
|
|
+
|
|
|
+ let value2 = formatNumber(number, 'ja-JP', { style: 'currency', currency: 'JPY' });
|
|
|
+ expect(value2).toEqual("¥123,457");
|
|
|
+ let numberValue2 = unformatNumber(value2, 'ja-JP', { style: 'currency', currency: 'JPY' });
|
|
|
+ expect(numberValue2).toEqual(123457);
|
|
|
+
|
|
|
+ let value3 = formatNumber(number, 'en-IN', { maximumSignificantDigits: 3 });
|
|
|
+ expect(value3).toEqual("1,23,000");
|
|
|
+ let numberValue3 = unformatNumber(value3, 'en-IN', { maximumSignificantDigits: 3 });
|
|
|
+ expect(numberValue3).toEqual(123000);
|
|
|
+
|
|
|
+ number = 1234.56;
|
|
|
+ // 将格式化数字为美元货币格式
|
|
|
+ let value4 = formatNumber(number, 'en-US', { style: 'currency',
|
|
|
+ currency: 'USD' });
|
|
|
+ expect(value4).toEqual("$1,234.56");
|
|
|
+
|
|
|
+ let numberValue4 = unformatNumber(value4, 'en-US', { style: 'currency',
|
|
|
+ currency: 'USD' });
|
|
|
+ expect(numberValue4).toEqual(1234.56);
|
|
|
+
|
|
|
+ // 使用了en-US作为语言环境,并将最小小数位数和最大小数位数都设置为 2
|
|
|
+ let value5 = formatNumber(number, 'en-US', {
|
|
|
+ minimumFractionDigits: 2,
|
|
|
+ maximumFractionDigits: 2
|
|
|
+ });
|
|
|
+ expect(value5).toEqual("1,234.56");
|
|
|
+ let numberValue5 = unformatNumber(value5, 'en-US', { minimumFractionDigits: 2,
|
|
|
+ maximumFractionDigits: 2 });
|
|
|
+ expect(numberValue5).toEqual(1234.56);
|
|
|
+
|
|
|
+ // 使用了en-US作为语言环境,并将最小整数位数设置为 4
|
|
|
+ number = 12345.6789
|
|
|
+ let value6 = formatNumber(number, 'en-US', {
|
|
|
+ minimumIntegerDigits: 4,
|
|
|
+ maximumFractionDigits: 0
|
|
|
+ });
|
|
|
+ expect(value6).toEqual("12,346");
|
|
|
+ let numberValue6 = unformatNumber(value6, 'en-US', {
|
|
|
+ minimumIntegerDigits: 4,
|
|
|
+ maximumFractionDigits: 0 });
|
|
|
+ expect(numberValue6).toEqual(12346);
|
|
|
+
|
|
|
+ // 使用了en-US作为语言环境,并将样式设置为percent。我们还指定了最小小数位数为 2,最大小数位数为 2。
|
|
|
+ number = 0.75;
|
|
|
+ let value7 = formatNumber(number, 'en-US', {
|
|
|
+ style: 'percent',
|
|
|
+ minimumFractionDigits: 2,
|
|
|
+ maximumFractionDigits: 2,
|
|
|
+ });
|
|
|
+ expect(value7).toEqual("75.00%");
|
|
|
+ let numberValue7 = unformatNumber(value7, 'en-US', {
|
|
|
+ style: 'percent',
|
|
|
+ minimumFractionDigits: 2,
|
|
|
+ maximumFractionDigits: 2, });
|
|
|
+ expect(numberValue7).toEqual(0.75);
|
|
|
+});
|