mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-05-21 17:24:10 +00:00
Make log mailer for testing (#5893)
* Create log mailer for testing email settings Signed-off-by: Andrew Thornton <art27@cantab.net> * Switch on the log mailer for the integration tests This ensures that the sending mail process works Signed-off-by: Andrew Thornton <art27@cantab.net> * rename the from user for mysql/mssql * rename log sender to dummy sender * update the integration tests
This commit is contained in:
parent
67567eff0e
commit
3d91bb2f2d
8 changed files with 60 additions and 12 deletions
|
@ -6,6 +6,7 @@
|
|||
package mailer
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"crypto/tls"
|
||||
"fmt"
|
||||
"io"
|
||||
|
@ -237,6 +238,20 @@ func (s *sendmailSender) Send(from string, to []string, msg io.WriterTo) error {
|
|||
}
|
||||
}
|
||||
|
||||
// Sender sendmail mail sender
|
||||
type dummySender struct {
|
||||
}
|
||||
|
||||
// Send send email
|
||||
func (s *dummySender) Send(from string, to []string, msg io.WriterTo) error {
|
||||
buf := bytes.Buffer{}
|
||||
if _, err := msg.WriteTo(&buf); err != nil {
|
||||
return err
|
||||
}
|
||||
log.Info("Mail From: %s To: %v Body: %s", from, to, buf.String())
|
||||
return nil
|
||||
}
|
||||
|
||||
func processMailQueue() {
|
||||
for {
|
||||
select {
|
||||
|
@ -265,10 +280,13 @@ func NewContext() {
|
|||
return
|
||||
}
|
||||
|
||||
if setting.MailService.UseSendmail {
|
||||
Sender = &sendmailSender{}
|
||||
} else {
|
||||
switch setting.MailService.MailerType {
|
||||
case "smtp":
|
||||
Sender = &smtpSender{}
|
||||
case "sendmail":
|
||||
Sender = &sendmailSender{}
|
||||
case "dummy":
|
||||
Sender = &dummySender{}
|
||||
}
|
||||
|
||||
mailQueue = make(chan *Message, setting.MailService.QueueLength)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue