@bitblit/ratchet-epsilon-common
Version:
Tiny adapter to simplify building API gateway Lambda APIS
45 lines • 1.7 kB
JavaScript
import { Logger } from '@bitblit/ratchet-common/logger/logger';
import net from 'net';
export class TestErrorServer {
port;
server;
aborted = false;
constructor(port = 9999) {
this.port = port;
}
async runServer() {
Logger.info('Starting Test Error net server on port %d', this.port);
return new Promise((_res, _rej) => {
const server = new net.Server({});
server.listen(this.port, () => {
Logger.info('Server listening for connection requests on socket localhost: %s', this.port);
});
server.on('connection', async (socket) => {
Logger.info('X: A new connection has been established.');
socket.write('Hello, client.');
socket.on('data', (chunk) => {
Logger.info('Data received from client: %s', chunk);
});
socket.on('end', () => {
Logger.info('Closing connection with the client');
});
socket.on('error', (err) => {
Logger.info('Error: %s', err);
});
});
});
}
async requestHandler(request, response) {
Logger.info('Got request %d - closing socket', request);
request.setTimeout(100);
response.end('x');
}
static async runFromCliArgs(_args) {
Logger.info('test-error-server requested (cli is %s) - starting', process?.argv);
const testServer = new TestErrorServer();
await testServer.runServer();
Logger.info('Got res server');
process.exit(0);
}
}
//# sourceMappingURL=test-error-server.js.map