/* eslint-disable @typescript-eslint/no-unused-vars */ /* eslint-disable camelcase */ require('ts-node/register'); const chai_1 = require('chai'); const main_1 = require('electron/main'); const http = require('node:http'); const url = require('node:url'); const node_events_1 = require('node:events'); const promises_1 = require('node:timers/promises'); const net_helpers_1 = require('../../../lib/net-helpers'); const v8 = require('node:v8'); v8.setFlagsFromString('--expose_gc'); chai_1.use(require('chai-as-promised')); chai_1.use(require('dirty-chai')); function fail (message) { process.parentPort.postMessage({ ok: false, message }); } process.parentPort.on('message', async (e) => { // Equivalent of beforeEach in spec/api-net-spec.ts net_helpers_1.respondNTimes.routeFailure = false; try { if (e.data.args) { for (const [key, value] of Object.entries(e.data.args)) { // eslint-disable-next-line no-eval eval(`var ${key} = value;`); } } // eslint-disable-next-line no-eval await eval(e.data.fn); } catch (err) { fail(`${err}`); process.exit(1); } // Equivalent of afterEach in spec/api-net-spec.ts if (net_helpers_1.respondNTimes.routeFailure) { fail('Failing this test due an unhandled error in the respondOnce route handler, check the logs above for the actual error'); process.exit(1); } // Test passed process.parentPort.postMessage({ ok: true }); process.exit(0); });