1
0
mirror of https://github.com/pocketbase/pocketbase.git synced 2025-11-25 07:34:10 +02:00

synced with master

This commit is contained in:
Gani Georgiev
2023-12-29 23:31:54 +02:00
parent 705d7f48e7
commit 422eb30797
44 changed files with 5069 additions and 5004 deletions

View File

@@ -38,18 +38,21 @@ type TestApp struct {
func (t *TestApp) Cleanup() {
t.ResetEventCalls()
t.ResetBootstrapState()
t.TestMailer.Reset()
if t.DataDir() != "" {
os.RemoveAll(t.DataDir())
}
}
// NewMailClient initializes test app mail client.
// NewMailClient initializes (if not already) a test app mail client.
func (t *TestApp) NewMailClient() mailer.Mailer {
t.mux.Lock()
defer t.mux.Unlock()
t.TestMailer.Reset()
if t.TestMailer == nil {
t.TestMailer = &TestMailer{}
}
return t.TestMailer
}

View File

@@ -10,18 +10,23 @@ var _ mailer.Mailer = (*TestMailer)(nil)
type TestMailer struct {
TotalSend int
LastMessage mailer.Message
// @todo consider deprecating the above 2 fields?
SentMessages []mailer.Message
}
// Reset clears any previously test collected data.
func (m *TestMailer) Reset() {
m.TotalSend = 0
m.LastMessage = mailer.Message{}
m.SentMessages = nil
}
// Send implements `mailer.Mailer` interface.
func (c *TestMailer) Send(m *mailer.Message) error {
c.TotalSend++
c.LastMessage = *m
c.SentMessages = append(c.SentMessages, c.LastMessage)
return nil
}