From 9f2c0f6b9c838add255e72c7e84164016dfa1b46 Mon Sep 17 00:00:00 2001 From: kekskurse Date: Thu, 13 Mar 2025 23:48:42 +0100 Subject: [PATCH] chore: smtp template and error handling for error@error.error --- pkg/miniauth/miniauth_test.go | 2 +- pkg/smtpclient/error.go | 5 +++++ pkg/smtpclient/smtpclient.go | 3 +-- pkg/smtpclient/smtpclient_test.go | 7 +++++++ 4 files changed, 14 insertions(+), 3 deletions(-) create mode 100644 pkg/smtpclient/error.go diff --git a/pkg/miniauth/miniauth_test.go b/pkg/miniauth/miniauth_test.go index 04eb054..472751c 100644 --- a/pkg/miniauth/miniauth_test.go +++ b/pkg/miniauth/miniauth_test.go @@ -46,7 +46,7 @@ func TestRegistration(t *testing.T) { password: "abc123d,.,jfhfh", mail: "error@error.error", exptErr: ErrCantSendMail, - exptErrString: "cant send mail: error mail send", + exptErrString: "cant send mail: cant send mail to error mail", }, { name: "success", diff --git a/pkg/smtpclient/error.go b/pkg/smtpclient/error.go new file mode 100644 index 0000000..5b04981 --- /dev/null +++ b/pkg/smtpclient/error.go @@ -0,0 +1,5 @@ +package smtpclient + +import "errors" + +var ErrCantSendMailToErrorMail = errors.New("cant send mail to error mail") diff --git a/pkg/smtpclient/smtpclient.go b/pkg/smtpclient/smtpclient.go index d966a86..1d067a4 100644 --- a/pkg/smtpclient/smtpclient.go +++ b/pkg/smtpclient/smtpclient.go @@ -3,7 +3,6 @@ package smtpclient import ( "bytes" "embed" - "errors" "fmt" "html/template" "strings" @@ -16,7 +15,7 @@ var templates embed.FS func (s SMTPClient) SendMail(templateName string, to string, data any) error { if to == "error@error.error" { - return errors.New("error mail send") + return ErrCantSendMailToErrorMail } return nil } diff --git a/pkg/smtpclient/smtpclient_test.go b/pkg/smtpclient/smtpclient_test.go index 43025c0..c3d488f 100644 --- a/pkg/smtpclient/smtpclient_test.go +++ b/pkg/smtpclient/smtpclient_test.go @@ -6,6 +6,13 @@ import ( "github.com/stretchr/testify/assert" ) +func TestSendMailToErrorAddress(t *testing.T) { + smtp := NewDummySMTPClient() + + err := smtp.SendMail("foobar", "error@error.error", nil) + assert.ErrorIs(t, ErrCantSendMailToErrorMail, err) +} + func TestRenderFile(t *testing.T) { smtp := NewDummySMTPClient() subject, err := smtp.renderFile("register.subject", nil)