summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--api/admin.go5
-rw-r--r--api/admin_test.go9
-rw-r--r--i18n/en.json4
3 files changed, 16 insertions, 2 deletions
diff --git a/api/admin.go b/api/admin.go
index 52e412976..096235a65 100644
--- a/api/admin.go
+++ b/api/admin.go
@@ -184,6 +184,11 @@ func testEmail(c *Context, w http.ResponseWriter, r *http.Request) {
return
}
+ if len(utils.Cfg.EmailSettings.SMTPServer) == 0 {
+ c.Err = model.NewLocAppError("testEmail", "api.admin.test_email.missing_server", nil, utils.T("api.context.invalid_param.app_error", map[string]interface{}{"Name": "SMTPServer"}))
+ return
+ }
+
if result := <-Srv.Store.User().Get(c.Session.UserId); result.Err != nil {
c.Err = result.Err
return
diff --git a/api/admin_test.go b/api/admin_test.go
index 16ae62f7a..2b45fd30a 100644
--- a/api/admin_test.go
+++ b/api/admin_test.go
@@ -138,8 +138,13 @@ func TestEmailTest(t *testing.T) {
t.Fatal("Shouldn't have permissions")
}
- if _, err := th.SystemAdminClient.TestEmail(utils.Cfg); err != nil {
- t.Fatal(err)
+ if _, err := th.SystemAdminClient.TestEmail(utils.Cfg); err == nil {
+ t.Fatal("should have errored")
+ } else {
+ println(err.Id)
+ if err.Id != "api.admin.test_email.missing_server" {
+ t.Fatal(err)
+ }
}
}
diff --git a/i18n/en.json b/i18n/en.json
index dbdadfe7e..b0b120b4e 100644
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -84,6 +84,10 @@
"translation": "Mattermost - Testing Email Settings"
},
{
+ "id": "api.admin.test_email.missing_server",
+ "translation": "SMTP Server is required"
+ },
+ {
"id": "api.admin.upload_brand_image.array.app_error",
"translation": "Empty array under 'image' in request"
},