Comparing version 0.0.1 to 0.0.2
@@ -11,6 +11,13 @@ var map = require('map-stream'); | ||
var cwd = path.resolve(opt.cwd); | ||
function saveFile (file, cb) { | ||
var writePath = path.resolve(opt.cwd, outFolder, file.relative); | ||
var basePath = path.resolve(cwd, outFolder); | ||
var writePath = path.resolve(basePath, file.relative); | ||
var writeFolder = path.dirname(writePath); | ||
file.cwd = cwd; | ||
file.base = basePath; | ||
file.path = writePath; | ||
// mkdirp the folder the file is going in | ||
@@ -17,0 +24,0 @@ // then write to it |
{ | ||
"name": "vinyl-fs", | ||
"description": "Vinyl adapter for the file system", | ||
"version": "0.0.1", | ||
"version": "0.0.2", | ||
"homepage": "http://github.com/wearefractal/vinyl-fs", | ||
@@ -19,3 +19,3 @@ "repository": "git://github.com/wearefractal/vinyl-fs.git", | ||
"mocha": "~1.17.0", | ||
"should": "~2.1.1", | ||
"should": "~3.0.1", | ||
"mocha-lcov-reporter": "0.0.1", | ||
@@ -22,0 +22,0 @@ "coveralls": "~2.6.1", |
@@ -30,3 +30,3 @@ var vfs = require('../'); | ||
it('should pass through writes with cwd', function(done) { | ||
var expectedPath = path.join(__dirname, "./out-fixtures/test.coffee"); | ||
var inputPath = path.join(__dirname, "./fixtures/test.coffee"); | ||
@@ -36,3 +36,3 @@ var expectedFile = new File({ | ||
cwd: __dirname, | ||
path: expectedPath, | ||
path: inputPath, | ||
contents: null | ||
@@ -57,3 +57,3 @@ }); | ||
it('should pass through writes with default cwd', function(done) { | ||
var expectedPath = path.join(__dirname, "./out-fixtures/test.coffee"); | ||
var inputPath = path.join(__dirname, "./fixtures/test.coffee"); | ||
@@ -63,3 +63,3 @@ var expectedFile = new File({ | ||
cwd: __dirname, | ||
path: expectedPath, | ||
path: inputPath, | ||
contents: null | ||
@@ -84,5 +84,7 @@ }); | ||
it('should not write null files', function(done) { | ||
var expectedPath = path.join(__dirname, "./out-fixtures/test.coffee"); | ||
var inputPath = path.join(__dirname, "./fixtures/test.coffee"); | ||
var inputBase = path.join(__dirname, "./fixtures/"); | ||
var expectedPath = path.join(__dirname, "./out-fixtures/test.coffee"); | ||
var expectedCwd = __dirname; | ||
var expectedBase = path.join(__dirname, "./out-fixtures"); | ||
@@ -99,2 +101,5 @@ var expectedFile = new File({ | ||
buffered[0].should.equal(expectedFile); | ||
buffered[0].cwd.should.equal(expectedCwd, 'cwd should have changed'); | ||
buffered[0].base.should.equal(expectedBase, 'base should have changed'); | ||
buffered[0].path.should.equal(expectedPath, 'path should have changed'); | ||
fs.existsSync(expectedPath).should.equal(false); | ||
@@ -113,7 +118,44 @@ done(); | ||
it('should write buffer files to the right folder with relative cwd', function(done) { | ||
var inputPath = path.join(__dirname, "./fixtures/test.coffee"); | ||
var inputBase = path.join(__dirname, "./fixtures/"); | ||
var expectedPath = path.join(__dirname, "./out-fixtures/test.coffee"); | ||
var expectedCwd = __dirname; | ||
var expectedBase = path.join(__dirname, "./out-fixtures"); | ||
var expectedContents = fs.readFileSync(inputPath); | ||
var expectedFile = new File({ | ||
base: inputBase, | ||
cwd: __dirname, | ||
path: inputPath, | ||
contents: expectedContents | ||
}); | ||
var onEnd = function(){ | ||
buffered.length.should.equal(1); | ||
buffered[0].should.equal(expectedFile); | ||
buffered[0].cwd.should.equal(expectedCwd, 'cwd should have changed'); | ||
buffered[0].base.should.equal(expectedBase, 'base should have changed'); | ||
buffered[0].path.should.equal(expectedPath, 'path should have changed'); | ||
fs.existsSync(expectedPath).should.equal(true); | ||
bufEqual(fs.readFileSync(expectedPath), expectedContents).should.equal(true); | ||
done(); | ||
}; | ||
var stream = vfs.dest("./out-fixtures/", {cwd: path.relative(process.cwd(), __dirname)}); | ||
var buffered = []; | ||
bufferStream = through.obj(dataWrap(buffered.push.bind(buffered)), onEnd); | ||
stream.pipe(bufferStream); | ||
stream.write(expectedFile); | ||
stream.end(); | ||
}); | ||
it('should write buffer files to the right folder', function(done) { | ||
var expectedPath = path.join(__dirname, "./out-fixtures/test.coffee"); | ||
var inputPath = path.join(__dirname, "./fixtures/test.coffee"); | ||
var inputBase = path.join(__dirname, "./fixtures/"); | ||
var expectedPath = path.join(__dirname, "./out-fixtures/test.coffee"); | ||
var expectedContents = fs.readFileSync(inputPath); | ||
var expectedCwd = __dirname; | ||
var expectedBase = path.join(__dirname, "./out-fixtures"); | ||
@@ -130,2 +172,5 @@ var expectedFile = new File({ | ||
buffered[0].should.equal(expectedFile); | ||
buffered[0].cwd.should.equal(expectedCwd, 'cwd should have changed'); | ||
buffered[0].base.should.equal(expectedBase, 'base should have changed'); | ||
buffered[0].path.should.equal(expectedPath, 'path should have changed'); | ||
fs.existsSync(expectedPath).should.equal(true); | ||
@@ -146,6 +191,8 @@ bufEqual(fs.readFileSync(expectedPath), expectedContents).should.equal(true); | ||
it('should write streaming files to the right folder', function(done) { | ||
var expectedPath = path.join(__dirname, "./out-fixtures/test.coffee"); | ||
var inputPath = path.join(__dirname, "./fixtures/test.coffee"); | ||
var inputBase = path.join(__dirname, "./fixtures/"); | ||
var expectedPath = path.join(__dirname, "./out-fixtures/test.coffee"); | ||
var expectedContents = fs.readFileSync(inputPath); | ||
var expectedCwd = __dirname; | ||
var expectedBase = path.join(__dirname, "./out-fixtures"); | ||
@@ -163,2 +210,5 @@ var contentStream = through.obj(); | ||
buffered[0].should.equal(expectedFile); | ||
buffered[0].cwd.should.equal(expectedCwd, 'cwd should have changed'); | ||
buffered[0].base.should.equal(expectedBase, 'base should have changed'); | ||
buffered[0].path.should.equal(expectedPath, 'path should have changed'); | ||
fs.existsSync(expectedPath).should.equal(true); | ||
@@ -183,5 +233,7 @@ bufEqual(fs.readFileSync(expectedPath), expectedContents).should.equal(true); | ||
it('should write directories to the right folder', function(done) { | ||
var expectedPath = path.join(__dirname, "./out-fixtures/test/"); | ||
var inputPath = path.join(__dirname, "./fixtures/test/"); | ||
var inputPath = path.join(__dirname, "./fixtures/test"); | ||
var inputBase = path.join(__dirname, "./fixtures/"); | ||
var expectedPath = path.join(__dirname, "./out-fixtures/test"); | ||
var expectedCwd = __dirname; | ||
var expectedBase = path.join(__dirname, "./out-fixtures"); | ||
@@ -203,2 +255,5 @@ var expectedFile = new File({ | ||
buffered[0].should.equal(expectedFile); | ||
buffered[0].cwd.should.equal(expectedCwd, 'cwd should have changed'); | ||
buffered[0].base.should.equal(expectedBase, 'base should have changed'); | ||
buffered[0].path.should.equal(expectedPath, 'path should have changed'); | ||
fs.existsSync(expectedPath).should.equal(true); | ||
@@ -205,0 +260,0 @@ fs.lstatSync(expectedPath).isDirectory().should.equal(true); |
@@ -69,2 +69,22 @@ var vfs = require('../'); | ||
it('should glob a file with default settings and relative cwd', function(done) { | ||
var expectedPath = path.join(__dirname, "./fixtures/test.coffee"); | ||
var expectedContent = fs.readFileSync(expectedPath); | ||
var onEnd = function(){ | ||
buffered.length.should.equal(1); | ||
should.exist(buffered[0].stat); | ||
buffered[0].path.should.equal(expectedPath); | ||
buffered[0].isBuffer().should.equal(true); | ||
bufEqual(buffered[0].contents, expectedContent).should.equal(true); | ||
done(); | ||
}; | ||
var stream = vfs.src("./fixtures/*.coffee", {cwd: path.relative(process.cwd(), __dirname)}); | ||
var buffered = []; | ||
bufferStream = through.obj(dataWrap(buffered.push.bind(buffered)), onEnd); | ||
stream.pipe(bufferStream); | ||
}); | ||
it('should glob a directory with default settings', function(done) { | ||
@@ -71,0 +91,0 @@ var expectedPath = path.join(__dirname, "./fixtures/wow"); |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
22653
468