From 421dbc28bdd860cdd62a6f5976395ae50bd16e9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andre=CC=81=20Cruz?= Date: Thu, 25 Apr 2013 18:59:42 +0100 Subject: [PATCH] Small changes. --- lib/resolve/resolvers/GitResolver.js | 9 +++--- test/resolve/resolver.js | 6 +++- test/resolve/resolvers/gitResolver.js | 45 +++++++++++++++++---------- 3 files changed, 39 insertions(+), 21 deletions(-) diff --git a/lib/resolve/resolvers/GitResolver.js b/lib/resolve/resolvers/GitResolver.js index 2357a9ce..a8b59f33 100644 --- a/lib/resolve/resolvers/GitResolver.js +++ b/lib/resolve/resolvers/GitResolver.js @@ -148,10 +148,11 @@ GitResolver.prototype._cleanup = function () { }; GitResolver.prototype._savePkgMeta = function (meta) { - // Ensure that the .version is fulfilled with the resolution - // version if any - // TODO: emit a warning if the json version is different than the resolved one - // also add a test for this stuff + if (mout.object.hasOwn(meta, 'version') && meta.version !== this._resolution.version) { + // warn about mismatch version + } + + // Ensure that the version is fulfilled with the resolution version meta.version = this._resolution.version; // Save resolution to be used in hasNew later diff --git a/test/resolve/resolver.js b/test/resolve/resolver.js index 11b611e7..87c1137c 100644 --- a/test/resolve/resolver.js +++ b/test/resolve/resolver.js @@ -362,11 +362,13 @@ describe('Resolver', function () { .done(); }); - it('should fallback to component.json', function (next) { + it('should fallback to component.json (emitting a warn)', function (next) { var resolver = new Resolver('foo'); fs.writeFileSync(path.join(tempDir, 'component.json'), JSON.stringify({ name: 'bar', version: '0.0.0' })); + // TODO: should notify via progress events + resolver._readJson(tempDir) .then(function (meta) { expect(meta).to.be.an('object'); @@ -418,6 +420,8 @@ describe('Resolver', function () { it('should use the json name if the name was guessed', function (next) { var resolver = new Resolver('foo'); + // TODO: should notify via progress events + resolver._applyPkgMeta({ name: 'bar' }) .then(function (retMeta) { expect(retMeta.name).to.equal('bar'); diff --git a/test/resolve/resolvers/gitResolver.js b/test/resolve/resolvers/gitResolver.js index 162599f5..e6067b0c 100644 --- a/test/resolve/resolvers/gitResolver.js +++ b/test/resolve/resolvers/gitResolver.js @@ -689,25 +689,38 @@ describe('GitResolver', function () { resolver._tempDir = tempDir; resolver._savePkgMeta({ name: 'foo', version: '0.0.1' }) - .then(function () { - return Q.nfcall(fs.readFile, path.join(tempDir, '.bower.json')); - }) - .then(function (contents) { - var json = JSON.parse(contents.toString()); + .then(function () { + return Q.nfcall(fs.readFile, path.join(tempDir, '.bower.json')); + }) + .then(function (contents) { + var json = JSON.parse(contents.toString()); - expect(json).to.eql({ - name: 'foo', - version: '0.0.1', - _resolution: resolver._resolution - }); - - next(); - }) - .done(); + expect(json._resolution).to.eql(resolver._resolution); + next(); + }) + .done(); }); - it.skip('should add the .version to the package meta if not present'); - it.skip('should emit a "warn" event if the resolution version is different than the package meta version'); + it('should add the version to the package meta if not present', function (next) { + var resolver = new GitResolver('foo'); + + resolver._resolution = { type: 'tag', version: '0.0.1', tag: '0.0.1' }; + resolver._tempDir = tempDir; + + resolver._savePkgMeta({ name: 'foo' }) + .then(function () { + return Q.nfcall(fs.readFile, path.join(tempDir, '.bower.json')); + }) + .then(function (contents) { + var json = JSON.parse(contents.toString()); + expect(json.version).to.equal('0.0.1'); + + next(); + }) + .done(); + }); + + it.skip('should warn if the resolution version is different than the package meta version'); }); describe('#fetchHeads', function () {