mirror of
https://github.com/oven-sh/bun
synced 2026-02-14 04:49:06 +00:00
use sengrid account on nodemailer test (#3517)
This commit is contained in:
@@ -2,10 +2,14 @@ import { test, expect, describe } from "bun:test";
|
||||
import { bunRun } from "harness";
|
||||
import path from "path";
|
||||
|
||||
const it = process.env.SMTP_SENDGRID_KEY && process.env.SMTP_SENDGRID_SENDER ? test : test.skip;
|
||||
describe("nodemailer", () => {
|
||||
test("basic smtp", async () => {
|
||||
it("basic smtp", async () => {
|
||||
try {
|
||||
const info = bunRun(path.join(import.meta.dir, "process-nodemailer-fixture.js"));
|
||||
const info = bunRun(path.join(import.meta.dir, "process-nodemailer-fixture.js"), {
|
||||
SMTP_SENDGRID_SENDER: process.env.SMTP_SENDGRID_SENDER as string,
|
||||
SMTP_SENDGRID_KEY: process.env.SMTP_SENDGRID_KEY as string,
|
||||
});
|
||||
expect(info.stdout).toBe("true");
|
||||
expect(info.stderr || "").toBe("");
|
||||
} catch (err: any) {
|
||||
|
||||
@@ -1,23 +1,20 @@
|
||||
import nodemailer from "nodemailer";
|
||||
const account = await nodemailer.createTestAccount();
|
||||
const nodemailer = require("nodemailer");
|
||||
const transporter = nodemailer.createTransport({
|
||||
host: account.smtp.host,
|
||||
port: account.smtp.port,
|
||||
secure: account.smtp.secure,
|
||||
host: "smtp.sendgrid.net",
|
||||
port: 587,
|
||||
secure: false,
|
||||
auth: {
|
||||
user: account.user, // generated ethereal user
|
||||
pass: account.pass, // generated ethereal password
|
||||
user: "apikey", // generated ethereal user
|
||||
pass: process.env.SMTP_SENDGRID_KEY, // generated ethereal password
|
||||
},
|
||||
});
|
||||
|
||||
// send mail with defined transport object
|
||||
let info = await transporter.sendMail({
|
||||
from: '"Fred Foo 👻" <foo@example.com>', // sender address
|
||||
to: "example@gmail.com", // list of receivers
|
||||
from: process.env.SMTP_SENDGRID_SENDER, // sender address
|
||||
to: process.env.SMTP_SENDGRID_SENDER, // list of receivers
|
||||
subject: "Hello ✔", // Subject line
|
||||
text: "Hello world?", // plain text body
|
||||
html: "<b>Hello world?</b>", // html body
|
||||
});
|
||||
const url = nodemailer.getTestMessageUrl(info);
|
||||
console.log(typeof url === "string" && url.length > 0);
|
||||
transporter.close();
|
||||
console.log(typeof info?.messageId === "string");
|
||||
|
||||
Reference in New Issue
Block a user