diff --git a/package.json b/package.json index 4f738ade..7beb957a 100644 --- a/package.json +++ b/package.json @@ -12,8 +12,8 @@ ], "dependencies": { "duplexify": "^3.2.0", - "glob-stream": "^4.0.1", - "glob-watcher": "^0.0.8", + "glob-stream": "^5.0.0", + "glob-watcher": "^2.0.0", "graceful-fs": "^3.0.0", "merge-stream": "^0.1.7", "mkdirp": "^0.5.0", diff --git a/test/dest.js b/test/dest.js index 424781c5..2bab2cd6 100644 --- a/test/dest.js +++ b/test/dest.js @@ -743,7 +743,6 @@ describe('dest stream', function() { var onEnd = function(){ expectedCount.should.equal(1); should(chmodSpy.called).be.not.ok; - realMode(fs.lstatSync(expectedPath).mode).should.equal(expectedMode); done(); }; diff --git a/test/src.js b/test/src.js index f61e5b34..6d666412 100644 --- a/test/src.js +++ b/test/src.js @@ -1,7 +1,3 @@ -var spies = require('./spy'); -var chmodSpy = spies.chmodSpy; -var statSpy = spies.statSpy; - var vfs = require('../'); var path = require('path'); @@ -53,21 +49,36 @@ describe('source stream', function() { }); }); + it('should error on file not existing', function(done) { + var stream = vfs.src('./fixtures/noexist.coffee'); + stream.on('error', function(err){ + should.exist(err); + done(); + }); + }); + it('should pass through writes', function(done) { var expectedPath = path.join(__dirname, './fixtures/test.coffee'); var expectedContent = fs.readFileSync(expectedPath); - + var files = []; var expectedFile = new File({ base: __dirname, cwd: __dirname, path: expectedPath, - contents: expectedContent + contents: expectedContent, + stat: fs.lstatSync(expectedPath) }); - var stream = vfs.src('./fixtures/noexist.coffee'); + var stream = vfs.src(expectedPath, {cwd: __dirname, base: __dirname}); stream.on('data', function(file){ - file.should.equal(expectedFile); - bufEqual(file.contents, expectedContent).should.equal(true); + files.push(file); + }); + stream.once('end', function(){ + files.length.should.equal(2); + files[0].should.eql(expectedFile); + bufEqual(files[0].contents, expectedContent).should.equal(true); + files[1].should.eql(expectedFile); + bufEqual(files[1].contents, expectedContent).should.equal(true); done(); }); stream.write(expectedFile);