Your IP : 216.73.216.91


Current Path : /var/node/inatote/Inatote-Backend/node_modules/gunzip-maybe/
Upload File :
Current File : /var/node/inatote/Inatote-Backend/node_modules/gunzip-maybe/test.js

var tape = require('tape')
var zlib = require('zlib')
var concat = require('concat-stream')
var fs = require('fs')
var gunzip = require('./')

tape('deflated input', function (t) {
  fs.createReadStream(__filename)
    .pipe(zlib.createDeflate())
    .pipe(gunzip())
    .pipe(concat(function (data) {
      t.same(data, fs.readFileSync(__filename))
      t.end()
    }))
})

tape('deflated multiple times', function (t) {
  fs.createReadStream(__filename)
    .pipe(zlib.createDeflate())
    .pipe(zlib.createDeflate())
    .pipe(gunzip())
    .pipe(concat(function (data) {
      t.same(data, fs.readFileSync(__filename))
      t.end()
    }))
})

tape('gunzipped input', function (t) {
  fs.createReadStream(__filename)
    .pipe(zlib.createGzip())
    .pipe(gunzip())
    .pipe(concat(function (data) {
      t.same(data, fs.readFileSync(__filename))
      t.end()
    }))
})

tape('gunzipped multiple times', function (t) {
  fs.createReadStream(__filename)
    .pipe(zlib.createGzip())
    .pipe(zlib.createGzip())
    .pipe(gunzip())
    .pipe(concat(function (data) {
      t.same(data, fs.readFileSync(__filename))
      t.end()
    }))
})

tape('regular input', function (t) {
  fs.createReadStream(__filename)
    .pipe(gunzip())
    .pipe(concat(function (data) {
      t.same(data, fs.readFileSync(__filename))
      t.end()
    }))
})

tape('limited recursion', function (t) {
  t.plan(1)
  fs.createReadStream(__filename)
    .pipe(zlib.createGzip())
    .pipe(zlib.createGzip())
    .pipe(gunzip(1))
    .on('finish', function () {
      t.fail('should not finish')
    })
    .on('error', function (err) {
      t.same(err.message, 'Maximum recursion reached')
    })
})