From f4a66d267ce91511b7c78b8cf04924d66e22dabe Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 18 Nov 2025 15:04:57 +0100 Subject: [PATCH] test_runner: simplify code and make it more consistent --- lib/internal/test_runner/test.js | 31 ++++++++++--------------------- 1 file changed, 10 insertions(+), 21 deletions(-) diff --git a/lib/internal/test_runner/test.js b/lib/internal/test_runner/test.js index fcde7e399c9e0a..0f2265bb74366a 100644 --- a/lib/internal/test_runner/test.js +++ b/lib/internal/test_runner/test.js @@ -13,7 +13,6 @@ const { MathMax, Number, NumberPrototypeToFixed, - ObjectDefineProperty, ObjectSeal, Promise, PromisePrototypeThen, @@ -55,6 +54,7 @@ const { const { kEmptyObject, once: runOnce, + setOwnProperty, } = require('internal/util'); const { isPromise } = require('internal/util/types'); const { @@ -133,20 +133,14 @@ function stopTest(timeout, signal) { if (timeout === kDefaultTimeout) { disposeFunction = abortListener[SymbolDispose]; } else { - timer = setTimeout(() => deferred.resolve(), timeout); + timer = setTimeout(deferred.resolve, timeout); timer.unref(); - - ObjectDefineProperty(deferred, 'promise', { - __proto__: null, - configurable: true, - writable: true, - value: PromisePrototypeThen(deferred.promise, () => { - throw new ERR_TEST_FAILURE( - `test timed out after ${timeout}ms`, - kTestTimeoutFailure, - ); - }), - }); + setOwnProperty(deferred, 'promise', PromisePrototypeThen(deferred.promise, () => { + throw new ERR_TEST_FAILURE( + `test timed out after ${timeout}ms`, + kTestTimeoutFailure, + ); + })); disposeFunction = () => { abortListener[SymbolDispose](); @@ -154,12 +148,7 @@ function stopTest(timeout, signal) { }; } - ObjectDefineProperty(deferred.promise, SymbolDispose, { - __proto__: null, - configurable: true, - writable: true, - value: disposeFunction, - }); + setOwnProperty(deferred.promise, SymbolDispose, disposeFunction); return deferred.promise; } @@ -994,7 +983,7 @@ class Test extends AsyncResource { if (this.root.harness.buildPromise || !this.parent.hasConcurrency()) { const deferred = PromiseWithResolvers(); - deferred.test = this; + setOwnProperty(deferred, 'test', this); this.parent.addPendingSubtest(deferred); return deferred.promise; }