diff --git a/test/server/lib/DocApi.ts b/test/server/lib/DocApi.ts index 8071dab7..cdc364e5 100644 --- a/test/server/lib/DocApi.ts +++ b/test/server/lib/DocApi.ts @@ -35,7 +35,7 @@ import {serveSomething, Serving} from 'test/server/customUtil'; import {prepareDatabase} from 'test/server/lib/helpers/PrepareDatabase'; import {prepareFilesystemDirectoryForTests} from 'test/server/lib/helpers/PrepareFilesystemDirectoryForTests'; import {signal} from 'test/server/lib/helpers/Signal'; -import {TestServer, TestServerProxy} from 'test/server/lib/helpers/TestServer'; +import {TestServer, TestServerReverseProxy} from 'test/server/lib/helpers/TestServer'; import * as testUtils from 'test/server/testUtils'; import {waitForIt} from 'test/server/wait'; import defaultsDeep = require('lodash/defaultsDeep'); @@ -155,8 +155,8 @@ describe('DocApi', function () { testDocApi(); }); - describe("should work behind a proxy", async () => { - let proxy: TestServerProxy; + describe("should work behind a reverse-proxy", async () => { + let proxy: TestServerReverseProxy; const originalHeaders = new WeakMap(); function iterateOverAccountHeaders ( @@ -169,7 +169,7 @@ describe('DocApi', function () { } } setup('behind-proxy', async () => { - proxy = new TestServerProxy(); + proxy = new TestServerReverseProxy(); const additionalEnvConfiguration = { ALLOWED_WEBHOOK_DOMAINS: `example.com,localhost:${webhooksTestPort}`, GRIST_DATA_DIR: dataDir, diff --git a/test/server/lib/helpers/TestProxyServer.ts b/test/server/lib/helpers/TestProxyServer.ts index d5d171dc..e255d5e3 100644 --- a/test/server/lib/helpers/TestProxyServer.ts +++ b/test/server/lib/helpers/TestProxyServer.ts @@ -7,7 +7,6 @@ export class TestProxyServer { const server = new TestProxyServer(); await server._prepare(portNumber); return server; - } private _proxyCallsCounter: number = 0; @@ -38,7 +37,6 @@ export class TestProxyServer { } res.sendStatus(responseCode); res.end(); - //next(); }); }, portNumber); } diff --git a/test/server/lib/helpers/TestServer.ts b/test/server/lib/helpers/TestServer.ts index 3af99b2b..5b86cf90 100644 --- a/test/server/lib/helpers/TestServer.ts +++ b/test/server/lib/helpers/TestServer.ts @@ -197,8 +197,7 @@ export class TestServer { } } -// FIXME: found that TestProxyServer exist, what should I do? :'( -export class TestServerProxy { +export class TestServerReverseProxy { // Use a different hostname for the proxy than the doc and home workers' // so we can ensure that either we omit the Origin header (so the internal calls to home and doc workers @@ -206,12 +205,11 @@ export class TestServerProxy { // https://github.com/gristlabs/grist-core/blob/24b39c651b9590cc360cc91b587d3e1b301a9c63/app/server/lib/requestUtils.ts#L85-L98 public static readonly HOSTNAME: string = 'grist-test-proxy.127.0.0.1.nip.io'; - private _stopped: boolean = false; private _app = express(); private _server: http.Server; private _address: Promise; - public get stopped() { return this._stopped; } + public get stopped() { return !this._server.listening; } public constructor() { this._address = new Promise(resolve => { @@ -236,15 +234,14 @@ export class TestServerProxy { public async getServerUrl() { const address = await this.getAddress(); - return `http://${TestServerProxy.HOSTNAME}:${address.port}`; + return `http://${TestServerReverseProxy.HOSTNAME}:${address.port}`; } public stop() { - if (this._stopped) { + if (this.stopped) { return; } log.info("Stopping node TestServerProxy"); - this._stopped = true; this._server.close(); }