@sankhyalabs/core
Advanced tools
Comparing version 1.0.14 to 1.0.15
@@ -11,5 +11,5 @@ /** | ||
/** | ||
* @stringToNumber: converts a string based number on a number. | ||
* @stringToNumber: converte um numero em formato de string em numero | ||
* | ||
* @param value string based number to convert | ||
* @param value numero em formato de string a ser convertido (Importante: formato PT-BR ou já em formato numérico: ######.##) | ||
* | ||
@@ -30,14 +30,26 @@ * @returns string based number | ||
* | ||
* @param value numero em formato de string a ser convertido | ||
* @param value numero em formato de string a ser convertido (Importante: formato PT-BR ou já em formato numérico<sem separadors de milhares>: ######.##) | ||
* @param precision (numero de decimais) | ||
* @param prettyPrecision (number os zeros in decimals) | ||
* @param prettyPrecision (numero de zeros nos decimais) | ||
* | ||
* @returns numero em formato de string formatado | ||
* @returns numero em formato de string formatado em PT-BR | ||
*/ | ||
static format: (value: string, precision: number, prettyPrecision?: number) => string; | ||
/** | ||
* @keepOnlyDecimalSeparator: retira os separadores de milhar de um número em formato de string | ||
* | ||
* @Exemplos | ||
* @"1001200", 4, 1 | "1001200.000" | ||
* @"1001200,005500",6 ,5 | "1001200.0055" | ||
* @"string" | NaN | ||
* @param value numero em formato de string a ser convertido | ||
* @param formatnumber (formatação de ENTRADA e SAÍDA do utilitário: pt-BR="###.###,##" en-US="###,###.##"; Default: "pt-BR") | ||
* | ||
* @returns numero em formato de string formatado apenas com separador decimal | ||
*/ | ||
static format: (value: string, precision: number, prettyPrecision?: number) => string; | ||
static keepOnlyDecimalSeparator: (value: string, formatnumber?: string) => string; | ||
/** | ||
* @changeFormat: troca o formato do numero string de "PT-BR" para "EN-US" e vice-versa | ||
* | ||
* @param value numero em formato de string a ser convertido | ||
* | ||
* @returns numero em formato de string formatado de "PT-BR" para "EN-US" e vice-versa | ||
*/ | ||
static changeFormat: (value: string) => string; | ||
} |
@@ -13,5 +13,5 @@ const NUMBERINPUTS_REGEX_SCIENTIFIC_PARTS = /^([+-])?(\d+).?(\d*)[eE]([-+]?\d+)$/; | ||
/** | ||
* @stringToNumber: converts a string based number on a number. | ||
* @stringToNumber: converte um numero em formato de string em numero | ||
* | ||
* @param value string based number to convert | ||
* @param value numero em formato de string a ser convertido (Importante: formato PT-BR ou já em formato numérico: ######.##) | ||
* | ||
@@ -63,12 +63,7 @@ * @returns string based number | ||
* | ||
* @param value numero em formato de string a ser convertido | ||
* @param value numero em formato de string a ser convertido (Importante: formato PT-BR ou já em formato numérico<sem separadors de milhares>: ######.##) | ||
* @param precision (numero de decimais) | ||
* @param prettyPrecision (number os zeros in decimals) | ||
* @param prettyPrecision (numero de zeros nos decimais) | ||
* | ||
* @returns numero em formato de string formatado | ||
* | ||
* @Exemplos | ||
* @"1001200", 4, 1 | "1001200.000" | ||
* @"1001200,005500",6 ,5 | "1001200.0055" | ||
* @"string" | NaN | ||
* @returns numero em formato de string formatado em PT-BR | ||
*/ | ||
@@ -86,3 +81,3 @@ NumberUtils.format = (value, precision, prettyPrecision = NaN) => { | ||
//Validation "precision" | ||
if (precision.toFixed(0) !== precision.toString() || precision < 0) { | ||
if (Math.abs(Math.round(precision * 1) / 1) !== precision) { | ||
throw new Error(`O argumento "precision" precisa ser um número inteiro positivo.`); | ||
@@ -99,7 +94,6 @@ } | ||
} | ||
if (prettyPrecisionInternal.toFixed(0) !== prettyPrecisionInternal.toString()) { | ||
if (Math.abs(Math.round(prettyPrecisionInternal * 1) / 1) !== prettyPrecisionInternal) { | ||
throw new Error(`O argumento "prettyPrecision" precisa ser um número inteiro positivo.`); | ||
} | ||
; | ||
// const numeroRound = | ||
let newValueStr; | ||
@@ -124,3 +118,36 @@ newValueStr = (Math.round(newValue * Math.pow(10, precision)) / Math.pow(10, precision)).toLocaleString('pt-br', { minimumFractionDigits: precision }); | ||
}; | ||
/** | ||
* @keepOnlyDecimalSeparator: retira os separadores de milhar de um número em formato de string | ||
* | ||
* @param value numero em formato de string a ser convertido | ||
* @param formatnumber (formatação de ENTRADA e SAÍDA do utilitário: pt-BR="###.###,##" en-US="###,###.##"; Default: "pt-BR") | ||
* | ||
* @returns numero em formato de string formatado apenas com separador decimal | ||
*/ | ||
NumberUtils.keepOnlyDecimalSeparator = (value, formatnumber = 'pt-BR') => { | ||
//Formatting formatnumber to be able to get lowercases | ||
formatnumber = formatnumber.toUpperCase(); | ||
//Formatting value following formatnumber parameter | ||
//keep only decimal character in order to correct format the string | ||
//This transformation is due the "stringtoNumber" method is a general method that tries to convert all formated strings | ||
if (formatnumber === 'EN-US') { | ||
value = value.replace(/\,/g, ''); | ||
} | ||
else { | ||
value = value.replace(/\./g, ''); | ||
} | ||
return value; | ||
}; | ||
/** | ||
* @changeFormat: troca o formato do numero string de "PT-BR" para "EN-US" e vice-versa | ||
* | ||
* @param value numero em formato de string a ser convertido | ||
* | ||
* @returns numero em formato de string formatado de "PT-BR" para "EN-US" e vice-versa | ||
*/ | ||
NumberUtils.changeFormat = (value) => { | ||
//Formatting output following formatnumber | ||
return value.replace(/\./g, '_').replace(/\,/g, '.').replace(/\_/g, ','); | ||
}; | ||
; | ||
//# sourceMappingURL=NumberUtils.js.map |
{ | ||
"name": "@sankhyalabs/core", | ||
"version": "1.0.14", | ||
"version": "1.0.15", | ||
"description": "Modulo core JavaScript da Sankhya.", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
@@ -18,5 +18,5 @@ | ||
/** | ||
* @stringToNumber: converts a string based number on a number. | ||
* @stringToNumber: converte um numero em formato de string em numero | ||
* | ||
* @param value string based number to convert | ||
* @param value numero em formato de string a ser convertido (Importante: formato PT-BR ou já em formato numérico: ######.##) | ||
* | ||
@@ -73,15 +73,11 @@ * @returns string based number | ||
/** | ||
* @format: converte um numero em formato de string em um numero em formato de string formatado de acordo com os parametros de "precision" e "prettyPrecision" | ||
* | ||
* @param value numero em formato de string a ser convertido | ||
* @param value numero em formato de string a ser convertido (Importante: formato PT-BR ou já em formato numérico<sem separadors de milhares>: ######.##) | ||
* @param precision (numero de decimais) | ||
* @param prettyPrecision (number os zeros in decimals) | ||
* @param prettyPrecision (numero de zeros nos decimais) | ||
* | ||
* @returns numero em formato de string formatado | ||
* | ||
* @Exemplos | ||
* @"1001200", 4, 1 | "1001200.000" | ||
* @"1001200,005500",6 ,5 | "1001200.0055" | ||
* @"string" | NaN | ||
* @returns numero em formato de string formatado em PT-BR | ||
*/ | ||
@@ -101,3 +97,3 @@ static format = (value: string, precision: number, prettyPrecision: number = NaN): string => { | ||
//Validation "precision" | ||
if (precision.toFixed(0) !== precision.toString() || precision < 0) { | ||
if (Math.abs(Math.round(precision * 1) / 1) !== precision) { | ||
throw new Error(`O argumento "precision" precisa ser um número inteiro positivo.`); | ||
@@ -116,7 +112,6 @@ }; | ||
if (prettyPrecisionInternal.toFixed(0) !== prettyPrecisionInternal.toString()) { | ||
if (Math.abs(Math.round(prettyPrecisionInternal * 1) / 1) !== prettyPrecisionInternal) { | ||
throw new Error(`O argumento "prettyPrecision" precisa ser um número inteiro positivo.`); | ||
}; | ||
// const numeroRound = | ||
let newValueStr: string; | ||
@@ -142,5 +137,46 @@ newValueStr = (Math.round(newValue * Math.pow(10, precision)) / Math.pow(10, precision)).toLocaleString('pt-br', { minimumFractionDigits: precision }); | ||
return newValueStr; | ||
} | ||
/** | ||
* @keepOnlyDecimalSeparator: retira os separadores de milhar de um número em formato de string | ||
* | ||
* @param value numero em formato de string a ser convertido | ||
* @param formatnumber (formatação de ENTRADA e SAÍDA do utilitário: pt-BR="###.###,##" en-US="###,###.##"; Default: "pt-BR") | ||
* | ||
* @returns numero em formato de string formatado apenas com separador decimal | ||
*/ | ||
static keepOnlyDecimalSeparator = (value: string, formatnumber: string = 'pt-BR'): string => { | ||
//Formatting formatnumber to be able to get lowercases | ||
formatnumber = formatnumber.toUpperCase(); | ||
//Formatting value following formatnumber parameter | ||
//keep only decimal character in order to correct format the string | ||
//This transformation is due the "stringtoNumber" method is a general method that tries to convert all formated strings | ||
if (formatnumber === 'EN-US') { | ||
value = value.replace(/\,/g, ''); | ||
} else { | ||
value = value.replace(/\./g, ''); | ||
} | ||
return value; | ||
}; | ||
/** | ||
* @changeFormat: troca o formato do numero string de "PT-BR" para "EN-US" e vice-versa | ||
* | ||
* @param value numero em formato de string a ser convertido | ||
* | ||
* @returns numero em formato de string formatado de "PT-BR" para "EN-US" e vice-versa | ||
*/ | ||
static changeFormat = (value: string): string => { | ||
//Formatting output following formatnumber | ||
return value.replace(/\./g, '_').replace(/\,/g, '.').replace(/\_/g, ','); | ||
}; | ||
}; |
@@ -9,340 +9,134 @@ import { NumberUtils } from '../../src/utils/NumberUtils'; | ||
//Positives | ||
it('stringToNumber - integer Number | ###', function () { | ||
const arrayDataTest = [ | ||
{ valueInput: '100', valueOutput: 100 }, | ||
{ valueInput: '100,12', valueOutput: 100.12 }, | ||
{ valueInput: '11500,12', valueOutput: 11500.12 }, | ||
{ valueInput: '11500', valueOutput: 11500 }, | ||
{ valueInput: '11.500,003', valueOutput: 11500.003 }, | ||
{ valueInput: '-100', valueOutput: -100 }, | ||
{ valueInput: '-100,12', valueOutput: -100.12 }, | ||
{ valueInput: '-11500,1', valueOutput: -11500.1 }, | ||
{ valueInput: '-11500', valueOutput: -11500 }, | ||
{ valueInput: '-11.500,003', valueOutput: -11500.003 }, | ||
{ valueInput: 'R$100', valueOutput: 100 }, | ||
{ valueInput: 'R$100,12', valueOutput: 100.12 }, | ||
{ valueInput: 'R$11500,12', valueOutput: 11500.12 }, | ||
{ valueInput: 'R$11500', valueOutput: 11500 }, | ||
{ valueInput: 'R$11.500,003', valueOutput: 11500.003 }, | ||
{ valueInput: '-R$100', valueOutput: -100 }, | ||
{ valueInput: '-R$100,12', valueOutput: -100.12 }, | ||
{ valueInput: '-R$11500,12', valueOutput: -11500.12 }, | ||
{ valueInput: '-R$11500', valueOutput: -11500 }, | ||
{ valueInput: '-R$11.500,003', valueOutput: -11500.003 }, | ||
{ valueInput: '', valueOutput: NaN }, | ||
{ valueInput: 'OrdinaryString', valueOutput: NaN }, | ||
{ valueInput: '100.167.80', valueOutput: NaN }, | ||
{ valueInput: 'uahsuhas,auhsuhasu', valueOutput: NaN }, | ||
{ valueInput: '100,100,100', valueOutput: NaN }, | ||
{ valueInput: 'OrdinaryString,.OrdinaryString', valueOutput: NaN }, | ||
{ valueInput: 'OrdinaryString.,OrdinaryString', valueOutput: NaN }, | ||
{ valueInput: '.121212', valueOutput: 0.121212 }, | ||
{ valueInput: ',121212', valueOutput: 0.121212 }, | ||
{ valueInput: '1,232,333.345', valueOutput: NaN }, | ||
{ valueInput: '1232333,345', valueOutput: 1232333.345 }, | ||
] | ||
let result = NumberUtils.stringToNumber('100'); | ||
expect(result).toBe(100); | ||
it('stringToNumber', function () { | ||
let result: number; | ||
arrayDataTest.forEach(e => { | ||
result = NumberUtils.stringToNumber(e.valueInput); | ||
expect(result).toBe(e.valueOutput); | ||
}) | ||
}); | ||
it('stringToNumber - decimal Number with comma | ###,##', function () { | ||
let result = NumberUtils.stringToNumber('100,12'); | ||
expect(result).toBe(100.12); | ||
}); | ||
it('stringToNumber - decimal Number with comma | #####,##', function () { | ||
let result = NumberUtils.stringToNumber('11500,12'); | ||
expect(result).toBe(11500.12); | ||
}); | ||
it('stringToNumber - integer valeu | #####', function () { | ||
let result = NumberUtils.stringToNumber('11500'); | ||
expect(result).toBe(11500); | ||
}); | ||
it('stringToNumber - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('11.500,003'); | ||
expect(result).toBe(11500.003); | ||
}); | ||
//Negatives | ||
it('stringToNumber - integer Number | -###', function () { | ||
let result = NumberUtils.stringToNumber('-100'); | ||
expect(result).toBe(-100); | ||
}); | ||
it('stringToNumber - decimal Number with comma | -###,##', function () { | ||
let result = NumberUtils.stringToNumber('-100,12'); | ||
expect(result).toBe(-100.12); | ||
}); | ||
it('stringToNumber - decimal Number with comma | -#####,##', function () { | ||
let result = NumberUtils.stringToNumber('-11500,12'); | ||
expect(result).toBe(-11500.12); | ||
}); | ||
it('stringToNumber - integer valeu | -#####', function () { | ||
let result = NumberUtils.stringToNumber('-11500'); | ||
expect(result).toBe(-11500); | ||
}); | ||
it('stringToNumber - valor | -##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('-11.500,003'); | ||
expect(result).toBe(-11500.003); | ||
}); | ||
//Currency | ||
it('stringToNumber - integer Number | R$###', function () { | ||
let result = NumberUtils.stringToNumber('R$100'); | ||
expect(result).toBe(100); | ||
}); | ||
it('stringToNumber - decimal Number with comma | R$###,##', function () { | ||
let result = NumberUtils.stringToNumber('R$100,12'); | ||
expect(result).toBe(100.12); | ||
}); | ||
it('stringToNumber - decimal Number with comma | R$#####,##', function () { | ||
let result = NumberUtils.stringToNumber('R$11500,12'); | ||
expect(result).toBe(11500.12); | ||
}); | ||
it('stringToNumber - integer valeu | R$#####', function () { | ||
let result = NumberUtils.stringToNumber('R$11500'); | ||
expect(result).toBe(11500); | ||
}); | ||
it('stringToNumber - valor | R$##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('R$11.500,003'); | ||
expect(result).toBe(11500.003); | ||
}); | ||
//Currency - Negative | ||
it('stringToNumber - integer Number | -R$###', function () { | ||
let result = NumberUtils.stringToNumber('-R$100'); | ||
expect(result).toBe(-100); | ||
}); | ||
it('stringToNumber - decimal Number with comma | -R$###,##', function () { | ||
let result = NumberUtils.stringToNumber('-R$100,12'); | ||
expect(result).toBe(-100.12); | ||
}); | ||
it('stringToNumber - decimal Number with comma | -R$#####,##', function () { | ||
let result = NumberUtils.stringToNumber('-R$11500,12'); | ||
expect(result).toBe(-11500.12); | ||
}); | ||
it('stringToNumber - integer valeu | -R$#####', function () { | ||
let result = NumberUtils.stringToNumber('-R$11500'); | ||
expect(result).toBe(-11500); | ||
}); | ||
it('stringToNumber - valor | -R$##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('-R$11.500,003'); | ||
expect(result).toBe(-11500.003); | ||
}); | ||
//ERROR - NA | ||
it('stringToNumber - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber(''); | ||
expect(result).toBe(NaN); | ||
}); | ||
it('stringToNumber - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('OrdinaryString'); | ||
expect(result).toBe(NaN); | ||
}); | ||
it('stringToNumber - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('100.167.80'); | ||
expect(result).toBe(NaN); | ||
}); | ||
it('stringToNumber - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('uahsuhas,auhsuhasu'); | ||
expect(result).toBe(NaN); | ||
}); | ||
it('stringToNumber - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('100,100,100'); | ||
expect(result).toBe(NaN); | ||
}); | ||
it('stringToNumber - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('OrdinaryString,.OrdinaryString'); | ||
expect(result).toBe(NaN); | ||
}); | ||
it('stringToNumber - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('OrdinaryString.,OrdinaryString'); | ||
expect(result).toBe(NaN); | ||
}); | ||
it('stringToNumber - valor | ##,###.###', function () { | ||
let result = NumberUtils.stringToNumber('.121212'); | ||
expect(result).toBe(0.121212); | ||
}); | ||
it('stringToNumber - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber(',121212'); | ||
expect(result).toBe(0.121212); | ||
}); | ||
it('stringToNumber - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber(',121212'); | ||
expect(result).toBe(0.121212); | ||
}); | ||
it('stringToNumber - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('100,0005'); | ||
expect(result).toBe(100.0005); | ||
}); | ||
it('format - valor | ##.###,###', function () { | ||
let result = NumberUtils.stringToNumber('R$ 1.001.200,00'); | ||
expect(result).toBe(1001200); | ||
}); | ||
// FORMAT | ||
// ---------------------------------------------------------------------------------------- | ||
it('format - valor | ##.###,###', function () { | ||
let result = NumberUtils.format('100,0005', 1, 1) | ||
expect(result).toBe("100,0"); | ||
}); | ||
const casesStrValue = [ | ||
it('format - valor | ##.###,###', function () { | ||
{ precision: 4, prettyprecision: 2, strvalue: '1.200.999,3333', strvalueOutPut: '1.200.999,3333' }, | ||
{ precision: 2, prettyprecision: 1, strvalue: '1.000', strvalueOutPut: '1,0' }, | ||
{ precision: 2, prettyprecision: 1, strvalue: '1200999,99', strvalueOutPut: '1.200.999,99' }, | ||
{ precision: 4, prettyprecision: 2, strvalue: '1,232,333.345', strvalueOutPut: 'NaN' }, | ||
{ precision: 2, prettyprecision: 1, strvalue: '1,23', strvalueOutPut: '1,23' }, | ||
let result = NumberUtils.format('1000', 0, 0) | ||
expect(result).toBe("1.000"); | ||
}); | ||
{ precision: 4, prettyprecision: 2, strvalue: '1.200.999', strvalueOutPut: 'NaN' }, | ||
{ precision: 2, prettyprecision: 1, strvalue: '1.000', strvalueOutPut: '1,0' }, | ||
{ precision: 2, prettyprecision: 1, strvalue: '1200999,99', strvalueOutPut: '1.200.999,99' }, | ||
{ precision: 4, prettyprecision: 2, strvalue: '1,232,333.345', strvalueOutPut: 'NaN' }, | ||
{ precision: 2, prettyprecision: 1, strvalue: '1,23', strvalueOutPut: '1,23' }, | ||
it('format - valor | ##.###,###', function () { | ||
] | ||
let result = NumberUtils.format('R$ 1.001.200,00', 0, 0) | ||
expect(result).toBe("1.001.200"); | ||
}); | ||
it('format', function () { | ||
let result: string = ''; | ||
casesStrValue.forEach(e => { | ||
result = NumberUtils.format(e.strvalue, e.precision, e.prettyprecision); | ||
expect(result).toBe(e.strvalueOutPut); | ||
}) | ||
it('format - valor | ##.###,###', function () { | ||
let result = NumberUtils.format('1001200,0055', 4, 5) | ||
expect(result).toBe("1.001.200,0055"); | ||
}); | ||
it('format - valor | ##.###,###', function () { | ||
let result = NumberUtils.format('1001200,005500', 6, 5) | ||
expect(result).toBe("1.001.200,00550"); | ||
it('Should return error an error in cause of a negative precision', function () { | ||
expect(() => { NumberUtils.format('111', -1, 1); }).toThrowError('O argumento "precision" precisa ser um número inteiro positivo.'); | ||
}); | ||
it('format - valor | ##.###,###', function () { | ||
let result = NumberUtils.format('1001200', 4, 0) | ||
expect(result).toBe("1.001.200"); | ||
it('Should return error an error in cause of a negative prettyPrecision', function () { | ||
expect(() => { NumberUtils.format('111', 1, -1); }).toThrowError('O argumento "prettyPrecision" precisa ser um número inteiro positivo.'); | ||
}); | ||
it('format - valor | ##.###,###', function () { | ||
let result = NumberUtils.format('1001200', 4, 1) | ||
expect(result).toBe('1.001.200,0'); | ||
}); | ||
it('format - valor | ##.###,###', function () { | ||
// keepOnlyDecimalSeparator | ||
// ---------------------------------------------------------------------------------------- | ||
const testCasesTo_changeFormat = [ | ||
let result = NumberUtils.format('10.012.00', 4, 1) | ||
expect(result).toBe("NaN"); | ||
}); | ||
{ inputValue: '1.200.999', outPutValue: '1,200,999' }, | ||
{ inputValue: '1.000,99', outPutValue: '1,000.99' }, | ||
{ inputValue: '1200999,99', outPutValue: '1200999.99' }, | ||
{ inputValue: 'R$ 1,232,333.345', outPutValue: 'R$ 1.232.333,345' }, | ||
{ inputValue: 'R$ 1.232.333,345', outPutValue: 'R$ 1,232,333.345' }, | ||
it('format - valor | ##.###,###', function () { | ||
] | ||
let result = NumberUtils.format('10,012,00', 4, 1) | ||
expect(result).toBe("NaN"); | ||
}); | ||
it('format without formatnumber parameter', function () { | ||
let result: string = ''; | ||
testCasesTo_changeFormat.forEach(e => { | ||
result = NumberUtils.changeFormat(e.inputValue); | ||
expect(result).toBe(e.outPutValue); | ||
}) | ||
it('format - valor | ##.###,###', function () { | ||
let result = NumberUtils.format('1001200', 4) | ||
expect(result).toBe("1.001.200,0000"); | ||
}); | ||
// keepOnlyDecimalSeparator | ||
// ---------------------------------------------------------------------------------------- | ||
const testCasesTo_keepOnlyDecimalSeparator = [ | ||
it('format - valor | ##.###,###', function () { | ||
{ formatnumber: 'pt-BR', inputValue: '1.200.999', outPutValue: '1200999' }, | ||
{ formatnumber: 'pt-BR', inputValue: '1000,99', outPutValue: '1000,99' }, | ||
{ formatnumber: 'pt-BR', inputValue: '1200999,99', outPutValue: '1200999,99' }, | ||
{ formatnumber: 'pt-BR', inputValue: 'R$ 1.232.333,345', outPutValue: 'R$ 1232333,345' }, | ||
let result = NumberUtils.format('OrdinaryString', 4, 1) | ||
expect(result).toBe("NaN"); | ||
}); | ||
{ formatnumber: 'en-US', inputValue: '1,200,999', outPutValue: '1200999' }, | ||
{ formatnumber: 'en-US', inputValue: '1,000.99', outPutValue: '1000.99' }, | ||
{ formatnumber: 'en-US', inputValue: '1200999.99', outPutValue: '1200999.99' }, | ||
{ formatnumber: 'en-US', inputValue: 'EUR 1,232,333.345', outPutValue: 'EUR 1232333.345' }, | ||
it('format - valor | NaN', function () { | ||
] | ||
let result = NumberUtils.format('NaN', 4, 1) | ||
expect(result).toBe("NaN"); | ||
}); | ||
it('format without formatnumber parameter', function () { | ||
let result: string = ''; | ||
testCasesTo_keepOnlyDecimalSeparator.forEach(e => { | ||
result = NumberUtils.keepOnlyDecimalSeparator(e.inputValue, e.formatnumber); | ||
expect(result).toBe(e.outPutValue); | ||
}) | ||
it('format', function () { | ||
let result = NumberUtils.format('100.0000', 2, 1) | ||
expect(result).toBe("100,0"); | ||
}); | ||
it('format', function () { | ||
let result = NumberUtils.format('100.1000', 2, 1) | ||
expect(result).toBe("100,1"); | ||
}); | ||
it('format', function () { | ||
let result = NumberUtils.format('100.1200', 2, 1) | ||
expect(result).toBe("100,12"); | ||
}); | ||
it('format', function () { | ||
let result = NumberUtils.format('1000.01', 2, 1) | ||
expect(result).toBe("1.000,01"); | ||
}); | ||
it('format', function () { | ||
let result = NumberUtils.format('1000.11', 2, 1) | ||
expect(result).toBe("1.000,11"); | ||
}); | ||
it('format', function () { | ||
let result = NumberUtils.format('1000.10', 2, 1) | ||
expect(result).toBe("1.000,1"); | ||
}); | ||
it('format', function () { | ||
let result = NumberUtils.format('100.0050', 2, 0) | ||
expect(result).toBe("100,01"); | ||
}); | ||
it('format', function () { | ||
let result = NumberUtils.format('100.0040', 2, 0) | ||
expect(result).toBe("100"); | ||
}); | ||
it('format', function () { | ||
let result = NumberUtils.format('1.000,59000', 5, 2) | ||
expect(result).toBe("1.000,59"); | ||
}); | ||
it('format', function () { | ||
let result = NumberUtils.format('10', 1, 2) | ||
expect(result).toBe("10,0"); | ||
}); | ||
}); |
Sorry, the diff of this file is not supported yet
94934
1865