From 95241c75c8471c09528e92ce5ad34223c785480c Mon Sep 17 00:00:00 2001 From: Chooooooo Date: Sun, 3 Nov 2024 16:12:59 +0900 Subject: [PATCH] Update isRunning variable names for clarity --- README.md | 14 +++++++------- src/job.ts | 14 +++++++------- tests/cron.test.ts | 18 +++++++++--------- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/README.md b/README.md index 664da831..63924d14 100644 --- a/README.md +++ b/README.md @@ -218,19 +218,19 @@ day of week 0-7 (0 or 7 is Sunday, or use names) #### Properties -- `isRunning`: [READ-ONLY] Indicates if a callback is currently executing. This is different from the `running` property which indicates if the cron schedule is active. +- `isCallbackRunning`: [READ-ONLY] Indicates if a callback is currently executing. ```javascript const job = new CronJob('* * * * * *', async () => { - console.log(job.isRunning); // true during callback execution - await someAsyncTask(); - console.log(job.isRunning); // still true until callback completes + console.log(job.isCallbackRunning); // true during callback execution + await someAsyncTask(); + console.log(job.isCallbackRunning); // still true until callback completes }); - console.log(job.isRunning); // false + console.log(job.isCallbackRunning); // false job.start(); - console.log(job.running); // true (schedule is active) - console.log(job.isRunning); // false (no callback executing) + console.log(job.running); // true (schedule is active) + console.log(job.isCallbackRunning); // false (no callback executing) ``` ### CronTime Class diff --git a/src/job.ts b/src/job.ts index 8623914d..59555ca0 100644 --- a/src/job.ts +++ b/src/job.ts @@ -23,12 +23,12 @@ export class CronJob { : undefined; waitForCompletion = false; - private _isRunning = false; + private _isCallbackRunning = false; private _timeout?: NodeJS.Timeout; private _callbacks: CronCallback>[] = []; - get isRunning() { - return this._isRunning; + get isCallbackRunning() { + return this._isCallbackRunning; } constructor( @@ -207,9 +207,9 @@ export class CronJob { } async fireOnTick() { - if (!this.waitForCompletion && this._isRunning) return; + if (!this.waitForCompletion && this._isCallbackRunning) return; - this._isRunning = true; + this._isCallbackRunning = true; try { for (const callback of this._callbacks) { @@ -225,7 +225,7 @@ export class CronJob { } catch (error) { console.error('[Cron] error in callback', error); } finally { - this._isRunning = false; + this._isCallbackRunning = false; } } @@ -322,7 +322,7 @@ export class CronJob { } private async _waitForJobCompletion() { - while (this._isRunning) { + while (this._isCallbackRunning) { await new Promise(resolve => setTimeout(resolve, 100)); } } diff --git a/tests/cron.test.ts b/tests/cron.test.ts index 17d8c041..c11e8f69 100644 --- a/tests/cron.test.ts +++ b/tests/cron.test.ts @@ -1159,7 +1159,7 @@ describe('cron', () => { const job = new CronJob( '*/2 * * * * *', async () => { - expect(job.isRunning).toBe(true); + expect(job.isCallbackRunning).toBe(true); await new Promise(resolve => { setTimeout(() => { callback(); @@ -1178,20 +1178,20 @@ describe('cron', () => { true // waitForCompletion: true ); - expect(job.isRunning).toBe(false); + expect(job.isCallbackRunning).toBe(false); // First execution await clock.tickAsync(2000); - expect(job.isRunning).toBe(true); + expect(job.isCallbackRunning).toBe(true); // Wait for job completion await clock.tickAsync(500); expect(isJobCompleted).toBe(false); - expect(job.isRunning).toBe(true); + expect(job.isCallbackRunning).toBe(true); await clock.tickAsync(1000); expect(isJobCompleted).toBe(true); - expect(job.isRunning).toBe(false); + expect(job.isCallbackRunning).toBe(false); job.stop(); }); @@ -1218,12 +1218,12 @@ describe('cron', () => { false // waitForCompletion: false ); - expect(job.isRunning).toBe(false); + expect(job.isCallbackRunning).toBe(false); // First execution clock.tick(1000); expect(isJobCompleted).toBe(false); - expect(job.isRunning).toBe(false); + expect(job.isCallbackRunning).toBe(false); job.stop(); }); @@ -1286,13 +1286,13 @@ describe('cron', () => { ); await clock.tickAsync(1000); - expect(job.isRunning).toBe(true); + expect(job.isCallbackRunning).toBe(true); job.stop(); await clock.tickAsync(500); expect(isJobCompleted).toBe(true); - expect(job.isRunning).toBe(false); + expect(job.isCallbackRunning).toBe(false); expect(job.running).toBe(false); }); });