From: Jérôme Benoit Date: Mon, 8 May 2023 23:21:15 +0000 (+0200) Subject: test: improve statistic helpers tests X-Git-Tag: v1.2.13~4 X-Git-Url: https://git.piment-noir.org/?a=commitdiff_plain;h=806fe296b3050d3b70adf95b8ac837568efd2d13;p=e-mobility-charging-stations-simulator.git test: improve statistic helpers tests Signed-off-by: Jérôme Benoit --- diff --git a/src/utils/Utils.ts b/src/utils/Utils.ts index f1d098cc..be372de6 100644 --- a/src/utils/Utils.ts +++ b/src/utils/Utils.ts @@ -344,9 +344,6 @@ export class Utils { return dataSet[0]; } const sortedDataSet = dataSet.slice().sort((a, b) => a - b); - if (sortedDataSet.length % 2 === 0) { - return sortedDataSet[sortedDataSet.length / 2]; - } return ( (sortedDataSet[(sortedDataSet.length - 1) >> 1] + sortedDataSet[sortedDataSet.length >> 1]) / 2 diff --git a/test/utils/UtilsTest.ts b/test/utils/UtilsTest.ts index 885f7085..f5e1259d 100644 --- a/test/utils/UtilsTest.ts +++ b/test/utils/UtilsTest.ts @@ -332,28 +332,25 @@ describe('Utils test suite', () => { it('Verify median()', () => { expect(Utils.median([])).toBe(0); - const array0 = [0.08]; - expect(Utils.median(array0)).toBe(0.08); - const array1 = [0.25, 4.75, 3.05, 6.04, 1.01, 2.02, 5.03]; - expect(Utils.median(array1)).toBe(3.05); + expect(Utils.median([0.08])).toBe(0.08); + expect(Utils.median([0.25, 4.75, 3.05, 6.04, 1.01, 2.02, 5.03])).toBe(3.05); + expect(Utils.median([0.25, 4.75, 3.05, 6.04, 1.01, 2.02])).toBe(2.535); }); it('Verify percentile()', () => { expect(Utils.percentile([], 25)).toBe(0); - const array0 = [0.08]; - expect(Utils.percentile(array0, 50)).toBe(0.08); - const array1 = [0.25, 4.75, 3.05, 6.04, 1.01, 2.02, 5.03]; - expect(Utils.percentile(array1, 0)).toBe(0.25); - expect(Utils.percentile(array1, 50)).toBe(3.05); - expect(Utils.percentile(array1, 80)).toBe(4.974); - expect(Utils.percentile(array1, 85)).toBe(5.131); - expect(Utils.percentile(array1, 90)).toBe(5.434); - expect(Utils.percentile(array1, 95)).toBe(5.736999999999999); - expect(Utils.percentile(array1, 100)).toBe(6.04); + expect(Utils.percentile([0.08], 50)).toBe(0.08); + const array0 = [0.25, 4.75, 3.05, 6.04, 1.01, 2.02, 5.03]; + expect(Utils.percentile(array0, 0)).toBe(0.25); + expect(Utils.percentile(array0, 50)).toBe(3.05); + expect(Utils.percentile(array0, 80)).toBe(4.974); + expect(Utils.percentile(array0, 85)).toBe(5.131); + expect(Utils.percentile(array0, 90)).toBe(5.434); + expect(Utils.percentile(array0, 95)).toBe(5.736999999999999); + expect(Utils.percentile(array0, 100)).toBe(6.04); }); it('Verify stdDeviation()', () => { - const array1 = [0.25, 4.75, 3.05, 6.04, 1.01, 2.02, 5.03]; - expect(Utils.stdDeviation(array1)).toBe(2.0256064851429216); + expect(Utils.stdDeviation([0.25, 4.75, 3.05, 6.04, 1.01, 2.02, 5.03])).toBe(2.0256064851429216); }); });