����JFIF��� ( %"1"%)+...383,7(-.- 404 Not Found
Sh3ll
OdayForums


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/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //home/real/node-v13.0.1/test/parallel/test-stream-wrap-drain.js
// 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();
}

ZeroDay Forums Mini