summaryrefslogtreecommitdiffstats
path: root/modules/setting/mailer_test.go
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--modules/setting/mailer_test.go54
1 files changed, 54 insertions, 0 deletions
diff --git a/modules/setting/mailer_test.go b/modules/setting/mailer_test.go
new file mode 100644
index 0000000..f8af4a7
--- /dev/null
+++ b/modules/setting/mailer_test.go
@@ -0,0 +1,54 @@
+// Copyright 2022 The Gitea Authors. All rights reserved.
+// SPDX-License-Identifier: MIT
+
+package setting
+
+import (
+ "testing"
+
+ "github.com/stretchr/testify/assert"
+)
+
+func Test_loadMailerFrom(t *testing.T) {
+ kases := map[string]*Mailer{
+ "smtp.mydomain.com": {
+ SMTPAddr: "smtp.mydomain.com",
+ SMTPPort: "465",
+ },
+ "smtp.mydomain.com:123": {
+ SMTPAddr: "smtp.mydomain.com",
+ SMTPPort: "123",
+ },
+ ":123": {
+ SMTPAddr: "127.0.0.1",
+ SMTPPort: "123",
+ },
+ }
+ for host, kase := range kases {
+ t.Run(host, func(t *testing.T) {
+ cfg, _ := NewConfigProviderFromData("")
+ sec := cfg.Section("mailer")
+ sec.NewKey("ENABLED", "true")
+ sec.NewKey("HOST", host)
+
+ // Check mailer setting
+ loadMailerFrom(cfg)
+
+ assert.EqualValues(t, kase.SMTPAddr, MailService.SMTPAddr)
+ assert.EqualValues(t, kase.SMTPPort, MailService.SMTPPort)
+ })
+ }
+
+ t.Run("property aliases", func(t *testing.T) {
+ cfg, _ := NewConfigProviderFromData("")
+ sec := cfg.Section("mailer")
+ sec.NewKey("ENABLED", "true")
+ sec.NewKey("USERNAME", "jane.doe@example.com")
+ sec.NewKey("PASSWORD", "y0u'll n3v3r gUess th1S!!1")
+
+ loadMailerFrom(cfg)
+
+ assert.EqualValues(t, "jane.doe@example.com", MailService.User)
+ assert.EqualValues(t, "y0u'll n3v3r gUess th1S!!1", MailService.Passwd)
+ })
+}