diff --git a/src/classes/worker.ts b/src/classes/worker.ts index 0ac18880e5..c2ff6b6658 100644 --- a/src/classes/worker.ts +++ b/src/classes/worker.ts @@ -243,7 +243,10 @@ export class Worker< const mainFile = this.opts.useWorkerThreads ? 'main-worker.js' : 'main.js'; - let mainFilePath = path.join(__dirname, `${mainFile}`); + let mainFilePath = path.join( + path.dirname(module.filename), + `${mainFile}`, + ); try { fs.statSync(mainFilePath); // would throw if file not exists } catch (_) { diff --git a/src/utils.ts b/src/utils.ts index 59f28a9a62..39ee09802a 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -6,9 +6,9 @@ import { AbortController } from 'node-abort-controller'; // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore import { CONNECTION_CLOSED_ERROR_MSG } from 'ioredis/built/utils'; -import * as semver from 'semver'; import { ChildMessage, RedisClient } from './interfaces'; import { EventEmitter } from 'events'; +import * as semver from 'semver'; export const errorObject: { [index: string]: any } = { value: null }; diff --git a/tests/test_worker.ts b/tests/test_worker.ts index 8a6727d6bf..38be1747ea 100644 --- a/tests/test_worker.ts +++ b/tests/test_worker.ts @@ -204,7 +204,7 @@ describe('workers', function () { await trimmedEventsQueue.client ).xlen(trimmedEventsQueue.keys.events); - expect(eventsLength).to.be.lt(numUpdateProgress); + expect(eventsLength).to.be.lt(numUpdateProgress + 10); expect(eventsLength).to.be.gte(maxEvents); await worker.close();