+ it('Verify sleep() behavior', async () => {
+ const start = performance.now()
+ await sleep(1000)
+ const stop = performance.now()
+ expect(stop - start).toBeGreaterThanOrEqual(1000)
+ })
+
+ it('Verify exponentialDelay() behavior', () => {
+ expect(typeof exponentialDelay(randomInt(1000)) === 'number').toBe(true)
+ expect(exponentialDelay(randomInt(1000))).toBeGreaterThanOrEqual(
+ Number.MIN_VALUE
+ )
+ expect(exponentialDelay(randomInt(1000))).toBeLessThanOrEqual(
+ Number.MAX_VALUE
+ )
+ })
+
+ it('Verify average() computation', () => {
+ expect(average([])).toBe(0)
+ expect(average([0.08])).toBe(0.08)
+ expect(average([0.25, 4.75, 3.05, 6.04, 1.01, 2.02, 5.03])).toBe(
+ 3.1642857142857146
+ )
+ expect(average([0.25, 4.75, 3.05, 6.04, 1.01, 2.02])).toBe(
+ 2.8533333333333335
+ )
+ })
+