version-service
Advanced tools
Comparing version
{ | ||
"name": "version-service", | ||
"version": "1.0.0", | ||
"version": "1.1.0", | ||
"description": "", | ||
"main": "index.js", | ||
"main": "./build/version.js", | ||
"scripts": { | ||
"test": "mocha --compilers js:babel-core/register --recursive --require ./test/test_helper.js", | ||
"test:watch": "npm run test -- --watch" | ||
"test:watch": "npm run test -- --watch", | ||
"clean": "rm -rf build && mkdir build", | ||
"prebuild": "npm run clean", | ||
"build": "babel -d ./build ./src" | ||
}, | ||
@@ -10,0 +13,0 @@ "babel": { |
@@ -36,24 +36,14 @@ import Promise from 'es6-promise'; | ||
checkVersion() { | ||
return fetch(this._url).then((response) => { | ||
getVersion() { | ||
return fetch(this._url, { cache: 'no-cache' }).then((response) => { | ||
if (response.status !== 200) { | ||
console.log('Looks like there was a problem. Status Code: ' + | ||
response.status); | ||
return; | ||
return undefined; | ||
} | ||
return response.json().then((body) => { | ||
if(body.data && body.data.version) { | ||
if(this._localVersion === body.data.version) { | ||
return { | ||
isCurrent: true | ||
} | ||
} else { | ||
return { | ||
isCurrent: false, | ||
local: this._localVersion, | ||
server: body.data.version | ||
} | ||
} | ||
return body.data.version | ||
} else { | ||
return { isCurrent: true}; | ||
return undefined; | ||
} | ||
@@ -63,7 +53,19 @@ }); | ||
console.log(error); | ||
return error; | ||
}); | ||
} | ||
checkVersion() { | ||
return this.getVersion().then((version) => { | ||
return { | ||
isCurrent: this._localVersion === version, | ||
local: this._localVersion, | ||
server: version | ||
} | ||
}); | ||
} | ||
start() { | ||
return setTimeout(() => { | ||
var timeouId = setTimeout(() => { | ||
this.checkVersion().then((version) => { | ||
@@ -74,3 +76,3 @@ if(version.isCurrent) { | ||
if(this._callback) { | ||
return this._callback(version.local, version.server); | ||
this._callback(version); | ||
} else { | ||
@@ -82,3 +84,8 @@ return; | ||
}, this._timeout) | ||
return { | ||
cancel: function() { | ||
clearTimeout(timeouId); | ||
} | ||
} | ||
} | ||
} |
import {expect} from 'chai'; | ||
import Version from '../index'; | ||
import Version from '../src/version'; | ||
import nock from 'nock'; | ||
@@ -35,3 +35,7 @@ | ||
}); | ||
return expect(myVersion.checkVersion()).to.eventually.deep.equal({ isCurrent: true}); | ||
return expect(myVersion.checkVersion()).to.eventually.deep.equal({ | ||
isCurrent: true, | ||
local: '1.0.0', | ||
server: '1.0.0' | ||
}); | ||
}); | ||
@@ -38,0 +42,0 @@ |
No README
QualityPackage does not have a README. This may indicate a failed publish or a low quality package.
Found 1 instance in 1 package
8788
65.81%7
16.67%265
70.97%1
-50%6
Infinity%