test: improve median computation test
authorJérôme Benoit <jerome.benoit@sap.com>
Mon, 8 May 2023 23:19:45 +0000 (01:19 +0200)
committerJérôme Benoit <jerome.benoit@sap.com>
Mon, 8 May 2023 23:19:45 +0000 (01:19 +0200)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
src/utils.ts
tests/utils.test.js

index da1459f96be3877b3faf22913f548b920b4979e3..176d2c4f875fb2b3fc695ad419a8398d12467bb5 100644 (file)
@@ -29,9 +29,6 @@ export const median = (dataSet: number[]): number => {
     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]) /
index 21a6a7c4aac6d07d8e1ec215ff8df9703a30f1f2..f3278e4780b064ee25b6fcf7d900559b96fb23c7 100644 (file)
@@ -4,10 +4,9 @@ const { isPlainObject, median } = require('../lib/utils')
 describe('Utils test suite', () => {
   it('Verify median computation', () => {
     expect(median([])).toBe(0)
-    const array0 = [0.08]
-    expect(median(array0)).toBe(0.08)
-    const array1 = [0.25, 4.75, 3.05, 6.04, 1.01, 2.02, 5.03]
-    expect(median(array1)).toBe(3.05)
+    expect(median([0.08])).toBe(0.08)
+    expect(median([0.25, 4.75, 3.05, 6.04, 1.01, 2.02, 5.03])).toBe(3.05)
+    expect(median([0.25, 4.75, 3.05, 6.04, 1.01, 2.02])).toBe(2.535)
   })
 
   it('Verify isPlainObject() behavior', () => {