From a2d959d5ee2a9103ead696e21367468ec2412c94 Mon Sep 17 00:00:00 2001 From: Luke Childs Date: Sun, 4 Jun 2017 11:40:52 +0700 Subject: [PATCH] Don't use getters --- src/index.js | 28 ++++++++++------------------ 1 file changed, 10 insertions(+), 18 deletions(-) diff --git a/src/index.js b/src/index.js index bd63dbb..405313e 100644 --- a/src/index.js +++ b/src/index.js @@ -10,34 +10,26 @@ const createCert = require('create-cert'); const createTestServer = opts => createCert(opts && opts.certificate) .then(cert => { const app = express(); - app.caCert = cert.caKeys.cert; - Object.defineProperty(app, 'url', { - get: () => typeof app.port === 'undefined' ? undefined : `http://localhost:${app.port}` - }); - Object.defineProperty(app, 'sslUrl', { - get: () => typeof app.sslPort === 'undefined' ? undefined : `https://localhost:${app.sslPort}` - }); - const server = http.createServer(app); const sslServer = https.createServer(cert.keys, app); + app.caCert = cert.caKeys.cert; + app.listen = () => Promise.all([ - getPort().then(port => { - app.port = port; - return pify(server.listen.bind(server))(port); - }), - getPort().then(sslPort => { - app.sslPort = sslPort; - return pify(sslServer.listen.bind(sslServer))(sslPort); - }) + getPort().then(port => pify(server.listen.bind(server))(port).then(() => { + app.url = `http://localhost:${port}`; + })), + getPort().then(sslPort => pify(sslServer.listen.bind(sslServer))(sslPort).then(() => { + app.sslUrl = `https://localhost:${sslPort}`; + })) ]); app.close = () => Promise.all([ pify(server.close.bind(server))().then(() => { - app.port = undefined; + app.url = undefined; }), pify(sslServer.close.bind(sslServer))().then(() => { - app.sslPort = undefined; + app.sslUrl = undefined; }) ]);