forked from kevadesu/forgejo
tests(services/mailer): refactor mail_admin_new_user_test
* use MockVariableValue where appropriate * split the tests in two with t.Run for clarity
This commit is contained in:
parent
45a41811de
commit
23bbec4459
3 changed files with 61 additions and 49 deletions
|
@ -4,13 +4,45 @@
|
|||
package mailer
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"code.gitea.io/gitea/models/unittest"
|
||||
"code.gitea.io/gitea/modules/setting"
|
||||
"code.gitea.io/gitea/modules/templates"
|
||||
"code.gitea.io/gitea/modules/test"
|
||||
"code.gitea.io/gitea/modules/translation"
|
||||
|
||||
_ "code.gitea.io/gitea/models/actions"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestMain(m *testing.M) {
|
||||
unittest.MainTest(m)
|
||||
}
|
||||
|
||||
func assertTranslatedLocale(t *testing.T, message string, prefixes ...string) {
|
||||
t.Helper()
|
||||
for _, prefix := range prefixes {
|
||||
assert.NotContains(t, message, prefix, "there is an untranslated locale prefix")
|
||||
}
|
||||
}
|
||||
|
||||
func mockMailSettings(send func(msgs ...*Message)) func() {
|
||||
translation.InitLocales(context.Background())
|
||||
subjectTemplates, bodyTemplates = templates.Mailer(context.Background())
|
||||
mailService := setting.Mailer{
|
||||
From: "test@gitea.com",
|
||||
}
|
||||
cleanups := []func(){
|
||||
test.MockVariableValue(&setting.MailService, &mailService),
|
||||
test.MockVariableValue(&setting.Domain, "localhost"),
|
||||
test.MockVariableValue(&SendAsync, send),
|
||||
}
|
||||
return func() {
|
||||
for _, cleanup := range cleanups {
|
||||
cleanup()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue