diff --git a/src/mail.js b/src/mail.js index ff3ce54de..2439f2b0f 100644 --- a/src/mail.js +++ b/src/mail.js @@ -1122,7 +1122,7 @@ async function sendTestMail(domain, to) { const result = await getDomain(domain); if (!result) throw new BoxError(BoxError.NOT_FOUND, 'mail domain not found'); - await mailer.sendTestMail(result.domain); + await mailer.sendTestMail(result.domain, to); } async function listMailboxes(domain, search, page, perPage) { diff --git a/src/mailer.js b/src/mailer.js index 0632fe19a..69be6d9be 100644 --- a/src/mailer.js +++ b/src/mailer.js @@ -61,7 +61,7 @@ async function sendMail(mailOptions) { } })); - const transportSendMail = util.promisify(transport.sendMail); + const transportSendMail = util.promisify(transport.sendMail).bind(transport); const [error] = await safe(transportSendMail(mailOptions)); if (error) throw new BoxError(BoxError.EXTERNAL_ERROR, error); debug(`Email "${mailOptions.subject}" sent to ${mailOptions.to}`); @@ -210,10 +210,9 @@ async function certificateRenewalError(mailTo, domain, message) { await sendMail(mailOptions); } -async function sendTestMail(domain, email, callback) { +async function sendTestMail(domain, email) { assert.strictEqual(typeof domain, 'string'); assert.strictEqual(typeof email, 'string'); - assert.strictEqual(typeof callback, 'function'); const mailConfig = await getMailConfig(); @@ -225,5 +224,5 @@ async function sendTestMail(domain, email, callback) { text: render('test.ejs', { cloudronName: mailConfig.cloudronName, format: 'text'}) }; - await sendMail(mailOptions, callback); + await sendMail(mailOptions); }