first commit
This commit is contained in:
1
build/node_modules/tar-pack/test/fixtures/packed-file.txt
generated
vendored
Normal file
1
build/node_modules/tar-pack/test/fixtures/packed-file.txt
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
bar
|
||||
BIN
build/node_modules/tar-pack/test/fixtures/packed.tar
generated
vendored
Normal file
BIN
build/node_modules/tar-pack/test/fixtures/packed.tar
generated
vendored
Normal file
Binary file not shown.
BIN
build/node_modules/tar-pack/test/fixtures/packed.tar.gz
generated
vendored
Normal file
BIN
build/node_modules/tar-pack/test/fixtures/packed.tar.gz
generated
vendored
Normal file
Binary file not shown.
1
build/node_modules/tar-pack/test/fixtures/to-pack/bar.txt
generated
vendored
Normal file
1
build/node_modules/tar-pack/test/fixtures/to-pack/bar.txt
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
baz
|
||||
1
build/node_modules/tar-pack/test/fixtures/to-pack/foo.txt
generated
vendored
Normal file
1
build/node_modules/tar-pack/test/fixtures/to-pack/foo.txt
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
bar
|
||||
109
build/node_modules/tar-pack/test/index.js
generated
vendored
Normal file
109
build/node_modules/tar-pack/test/index.js
generated
vendored
Normal file
@@ -0,0 +1,109 @@
|
||||
var tar = require('../')
|
||||
var path = require('path')
|
||||
var rfile = require('rfile')
|
||||
var rimraf = require('rimraf').sync
|
||||
var mkdir = require('mkdirp').sync
|
||||
|
||||
var read = require('fs').createReadStream
|
||||
var write = require('fs').createWriteStream
|
||||
var assert = require('assert')
|
||||
|
||||
beforeEach(function () {
|
||||
rimraf(__dirname + '/output')
|
||||
})
|
||||
afterEach(function () {
|
||||
rimraf(__dirname + '/output')
|
||||
})
|
||||
describe('tarball.pipe(unpack(directory, callback))', function () {
|
||||
it('unpacks the tarball into the directory', function (done) {
|
||||
read(__dirname + '/fixtures/packed.tar').pipe(tar.unpack(__dirname + '/output/unpacked', function (err) {
|
||||
if (err) return done(err)
|
||||
assert.equal(rfile('./output/unpacked/bar.txt'), rfile('./fixtures/to-pack/bar.txt'))
|
||||
assert.equal(rfile('./output/unpacked/foo.txt'), rfile('./fixtures/to-pack/foo.txt'))
|
||||
done()
|
||||
}))
|
||||
})
|
||||
it('unpacks the tarball into the directory without deleting existing files', function (done) {
|
||||
read(__dirname + '/fixtures/packed-file.txt').pipe(tar.unpack(__dirname + '/output/unpacked', function (err) {
|
||||
if (err) return done(err)
|
||||
read(__dirname + '/fixtures/packed.tar').pipe(tar.unpack(__dirname + '/output/unpacked', {keepFiles: true}, function (err) {
|
||||
if (err) return done(err)
|
||||
assert.equal(rfile('./output/unpacked/index.js'), rfile('./fixtures/packed-file.txt'))
|
||||
done()
|
||||
}))
|
||||
}))
|
||||
})
|
||||
})
|
||||
describe('tarball.pipe(unpack(directory, { strip: 0 }, callback))', function () {
|
||||
it('unpacks the tarball into the directory with subdir package', function (done) {
|
||||
read(__dirname + '/fixtures/packed.tar').pipe(tar.unpack(__dirname + '/output/unpacked', { strip: 0 } , function (err) {
|
||||
if (err) return done(err)
|
||||
assert.equal(rfile('./output/unpacked/package/bar.txt'), rfile('./fixtures/to-pack/bar.txt'))
|
||||
assert.equal(rfile('./output/unpacked/package/foo.txt'), rfile('./fixtures/to-pack/foo.txt'))
|
||||
done()
|
||||
}))
|
||||
})
|
||||
})
|
||||
describe('gziptarball.pipe(unpack(directory, callback))', function () {
|
||||
it('unpacks the tarball into the directory', function (done) {
|
||||
read(__dirname + '/fixtures/packed.tar.gz').pipe(tar.unpack(__dirname + '/output/unpacked', function (err) {
|
||||
if (err) return done(err)
|
||||
assert.equal(rfile('./output/unpacked/bar.txt'), rfile('./fixtures/to-pack/bar.txt'))
|
||||
assert.equal(rfile('./output/unpacked/foo.txt'), rfile('./fixtures/to-pack/foo.txt'))
|
||||
done()
|
||||
}))
|
||||
})
|
||||
})
|
||||
describe('file.pipe(unpack(directory, callback))', function () {
|
||||
it('copies the file into the directory', function (done) {
|
||||
read(__dirname + '/fixtures/packed-file.txt').pipe(tar.unpack(__dirname + '/output/unpacked', function (err) {
|
||||
if (err) return done(err)
|
||||
assert.equal(rfile('./output/unpacked/index.js'), rfile('./fixtures/packed-file.txt'))
|
||||
done()
|
||||
}))
|
||||
})
|
||||
})
|
||||
describe('pack(directory).pipe(tarball)', function () {
|
||||
it('packs the directory into the output', function (done) {
|
||||
var called = false
|
||||
mkdir(__dirname + '/output/')
|
||||
tar.pack(__dirname + '/fixtures/to-pack').pipe(write(__dirname + '/output/packed.tar.gz'))
|
||||
.on('error', function (err) {
|
||||
if (called) return
|
||||
called = true
|
||||
done(err)
|
||||
})
|
||||
.on('close', function () {
|
||||
if (called) return
|
||||
called = true
|
||||
read(__dirname + '/output/packed.tar.gz').pipe(tar.unpack(__dirname + '/output/unpacked', function (err) {
|
||||
if (err) return done(err)
|
||||
assert.equal(rfile('./output/unpacked/bar.txt'), rfile('./fixtures/to-pack/bar.txt'))
|
||||
assert.equal(rfile('./output/unpacked/foo.txt'), rfile('./fixtures/to-pack/foo.txt'))
|
||||
done()
|
||||
}))
|
||||
})
|
||||
})
|
||||
})
|
||||
describe('pack(directory, { fromBase: true }).pipe(tarball)', function () {
|
||||
it('packs the directory with input dir as base dir', function (done) {
|
||||
var called = false
|
||||
mkdir(__dirname + '/output/')
|
||||
tar.pack(__dirname + '/fixtures/to-pack', { fromBase: true }).pipe(write(__dirname + '/output/packed.tar.gz'))
|
||||
.on('error', function (err) {
|
||||
if (called) return
|
||||
called = true
|
||||
done(err)
|
||||
})
|
||||
.on('close', function () {
|
||||
if (called) return
|
||||
called = true
|
||||
read(__dirname + '/output/packed.tar.gz').pipe(tar.unpack(__dirname + '/output/unpacked', { strip: 0 }, function (err) {
|
||||
if (err) return done(err)
|
||||
assert.equal(rfile('./output/unpacked/bar.txt'), rfile('./fixtures/to-pack/bar.txt'))
|
||||
assert.equal(rfile('./output/unpacked/foo.txt'), rfile('./fixtures/to-pack/foo.txt'))
|
||||
done()
|
||||
}))
|
||||
})
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user