lib: added SuiteContext class

added SuiteContext class to replace object literal

Fixes: https://github.com/nodejs/node/issues/45641
Refs: https://github.com/nodejs/node/issues/45641#issuecomment-1329130581
PR-URL: https://github.com/nodejs/node/pull/45687
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
This commit is contained in:
Debadree Chatterjee 2022-12-02 11:59:48 +05:30 committed by GitHub
parent cc2732d764
commit 8541b3a4c0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -146,6 +146,22 @@ class TestContext {
}
}
class SuiteContext {
#suite;
constructor(suite) {
this.#suite = suite;
}
get signal() {
return this.#suite.signal;
}
get name() {
return this.#suite.name;
}
}
class Test extends AsyncResource {
#abortController;
#outerSignal;
@ -737,7 +753,8 @@ class Suite extends Test {
}
getRunArgs() {
return { ctx: { signal: this.signal, name: this.name }, args: [] };
const ctx = new SuiteContext(this);
return { ctx, args: [ctx] };
}
async run() {