33 lines
589 B
Go
33 lines
589 B
Go
package smtpclient
|
|
|
|
import (
|
|
"net/smtp"
|
|
)
|
|
|
|
type MockSMTPInterface interface {
|
|
Auth(username string, password string)
|
|
Send(from string, to []string, subject string, body string) error
|
|
Close()
|
|
}
|
|
|
|
type MockSMTP struct {
|
|
Host string
|
|
Port int
|
|
Username string
|
|
auth smtp.Auth
|
|
}
|
|
|
|
func (s *MockSMTP) Auth(username string, password string) {
|
|
s.auth = smtp.PlainAuth("", username, password, s.Host)
|
|
}
|
|
|
|
func (s *MockSMTP) Send(from string, to []string, subject string, body string) error {
|
|
return nil
|
|
}
|
|
|
|
func (s *MockSMTP) Close() {
|
|
s.Host = ""
|
|
s.Username = ""
|
|
s.auth = nil
|
|
}
|