From 827314c4510e5eaf203c6574ace25dfe0353de20 Mon Sep 17 00:00:00 2001 From: Girish Ramakrishnan Date: Sat, 28 Jan 2017 01:55:13 -0800 Subject: [PATCH] test update with custom domain --- test/cloudron-migrate-test.js | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/test/cloudron-migrate-test.js b/test/cloudron-migrate-test.js index 1634bdf..2868844 100644 --- a/test/cloudron-migrate-test.js +++ b/test/cloudron-migrate-test.js @@ -12,7 +12,10 @@ var AppStore = require('../appstore.js'), async = require('async'), Cloudron = require('../cloudron.js'), common = require('../common.js'), - mailer = require('../mailer.js'); + mailer = require('../mailer.js'), + request = require('superagent-sync'), + semver = require('semver'), + sleep = require('../shell.js').sleep; require('colors'); @@ -27,7 +30,16 @@ describe('Custom domain test', function () { var owner = common.getOwner(); var admin = common.getAdmin(); - var cloudron, appId, box, backupInfo; + var cloudron, appId, box, backupInfo, nextVersion; + + it('can query versions', function () { + var res = request.get('https://s3.amazonaws.com/staging-cloudron-releases/versions.json').end(); + common.verifyResponse2xx(res); + var boxVersions = Object.keys(common.stripUnreachable(res.body)).sort(semver.rcompare); + var curVersion = boxVersions[1]; + assert.strictEqual(curVersion, BOX_VERSION); + nextVersion = boxVersions[0]; + }); it('can login to the store', function () { var accessToken = appStore.getAccessToken(owner); @@ -166,6 +178,21 @@ describe('Custom domain test', function () { cloudron.checkAddons(cloudron.appFqdn(location), owner); }); + it('can update to new version', function () { + console.log('Wait for cloudron to get the update to ' + nextVersion); + cloudron.checkForUpdates(); + sleep(60 * 2); + cloudron.update(nextVersion); + }); + + it('runs the app', function () { + cloudron.waitForApp(appId); + }); + + it('can check the addons', function () { + cloudron.checkAddons(cloudron.appFqdn(location), owner); + }); + it('can uninstall app', function () { cloudron.uninstallApp(appId); });