fix tests

This commit is contained in:
Girish Ramakrishnan
2021-06-03 12:20:44 -07:00
parent c90a9e43cf
commit 8da4eaf4a3
27 changed files with 474 additions and 739 deletions

View File

@@ -5,45 +5,20 @@
'use strict';
const async = require('async'),
blobs = require('../blobs.js'),
database = require('../database.js'),
const common = require('./common.js'),
domains = require('../domains.js'),
expect = require('expect.js'),
reverseProxy = require('../reverseproxy.js'),
settings = require('../settings.js');
fs = require('fs'),
paths = require('../paths.js'),
reverseProxy = require('../reverseproxy.js');
const DOMAIN_0 = {
domain: 'example-reverseproxy-test.com',
zoneName: 'example-reverseproxy-test.com',
provider: 'noop',
config: {},
fallbackCertificate: null,
tlsConfig: { provider: 'fallback' },
wellKnown: null
};
let AUDIT_SOURCE = { ip: '1.2.3.4' };
function setup(done) {
async.series([
database.initialize,
database._clear,
blobs.initSecrets,
settings.setDashboardLocation.bind(null, DOMAIN_0.domain, 'my.' + DOMAIN_0.domain),
domains.add.bind(null, DOMAIN_0.domain, DOMAIN_0, AUDIT_SOURCE),
settings.initCache
], done);
}
function cleanup(done) {
async.series([
database._clear,
database.uninitialize
], done);
}
const { DOMAIN, AUDIT_SOURCE, APP } = common;
const DOMAIN_0 = Object.assign({}, DOMAIN);
describe('Certificates', function () {
before(common.setup);
after(common.cleanup);
describe('validateCertificate', function () {
let foobarDomain = {
domain: 'foobar.com',
@@ -169,14 +144,9 @@ describe('Certificates', function () {
before(function (done) {
DOMAIN_0.tlsConfig = { provider: 'letsencrypt-prod' };
async.series([
setup,
domains.update.bind(null, DOMAIN_0.domain, DOMAIN_0, AUDIT_SOURCE)
], done);
domains.update(DOMAIN_0.domain, DOMAIN_0, AUDIT_SOURCE, done);
});
after(cleanup);
it('returns prod acme in prod cloudron', function (done) {
reverseProxy._getAcmeApi(DOMAIN_0, function (error, api, options) {
expect(error).to.be(null);
@@ -200,14 +170,9 @@ describe('Certificates', function () {
before(function (done) {
DOMAIN_0.tlsConfig = { provider: 'letsencrypt-staging' };
async.series([
setup,
domains.update.bind(null, DOMAIN_0.domain, DOMAIN_0, AUDIT_SOURCE)
], done);
domains.update(DOMAIN_0.domain, DOMAIN_0, AUDIT_SOURCE, done);
});
after(cleanup);
it('returns staging acme in prod cloudron', function (done) {
reverseProxy._getAcmeApi(DOMAIN_0, function (error, api, options) {
expect(error).to.be(null);
@@ -226,4 +191,22 @@ describe('Certificates', function () {
});
});
});
describe('configureApp', function () {
it('configure nginx correctly', function (done) {
reverseProxy.configureApp(APP, AUDIT_SOURCE, function (error) {
expect(fs.existsSync(paths.NGINX_APPCONFIG_DIR + '/' + APP.id + '.conf'));
expect(error).to.be(null);
done();
});
});
it('unconfigure nginx', function (done) {
reverseProxy.unconfigureApp(APP, function (error) {
expect(!fs.existsSync(paths.NGINX_APPCONFIG_DIR + '/' + APP.id + '.conf'));
expect(error).to.be(null);
done();
});
});
});
});