From 89ada4e26ca1df8ff0dd02acda1d1661f121a294 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Tue, 8 Jan 2019 15:51:52 +0100 Subject: Fix socket.io websocket connection --- shared/utils/miscs/email.ts | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'shared/utils/miscs/email.ts') diff --git a/shared/utils/miscs/email.ts b/shared/utils/miscs/email.ts index 108f7d3d9..6fac7621f 100644 --- a/shared/utils/miscs/email.ts +++ b/shared/utils/miscs/email.ts @@ -1,22 +1,20 @@ -import * as child from 'child_process' +import { fork, ChildProcess } from 'child_process' class MockSmtpServer { private static instance: MockSmtpServer private started = false - private emailChildProcess: child.ChildProcess + private emailChildProcess: ChildProcess private emails: object[] private constructor () { - this.emailChildProcess = child.fork(`${__dirname}/email-child-process`, [], { silent: true }) + this.emailChildProcess = fork(`${__dirname}/email-child-process`, []) + this.emailChildProcess.on('message', (msg) => { if (msg.email) { return this.emails.push(msg.email) } }) - process.on('exit', () => { - this.emailChildProcess.kill() - }) } collectEmails (emailsCollection: object[]) { @@ -43,6 +41,13 @@ class MockSmtpServer { }) } + kill () { + process.kill(this.emailChildProcess.pid) + + this.emailChildProcess = null + MockSmtpServer.instance = null + } + static get Instance () { return this.instance || (this.instance = new this()) } -- cgit v1.2.3