diff --git a/test/dotNotation.js b/test/dotNotation.js index dca2db4..b9f8be2 100644 --- a/test/dotNotation.js +++ b/test/dotNotation.js @@ -1,6 +1,6 @@ 'use strict'; -var gutil = require('gulp-util'); +var File = require('vinyl'); var should = require('should'); var bump = require('..'); @@ -14,7 +14,7 @@ require('mocha'); }; it('should bump dot notation', function (done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ base: 'test/', cwd: 'test/', path: 'test/fixtures/package.json', @@ -31,7 +31,7 @@ require('mocha'); }); it('should bump dot notation with type', function (done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ base: 'test/', cwd: 'test/', path: 'test/fixtures/package.json', @@ -50,4 +50,24 @@ require('mocha'); bumpS.write(fakeFile); }); + it('should bump dot notation with specified version', function (done) { + var fakeFile = new File({ + base: 'test/', + cwd: 'test/', + path: 'test/fixtures/package.json', + contents: new Buffer(JSON.stringify(dotObject, null, 2)) + }); + var bumpS = bump({ + key: 'subversion.version', + version: '2.0.0' + }); + + bumpS.once('data', function(newFile) { + var json = JSON.parse(String(newFile.contents)); + json.subversion.version.should.equal('2.0.0'); + done(); + }); + bumpS.write(fakeFile); + }); + }); diff --git a/test/errorCases.js b/test/errorCases.js index 3556667..4cae5ee 100644 --- a/test/errorCases.js +++ b/test/errorCases.js @@ -1,6 +1,6 @@ 'use strict'; -var gutil = require('gulp-util'); +var File = require('vinyl'); var should = require('should'); var bump = require('..'); @@ -8,38 +8,36 @@ require('mocha'); describe('Test failure cases cases in gulp-bump', function() { + var fakeFile = new File({ + path: 'some-dir/dummyfile.js', + contents: new Buffer('{ "version": "0.0.0" }') + }); + it('should fail when not detect a valid semver version', function(done) { - var file = 'some-dir/dummyfile.js'; - var fakeFile = new gutil.File({ - path: file, - contents: new Buffer('{ "version": "0.A.1" }') - }); + + fakeFile.contents = new Buffer('{ "version": "0.A.1" }'); var bumpS = bump(); bumpS.on('error', function(e) { should.exist(e); e.message.should.equal('Detected invalid semver version'); - e.fileName.should.containEql(file); + e.fileName.should.containEql(fakeFile.path); return done(); }); bumpS.write(fakeFile); bumpS.end(); }); - it('should fail when not detect a valid semver version and wrong key', function(done) { - var file = 'some-dir/dummyfile.js'; - var fakeFile = new gutil.File({ - path: file, - contents: new Buffer('{ "version": "0.0.1" }') - }); + it('should fail with an invalid semver version', function(done) { + fakeFile.contents = new Buffer('{ "version": "0.0.1" }'); var bumpS = bump({key: 'appversion'}); bumpS.on('error', function(e) { should.exist(e); e.message.should.containEql('Detected invalid semver appversion'); - e.fileName.should.containEql(file); + e.fileName.should.containEql(fakeFile.path); return done(); }); bumpS.write(fakeFile); @@ -47,11 +45,7 @@ describe('Test failure cases cases in gulp-bump', function() { }); it('should fail when supplied with an invalid JSON', function(done) { - var file = 'some-dir/dummyfile.js'; - var fakeFile = new gutil.File({ - path: file, - contents: new Buffer('{ invalid json oh no!!!}') - }); + fakeFile.contents = new Buffer('{ invalid json oh no!!!}'); var bumpS = bump(); @@ -59,7 +53,7 @@ describe('Test failure cases cases in gulp-bump', function() { should.exist(e); e.name.should.equal('Error'); e.message.should.containEql('Problem parsing JSON file'); - e.fileName.should.containEql(file); + e.fileName.should.containEql(fakeFile.path); return done(); }); bumpS.write(fakeFile); @@ -67,9 +61,8 @@ describe('Test failure cases cases in gulp-bump', function() { }); it('should fallback to defaults when supplied with invalid semver version', function(done) { - var fakeFile = new gutil.File({ - contents: new Buffer('{ "version": "0.0.1" }') - }); + fakeFile.contents = new Buffer('{ "version": "0.0.1" }'); + var bumpS = bump({version: '0.A.2'}); bumpS.once('data', function(newFile) { diff --git a/test/fileFixtures.js b/test/fileFixtures.js index bda18da..7ced1c5 100644 --- a/test/fileFixtures.js +++ b/test/fileFixtures.js @@ -1,7 +1,7 @@ 'use strict'; var fs = require('fs'); -var gutil = require('gulp-util'); +var File = require('vinyl'); var should = require('should'); var bump = require('..'); @@ -12,7 +12,7 @@ var fixtureFile = fs.readFileSync('test/fixtures/package.json'); describe('gulp-bump: JSON File fixtures', function() { it('should bump minor by default', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ base: 'test/', cwd: 'test/', path: 'test/fixtures/package.json', @@ -32,7 +32,7 @@ describe('gulp-bump: JSON File fixtures', function() { }); it('should bump major if options.bump = major', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ base: 'test/', cwd: 'test/', path: 'test/fixtures/package.json', @@ -52,7 +52,7 @@ describe('gulp-bump: JSON File fixtures', function() { }); it('should bump minor if options.bump = minor', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ base: 'test/', cwd: 'test/', path: 'test/fixtures/package.json', @@ -72,7 +72,7 @@ describe('gulp-bump: JSON File fixtures', function() { }); it('should set version to value specified by options.version', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ base: 'test/', cwd: 'test/', path: 'test/fixtures/package.json', @@ -92,7 +92,7 @@ describe('gulp-bump: JSON File fixtures', function() { }); it('should set the key to a custom version', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ base: 'test/', cwd: 'test/', path: 'test/fixtures/key.json', diff --git a/test/index.js b/test/index.js index 0059571..47341ba 100644 --- a/test/index.js +++ b/test/index.js @@ -1,6 +1,6 @@ 'use strict'; -var gutil = require('gulp-util'); +var File = require('vinyl'); var should = require('should'); var bump = require('..'); @@ -9,7 +9,7 @@ require('mocha'); describe('gulp-bump: JSON comparison fixtures', function() { it('should bump patch version by default', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ contents: new Buffer('{ "version": "0.0.9" }'), path: 'test/fixtures/test.json' }); @@ -27,7 +27,7 @@ describe('gulp-bump: JSON comparison fixtures', function() { }); it('should bump patch version as default and a key=appversion', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ contents: new Buffer('{ "appversion": "0.0.1" }'), path: 'test/fixtures/test.json' }); @@ -45,7 +45,7 @@ describe('gulp-bump: JSON comparison fixtures', function() { }); it('should ignore invalid type and use type=patch', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ contents: new Buffer('{ "version": "0.0.1" }'), path: 'test/fixtures/test.json' }); @@ -64,7 +64,7 @@ describe('gulp-bump: JSON comparison fixtures', function() { }); it('should set the correct version when supplied', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ contents: new Buffer('{ "version": "0.0.1" }'), path: 'test/fixtures/test.json' }); @@ -82,7 +82,7 @@ describe('gulp-bump: JSON comparison fixtures', function() { }); it('should set the correct version when supplied even if key did not exist', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ contents: new Buffer('{}'), path: 'test/fixtures/test.json' }); @@ -100,7 +100,7 @@ describe('gulp-bump: JSON comparison fixtures', function() { }); it('should bump prerelease version', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ contents: new Buffer('{ "version": "0.0.1-0"}'), path: 'test/fixtures/test.json' }); @@ -118,7 +118,7 @@ describe('gulp-bump: JSON comparison fixtures', function() { }); it('should bump to a prerelease version with a preid', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ contents: new Buffer('{ "version": "0.0.1"}'), path: 'test/fixtures/test.json' }); @@ -136,7 +136,7 @@ describe('gulp-bump: JSON comparison fixtures', function() { }); it('should bump preid version', function(done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ contents: new Buffer('{ "version": "0.1.0-zeta.1"}'), path: 'test/fixtures/test.json' }); diff --git a/test/whitespacePreserving.js b/test/whitespacePreserving.js index f832731..e4724f6 100644 --- a/test/whitespacePreserving.js +++ b/test/whitespacePreserving.js @@ -1,6 +1,6 @@ 'use strict'; -var gutil = require('gulp-util'); +var File = require('vinyl'); var should = require('should'); var bump = require('..'); @@ -12,7 +12,7 @@ describe('gulp-bump: Whitespace preserving', function() { var expectedObj = { version: '1.0.1' }; var createFile = function (tabType) { - return new gutil.File({ + return new File({ base: 'test/', cwd: 'test/', path: 'test/fixtures/package.json', @@ -54,7 +54,7 @@ describe('gulp-bump: Whitespace preserving', function() { }); it('should preserve whitespace at end', function (done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ base: 'test/', cwd: 'test/', path: 'test/fixtures/package.json', @@ -70,7 +70,7 @@ describe('gulp-bump: Whitespace preserving', function() { }); it('should not add new line to file', function (done) { - var fakeFile = new gutil.File({ + var fakeFile = new File({ base: 'test/', cwd: 'test/', path: 'test/fixtures/package.json',