mirror of
https://github.com/0rangebananaspy/authelia.git
synced 2024-09-14 22:47:21 +07:00
1ab09b71d4
Sender email address can now be specified in configuration and applies to GMail notifier and SMTP notifier.
48 lines
1.4 KiB
TypeScript
48 lines
1.4 KiB
TypeScript
|
|
import { MailSenderBuilder } from "../../src/lib/notifiers/MailSenderBuilder";
|
|
import Nodemailer = require("nodemailer");
|
|
import Sinon = require("sinon");
|
|
import Assert = require("assert");
|
|
|
|
describe("test MailSenderBuilder", function() {
|
|
let createTransportStub: Sinon.SinonStub;
|
|
beforeEach(function() {
|
|
createTransportStub = Sinon.stub(Nodemailer, "createTransport");
|
|
});
|
|
|
|
afterEach(function() {
|
|
createTransportStub.restore();
|
|
});
|
|
|
|
it("should create a gmail mail sender", function() {
|
|
const mailSenderBuilder = new MailSenderBuilder(Nodemailer);
|
|
mailSenderBuilder.buildGmail({
|
|
username: "user_gmail",
|
|
password: "pass_gmail",
|
|
sender: "admin@example.com"
|
|
});
|
|
Assert.equal(createTransportStub.getCall(0).args[0].auth.user, "user_gmail");
|
|
Assert.equal(createTransportStub.getCall(0).args[0].auth.pass, "pass_gmail");
|
|
});
|
|
|
|
it("should create a smtp mail sender", function() {
|
|
const mailSenderBuilder = new MailSenderBuilder(Nodemailer);
|
|
mailSenderBuilder.buildSmtp({
|
|
host: "mail.example.com",
|
|
password: "password",
|
|
port: 25,
|
|
secure: true,
|
|
username: "user",
|
|
sender: "admin@example.com"
|
|
});
|
|
Assert.deepStrictEqual(createTransportStub.getCall(0).args[0], {
|
|
host: "mail.example.com",
|
|
auth: {
|
|
pass: "password",
|
|
user: "user"
|
|
},
|
|
port: 25,
|
|
secure: true,
|
|
});
|
|
});
|
|
}); |