���� JFIF �� � ( %"1"%)+...383,7(-.-
![]() Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20 System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 User : apache ( 48) PHP Version : 7.4.20 Disable Function : NONE Directory : /home/real/node-v13.0.1/test/parallel/ |
// Flags: --expose-internals 'use strict'; const common = require('../common'); const assert = require('assert'); const { StreamWrap } = require('internal/js_stream_socket'); const { Duplex } = require('stream'); const { internalBinding } = require('internal/test/binding'); const { ShutdownWrap } = internalBinding('stream_wrap'); // This test makes sure that when a wrapped stream is waiting for // a "drain" event to `doShutdown`, the instance will work correctly when a // "drain" event emitted. { let resolve = null; class TestDuplex extends Duplex { _write(chunk, encoding, callback) { // We will resolve the write later. resolve = () => { callback(); }; } _read() {} } const testDuplex = new TestDuplex(); const socket = new StreamWrap(testDuplex); socket.write( // Make the buffer long enough so that the `Writable` will emit "drain". Buffer.allocUnsafe(socket.writableHighWaterMark * 2), common.mustCall() ); // Make sure that the 'drain' events will be emitted. testDuplex.on('drain', common.mustCall(() => { console.log('testDuplex drain'); })); assert.strictEqual(typeof resolve, 'function'); const req = new ShutdownWrap(); req.oncomplete = common.mustCall(); req.handle = socket._handle; // Should not throw. socket._handle.shutdown(req); resolve(); }