mirror of https://github.com/nodejs/node.git
29 lines
659 B
JavaScript
29 lines
659 B
JavaScript
import '../common/index.mjs';
|
|
import { test } from 'node:test';
|
|
import assert from 'node:assert';
|
|
|
|
test('do not leak promises', async () => {
|
|
const buf = new Uint8Array(1);
|
|
const readable = new ReadableStream({
|
|
start(controller) {
|
|
controller.enqueue(buf);
|
|
controller.close();
|
|
}
|
|
});
|
|
|
|
const [out1, out2] = readable.tee();
|
|
const cloned = structuredClone(out2, { transfer: [out2] });
|
|
|
|
for await (const chunk of cloned) {
|
|
assert.deepStrictEqual(chunk, buf);
|
|
}
|
|
|
|
for await (const chunk of out2) {
|
|
assert.deepStrictEqual(chunk, buf);
|
|
}
|
|
|
|
for await (const chunk of out1) {
|
|
assert.deepStrictEqual(chunk, buf);
|
|
}
|
|
});
|