const ServerTestUtil = { server_: null, app_: null, setApp: function (app) { this.app_ = app }, start: async function () { this.server_ = await new Promise((resolve, reject) => { const s = this.app_.listen(PORT, (err) => { if (err) { reject(err) } }) resolve(s) }) }, kill: function () { return new Promise((resolve, _) => { if (this.server_) { this.server_.close(() => resolve()) } resolve() }) }, } const instance = ServerTestUtil module.exports = { setApp: function (app) { instance.setApp(app) return instance }, useServer: function () { return instance }, }