From be8dd830d8742ffdc01c48338a0988b3f9bfc709 Mon Sep 17 00:00:00 2001 From: Martin Raifer Date: Sun, 16 Feb 2025 11:08:08 +0100 Subject: [PATCH] properly convert callback to a promise (#10773) --- test/spec_helpers.mts | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/test/spec_helpers.mts b/test/spec_helpers.mts index a934ee5e4..f56e14037 100644 --- a/test/spec_helpers.mts +++ b/test/spec_helpers.mts @@ -40,15 +40,21 @@ Reflect.set( global, 'it', Object.assign( - (msg: string, fn: (done?: () => void) => void | Promise) => { + (msg: string, fn: (done?: (err?: any) => void) => void | Promise) => { _it(msg, () => { if (fn.length) { // there is a done callback -> return a promise instead - return new Promise((done) => fn(done)); + return new Promise((resolve, reject) => fn(err => { + if (err) { + reject(err); + } else { + resolve(); + } + })); + } else { + // no done callback -> normal behaviour + return fn(); } - - // no done callback -> normal behaviour - return fn(); }); }, { todo: _it.todo, skip: _it.skip, only: _it.only, each: _it.each },