Skip to content

Commit a6c0356

Browse files
committed
fix: add typings for events
1 parent 28df211 commit a6c0356

File tree

3 files changed

+22
-2
lines changed

3 files changed

+22
-2
lines changed

src/JobProcessor.ts

+6
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,11 @@ export class JobProcessor {
2929
version,
3030
queueName: this.agenda.name,
3131
queueSize: await this.agenda.db.getQueueSize(),
32+
config: {
33+
totalLockLimit: this.totalLockLimit,
34+
maxConcurrency: this.maxConcurrency,
35+
processEvery: this.processEvery
36+
},
3237
jobStatus: Object.keys(this.jobStatus).map(job => ({
3338
...this.jobStatus[job],
3439
config: this.agenda.definitions[job]
@@ -139,6 +144,7 @@ export class JobProcessor {
139144
'job [%s] lock status: shouldLock = %s',
140145
name,
141146
shouldLock,
147+
status?.locked,
142148
this.jobQueue.length,
143149
this.lockedJobs.length,
144150
this.totalLockLimit

src/index.ts

+14
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,20 @@ export class Agenda extends EventEmitter {
4040
db: JobDbRepository;
4141
// eslint-disable-next-line default-param-last
4242
// private jobQueue: JobProcessingQueue;
43+
// internally used
44+
on(event: 'processJob', listener: (job: Job) => void): this;
45+
46+
on(event: 'fail', listener: (err: Error, job: Job) => void): this;
47+
on(event: 'success', listener: (job: Job) => void): this;
48+
on(event: 'start', listener: (job: Job) => void): this;
49+
on(event: 'complete', listener: (job: Job) => void): this;
50+
on(event: string, listener: (job: Job) => void): this;
51+
on(event: string, listener: (err: Error, job: Job) => void): this;
52+
on(event: 'ready', listener: () => void): this;
53+
on(event: 'error', listener: (err: Error) => void): this;
54+
on(event, listener) {
55+
return super.on(event, listener);
56+
}
4357

4458
readonly definitions: {
4559
[name: string]: IJobDefinition;

test/job.test.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1014,7 +1014,7 @@ describe('Job', () => {
10141014

10151015
const checkResultsPromise = new Promise(resolve =>
10161016
agenda.on('start:fifo', job => {
1017-
results.push(new Date(job.attrs.nextRunAt).getTime());
1017+
results.push(new Date(job.attrs.nextRunAt!).getTime());
10181018
if (results.length !== 3) {
10191019
return;
10201020
}
@@ -1045,7 +1045,7 @@ describe('Job', () => {
10451045
const checkResultsPromise = new Promise(resolve =>
10461046
agenda.on('start:fifo-priority', job => {
10471047
priorities.push(job.attrs.priority);
1048-
times.push(new Date(job.attrs.lastRunAt).getTime());
1048+
times.push(new Date(job.attrs.lastRunAt!).getTime());
10491049
if (priorities.length !== 3 || times.length !== 3) {
10501050
return;
10511051
}

0 commit comments

Comments
 (0)