Decimals: Big Improvements to auto decimals and fixes to auto decimals bug found in 7.4-beta1 (#30519)

* Decimals: Nukes scaledDecimals from the earth it was an abomination

* Moved move tests

* Fixed test

* Updated tests

* Updated test
This commit is contained in:
Torkel Ödegaard
2021-01-22 16:37:56 +01:00
committed by GitHub
parent be8ba8ef46
commit 6bdc9fac45
9 changed files with 112 additions and 161 deletions
@@ -144,33 +144,6 @@ describe('Format value', () => {
expect(result.text).toEqual('10.0');
});
it('should set auto decimals, 1 significant', () => {
const value = 3.23;
const instance = getDisplayProcessorFromConfig({ decimals: null });
expect(instance(value).text).toEqual('3.23');
});
it('should set auto decimals, 2 significant', () => {
const value = 0.0245;
const instance = getDisplayProcessorFromConfig({ decimals: null });
expect(instance(value).text).toEqual('0.0245');
});
it('should set auto decimals correctly for value 0.333333333333', () => {
const value = 1 / 3;
const instance = getDisplayProcessorFromConfig({ decimals: null });
expect(instance(value).text).toEqual('0.333');
});
it('should use override decimals', () => {
const value = 100030303;
const instance = getDisplayProcessorFromConfig({ decimals: 2, unit: 'bytes' });
const disp = instance(value);
expect(disp.text).toEqual('95.40');
expect(disp.suffix).toEqual(' MiB');
});
it('should return mapped value if there are matching value mappings', () => {
const valueMappings: ValueMapping[] = [
{ id: 0, text: '1-20', type: MappingType.RangeToText, from: '1', to: '20' },
@@ -211,7 +184,7 @@ describe('Format value', () => {
const value = 1000;
const instance = getDisplayProcessorFromConfig({ decimals: null, unit: 'short' });
const disp = instance(value);
expect(disp.text).toEqual('1.0');
expect(disp.text).toEqual('1');
expect(disp.suffix).toEqual(' K');
});
@@ -219,7 +192,7 @@ describe('Format value', () => {
const value = 1200;
const instance = getDisplayProcessorFromConfig({ decimals: null, unit: 'short' });
const disp = instance(value);
expect(disp.text).toEqual('1.2');
expect(disp.text).toEqual('1.20');
expect(disp.suffix).toEqual(' K');
});
@@ -235,7 +208,7 @@ describe('Format value', () => {
const value = 1000000;
const instance = getDisplayProcessorFromConfig({ decimals: null, unit: 'short' });
const disp = instance(value);
expect(disp.text).toEqual('1.0');
expect(disp.text).toEqual('1');
expect(disp.suffix).toEqual(' Mil');
});
@@ -243,9 +216,17 @@ describe('Format value', () => {
const value = 1500000;
const instance = getDisplayProcessorFromConfig({ decimals: null, unit: 'short' });
const disp = instance(value);
expect(disp.text).toEqual('1.5');
expect(disp.text).toEqual('1.50');
expect(disp.suffix).toEqual(' Mil');
});
it('with value 128000000 and unit bytes', () => {
const value = 1280000125;
const instance = getDisplayProcessorFromConfig({ decimals: null, unit: 'bytes' });
const disp = instance(value);
expect(disp.text).toEqual('1.19');
expect(disp.suffix).toEqual(' GiB');
});
});
describe('Date display options', () => {