diff --git a/src/config.js b/src/config.js index 8cee8e53a..7447b6229 100644 --- a/src/config.js +++ b/src/config.js @@ -72,7 +72,6 @@ const cloudronConfigFileName = exports.CLOUDRON ? '/etc/cloudron/cloudron.conf' function saveSync() { // only save values we want to have in the cloudron.conf, see start.sh var conf = { - version: data.version, apiServerOrigin: data.apiServerOrigin, webServerOrigin: data.webServerOrigin, adminDomain: data.adminDomain, @@ -100,7 +99,6 @@ function initConfig() { data.adminDomain = ''; data.adminLocation = 'my'; data.port = 3000; - data.version = null; data.apiServerOrigin = null; data.webServerOrigin = null; data.provider = 'generic'; @@ -121,7 +119,6 @@ function initConfig() { // overrides for local testings if (exports.TEST) { - data.version = '1.1.1-test'; data.port = 5454; data.apiServerOrigin = 'http://localhost:6060'; // hock doesn't support https data.database.password = ''; @@ -210,6 +207,7 @@ function sysadminOrigin() { } function version() { + if (exports.TEST) return '3.0.0-test'; return fs.readFileSync(path.join(__dirname, '../VERSION'), 'utf8').trim(); } diff --git a/src/test/config-test.js b/src/test/config-test.js index 69f7f0bcd..1fd42e83f 100644 --- a/src/test/config-test.js +++ b/src/test/config-test.js @@ -36,12 +36,6 @@ describe('config', function () { expect(config.adminLocation()).to.equal('my'); }); - it('set saves value in file', function (done) { - config.set('version', '1.3.0'); - expect(JSON.parse(fs.readFileSync(path.join(config.baseDir(), 'cloudron.conf'))).version).to.eql('1.3.0'); - done(); - }); - it('set does not save custom values in file', function (done) { config.set('foobar', 'somevalue'); expect(JSON.parse(fs.readFileSync(path.join(config.baseDir(), 'cloudron.conf'))).foobar).to.not.be.ok(); diff --git a/src/test/server-test.js b/src/test/server-test.js index f151d4d78..44b54e8b5 100644 --- a/src/test/server-test.js +++ b/src/test/server-test.js @@ -94,7 +94,7 @@ describe('Server', function () { superagent.get(SERVER_URL + '/api/v1/cloudron/status', function (err, res) { expect(err).to.not.be.ok(); expect(res.statusCode).to.equal(200); - expect(res.body.version).to.equal('1.1.1-test'); + expect(res.body.version).to.contain('-test'); done(); }); }); diff --git a/src/test/updatechecker-test.js b/src/test/updatechecker-test.js index 666d40082..e995768d9 100644 --- a/src/test/updatechecker-test.js +++ b/src/test/updatechecker-test.js @@ -18,6 +18,7 @@ var appdb = require('../appdb.js'), nock = require('nock'), paths = require('../paths.js'), safe = require('safetydance'), + semver = require('semver'), settings = require('../settings.js'), settingsdb = require('../settingsdb.js'), updatechecker = require('../updatechecker.js'), @@ -44,6 +45,8 @@ var AUDIT_SOURCE = { ip: '1.2.3.4' }; +const UPDATE_VERSION = semver.inc(config.version(), 'major'); + function checkMails(number, done) { // mails are enqueued async setTimeout(function () { @@ -110,7 +113,7 @@ describe('updatechecker - box - manual (email)', function () { var scope = nock('http://localhost:4444') .get('/api/v1/users/uid/cloudrons/cid/boxupdate') .query({ boxVersion: config.version(), accessToken: 'token' }) - .reply(200, { version: '2.0.0', changelog: [''], sourceTarballUrl: '2.0.0.tar.gz' } ); + .reply(200, { version: UPDATE_VERSION, changelog: [''], sourceTarballUrl: 'box.tar.gz' } ); var scope2 = nock('http://localhost:4444') .get('/api/v1/users/uid/cloudrons/cid/subscription') @@ -119,8 +122,8 @@ describe('updatechecker - box - manual (email)', function () { updatechecker.checkBoxUpdates(function (error) { expect(!error).to.be.ok(); - expect(updatechecker.getUpdateInfo().box.version).to.be('2.0.0'); - expect(updatechecker.getUpdateInfo().box.sourceTarballUrl).to.be('2.0.0.tar.gz'); + expect(updatechecker.getUpdateInfo().box.version).to.be(UPDATE_VERSION); + expect(updatechecker.getUpdateInfo().box.sourceTarballUrl).to.be('box.tar.gz'); expect(scope.isDone()).to.be.ok(); expect(scope2.isDone()).to.be.ok(); @@ -134,7 +137,7 @@ describe('updatechecker - box - manual (email)', function () { var scope = nock('http://localhost:4444') .get('/api/v1/users/uid/cloudrons/cid/boxupdate') .query({ boxVersion: config.version(), accessToken: 'token' }) - .reply(404, { version: '2.0.0-pre.0', changelog: [''], sourceTarballUrl: '2.0.0-pre.0.tar.gz' } ); + .reply(404, { version: '2.0.0-pre.0', changelog: [''], sourceTarballUrl: 'box-pre.tar.gz' } ); updatechecker.checkBoxUpdates(function (error) { expect(error).to.be.ok(); @@ -171,7 +174,7 @@ describe('updatechecker - box - automatic (no email)', function () { var scope = nock('http://localhost:4444') .get('/api/v1/users/uid/cloudrons/cid/boxupdate') .query({ boxVersion: config.version(), accessToken: 'token' }) - .reply(200, { version: '2.0.0', sourceTarballUrl: '2.0.0.tar.gz' } ); + .reply(200, { version: UPDATE_VERSION, sourceTarballUrl: 'box.tar.gz' } ); var scope2 = nock('http://localhost:4444') .get('/api/v1/users/uid/cloudrons/cid/subscription') @@ -180,7 +183,7 @@ describe('updatechecker - box - automatic (no email)', function () { updatechecker.checkBoxUpdates(function (error) { expect(!error).to.be.ok(); - expect(updatechecker.getUpdateInfo().box.version).to.be('2.0.0'); + expect(updatechecker.getUpdateInfo().box.version).to.be(UPDATE_VERSION); expect(scope.isDone()).to.be.ok(); expect(scope2.isDone()).to.be.ok(); @@ -215,7 +218,7 @@ describe('updatechecker - box - automatic free (email)', function () { var scope = nock('http://localhost:4444') .get('/api/v1/users/uid/cloudrons/cid/boxupdate') .query({ boxVersion: config.version(), accessToken: 'token' }) - .reply(200, { version: '2.0.0', changelog: [''], sourceTarballUrl: '2.0.0.tar.gz' } ); + .reply(200, { version: UPDATE_VERSION, changelog: [''], sourceTarballUrl: 'box.tar.gz' } ); var scope2 = nock('http://localhost:4444') .get('/api/v1/users/uid/cloudrons/cid/subscription') @@ -224,7 +227,7 @@ describe('updatechecker - box - automatic free (email)', function () { updatechecker.checkBoxUpdates(function (error) { expect(!error).to.be.ok(); - expect(updatechecker.getUpdateInfo().box.version).to.be('2.0.0'); + expect(updatechecker.getUpdateInfo().box.version).to.be(UPDATE_VERSION); expect(scope.isDone()).to.be.ok(); expect(scope2.isDone()).to.be.ok();