From 4b4336c34e1b343c6f379d3dfed83cca20b31d7b Mon Sep 17 00:00:00 2001 From: Stephen Belanger Date: Mon, 3 Apr 2023 09:44:50 -0700 Subject: [PATCH] test: verify tracePromise does not do runStores PR-URL: https://github.com/nodejs/node/pull/47349 Reviewed-By: Yagiz Nizipli Reviewed-By: James M Snell Reviewed-By: Rich Trott --- ...-channel-tracing-channel-promise-run-stores.js | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/test/parallel/test-diagnostics-channel-tracing-channel-promise-run-stores.js b/test/parallel/test-diagnostics-channel-tracing-channel-promise-run-stores.js index bd88e5553359bd..5292a6fe096bae 100644 --- a/test/parallel/test-diagnostics-channel-tracing-channel-promise-run-stores.js +++ b/test/parallel/test-diagnostics-channel-tracing-channel-promise-run-stores.js @@ -9,16 +9,23 @@ const assert = require('assert'); const channel = dc.tracingChannel('test'); const store = new AsyncLocalStorage(); -const context = { foo: 'bar' }; +const firstContext = { foo: 'bar' }; +const secondContext = { baz: 'buz' }; channel.start.bindStore(store, common.mustCall(() => { - return context; + return firstContext; +})); + +channel.asyncStart.bindStore(store, common.mustNotCall(() => { + return secondContext; })); assert.strictEqual(store.getStore(), undefined); channel.tracePromise(common.mustCall(async () => { - assert.deepStrictEqual(store.getStore(), context); + assert.deepStrictEqual(store.getStore(), firstContext); await setTimeout(1); - assert.deepStrictEqual(store.getStore(), context); + // Should _not_ switch to second context as promises don't have an "after" + // point at which to do a runStores. + assert.deepStrictEqual(store.getStore(), firstContext); })); assert.strictEqual(store.getStore(), undefined);