Uname:Linux Sandbox-A 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64

Base Dir : /var/www/html

User : gavin


403WebShell
403Webshell
Server IP : 68.183.124.220  /  Your IP : 216.73.217.137
Web Server : Apache/2.4.18 (Ubuntu)
System : Linux Sandbox-A 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64
User : gavin ( 1000)
PHP Version : 7.0.33-0ubuntu0.16.04.16
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/gavin/workspace/happymandarin/node_modules/stream-consume/test/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/gavin/workspace/happymandarin/node_modules/stream-consume/test/tests.js
/*jshint node:true */
/*global describe:false, it:false */
"use strict";

var consume = require('../');
var Stream = require('stream');
var Readable = Stream.Readable;
var Writable = Stream.Writable;
var Duplex = Stream.Duplex;
var should = require('should');
var through = require('through2');
require('mocha');

describe('stream-consume', function() {

    it('should cause a Readable stream to complete if it\'s not piped anywhere', function(done) {
        var rs = new Readable({highWaterMark: 2});
        var a = 0;
        var ended = false;
        rs._read = function() {
            if (a++ < 100) {
                rs.push(a + "");
            } else {
                ended = true;
                rs.push(null);
            }
        };

        rs.on("end", function() {
            a.should.be.above(99);
            ended.should.be.true;
            done();
        });

        consume(rs);
    });

    it('should work with Readable streams in objectMode', function(done) {
        var rs = new Readable({highWaterMark: 2, objectMode: true});
        var a = 0;
        var ended = false;
        rs._read = function() {
            if (a++ < 100) {
                rs.push(a);
            } else {
                ended = true;
                rs.push(null);
            }
        };

        rs.on("end", function() {
            a.should.be.above(99);
            ended.should.be.true;
            done();
        });

        consume(rs);
    });

    it('should not interfere with a Readable stream that is piped somewhere', function(done) {
        var rs = new Readable({highWaterMark: 2});
        var a = 0;
        var ended = false;
        rs._read = function() {
            if (a++ < 100) {
                rs.push(".");
            } else {
                ended = true;
                rs.push(null);
            }
        };

        var sizeRead = 0;
        var ws = new Writable({highWaterMark: 2});
        ws._write = function(chunk, enc, next) {
            sizeRead += chunk.length;
            next();
        }

        ws.on("finish", function() {
            a.should.be.above(99);
            ended.should.be.true;
            sizeRead.should.equal(100);
            done();
        });

        rs.pipe(ws);

        consume(rs);
    });

    it('should not interfere with a Writable stream', function(done) {
        var rs = new Readable({highWaterMark: 2});
        var a = 0;
        var ended = false;
        rs._read = function() {
            if (a++ < 100) {
                rs.push(".");
            } else {
                ended = true;
                rs.push(null);
            }
        };

        var sizeRead = 0;
        var ws = new Writable({highWaterMark: 2});
        ws._write = function(chunk, enc, next) {
            sizeRead += chunk.length;
            next();
        }

        ws.on("finish", function() {
            a.should.be.above(99);
            ended.should.be.true;
            sizeRead.should.equal(100);
            done();
        });

        rs.pipe(ws);

        consume(ws);
    });

    it('should handle a Transform stream', function(done) {
        var rs = new Readable({highWaterMark: 2});
        var a = 0;
        var ended = false;
        rs._read = function() {
            if (a++ < 100) {
                rs.push(".");
            } else {
                ended = true;
                rs.push(null);
            }
        };

        var sizeRead = 0;
        var flushed = false;
        var ts = through({highWaterMark: 2}, function(chunk, enc, cb) {
            sizeRead += chunk.length;
            this.push(chunk);
            cb();
        }, function(cb) {
            flushed = true;
            cb();
        });

        ts.on("end", function() {
            a.should.be.above(99);
            ended.should.be.true;
            sizeRead.should.equal(100);
            flushed.should.be.true;
            done();
        });

        rs.pipe(ts);

        consume(ts);
    });

    it('should handle a classic stream', function(done) {
        var rs = new Stream();
        var ended = false;
        var i;

        rs.on("end", function() {
            ended.should.be.true;
            done();
        });

        consume(rs);

        for (i = 0; i < 100; i++) {
            rs.emit("data", i);
        }
        ended = true;
        rs.emit("end");
    });

});

Youez - 2016 - github.com/yon3zu
LinuXploit