From 7394b6ef840e0f7e4adaa719ebcda09e539a15e2 Mon Sep 17 00:00:00 2001 From: Jerry Kurian Date: Fri, 16 Aug 2019 10:06:23 -0400 Subject: [PATCH] Skip full period in rate --- src/functions/rate.ts | 4 ++-- tests/rate.spec.ts | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/functions/rate.ts b/src/functions/rate.ts index bed7edd..e322744 100644 --- a/src/functions/rate.ts +++ b/src/functions/rate.ts @@ -9,13 +9,13 @@ import { TransformOptions } from "./baseDefinitions"; */ export function rate( targetRate: number = 50, - period: number = 2, + period: number = 1, options: TransformOptions = { readableObjectMode: true, writableObjectMode: true, }, ): Transform { - const deltaMS = ((1 / targetRate) * 1000) / period; // Skip half a period + const deltaMS = ((1 / targetRate) * 1000) / period; // Skip a full period let total = 0; const start = performance.now(); return new Transform({ diff --git a/tests/rate.spec.ts b/tests/rate.spec.ts index 024724c..acd3647 100644 --- a/tests/rate.spec.ts +++ b/tests/rate.spec.ts @@ -19,7 +19,7 @@ test.cb("rate() sends data at desired rate", t => { let k = 0; sourceFast - .pipe(rate(fastRate, 1)) + .pipe(rate(fastRate)) .on("data", (element: string[]) => { const currentRate = (i / (performance.now() - start)) * 1000; expect(element).to.deep.equal(expectedElements[i]); @@ -30,7 +30,7 @@ test.cb("rate() sends data at desired rate", t => { .on("error", t.end); sourceMed - .pipe(rate(medRate, 1)) + .pipe(rate(medRate)) .on("data", (element: string[]) => { const currentRate = (j / (performance.now() - start)) * 1000; expect(element).to.deep.equal(expectedElements[j]); @@ -41,7 +41,7 @@ test.cb("rate() sends data at desired rate", t => { .on("error", t.end); sourceSlow - .pipe(rate(slowRate, 1)) + .pipe(rate(slowRate)) .on("data", (element: string[]) => { const currentRate = (k / (performance.now() - start)) * 1000; expect(element).to.deep.equal(expectedElements[k]);