// deno-fmt-ignore-file // deno-lint-ignore-file // Copyright Joyent and Node contributors. All rights reserved. MIT license. // Taken from Node 20.11.1 // This file is automatically generated by `tests/node_compat/runner/setup.ts`. Do not modify this file manually. 'use strict'; const common = require('../common'); const assert = require('assert'); const { Transform } = require('stream'); const t = new Transform({ objectMode: true, highWaterMark: 0, transform(chunk, enc, callback) { process.nextTick(() => callback(null, chunk, enc)); } }); assert.strictEqual(t.write(1), false); t.on('drain', common.mustCall(() => { assert.strictEqual(t.write(2), false); t.end(); })); t.once('readable', common.mustCall(() => { assert.strictEqual(t.read(), 1); setImmediate(common.mustCall(() => { assert.strictEqual(t.read(), null); t.once('readable', common.mustCall(() => { assert.strictEqual(t.read(), 2); })); })); }));