summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarlos Tadeu Panato Junior <ctadeu@gmail.com>2018-03-13 16:42:56 +0100
committerChris <ccbrown112@gmail.com>2018-03-13 10:42:56 -0500
commit1b29b503309cdd1f12a1b9d56b4c695a8ed84d2a (patch)
treed5e0e374419be7cb727fa360466e73b3caa66637
parent8ea26c84e711607f11db835c95d143c525f06a46 (diff)
downloadchat-1b29b503309cdd1f12a1b9d56b4c695a8ed84d2a.tar.gz
chat-1b29b503309cdd1f12a1b9d56b4c695a8ed84d2a.tar.bz2
chat-1b29b503309cdd1f12a1b9d56b4c695a8ed84d2a.zip
update email test in the driver to be able to send the config in the body (#8453)
Signed-off-by: cpanato <ctadeu@gmail.com>
-rw-r--r--api4/system_test.go40
-rw-r--r--model/client4.go4
2 files changed, 25 insertions, 19 deletions
diff --git a/api4/system_test.go b/api4/system_test.go
index e39486b77..136c11774 100644
--- a/api4/system_test.go
+++ b/api4/system_test.go
@@ -262,28 +262,34 @@ func TestEmailTest(t *testing.T) {
defer th.TearDown()
Client := th.Client
- SendEmailNotifications := th.App.Config().EmailSettings.SendEmailNotifications
- SMTPServer := th.App.Config().EmailSettings.SMTPServer
- SMTPPort := th.App.Config().EmailSettings.SMTPPort
- FeedbackEmail := th.App.Config().EmailSettings.FeedbackEmail
- defer func() {
- th.App.UpdateConfig(func(cfg *model.Config) { cfg.EmailSettings.SendEmailNotifications = SendEmailNotifications })
- th.App.UpdateConfig(func(cfg *model.Config) { cfg.EmailSettings.SMTPServer = SMTPServer })
- th.App.UpdateConfig(func(cfg *model.Config) { cfg.EmailSettings.SMTPPort = SMTPPort })
- th.App.UpdateConfig(func(cfg *model.Config) { cfg.EmailSettings.FeedbackEmail = FeedbackEmail })
- }()
-
- th.App.UpdateConfig(func(cfg *model.Config) { cfg.EmailSettings.SendEmailNotifications = false })
- th.App.UpdateConfig(func(cfg *model.Config) { cfg.EmailSettings.SMTPServer = "" })
- th.App.UpdateConfig(func(cfg *model.Config) { cfg.EmailSettings.SMTPPort = "" })
- th.App.UpdateConfig(func(cfg *model.Config) { cfg.EmailSettings.FeedbackEmail = "" })
+ config := model.Config{
+ EmailSettings: model.EmailSettings{
+ SMTPServer: "",
+ SMTPPort: "",
+ },
+ }
- _, resp := Client.TestEmail()
+ _, resp := Client.TestEmail(&config)
CheckForbiddenStatus(t, resp)
- _, resp = th.SystemAdminClient.TestEmail()
+ _, resp = th.SystemAdminClient.TestEmail(&config)
CheckErrorMessage(t, resp, "api.admin.test_email.missing_server")
CheckBadRequestStatus(t, resp)
+
+ inbucket_host := os.Getenv("CI_HOST")
+ if inbucket_host == "" {
+ inbucket_host = "dockerhost"
+ }
+
+ inbucket_port := os.Getenv("CI_INBUCKET_PORT")
+ if inbucket_port == "" {
+ inbucket_port = "9000"
+ }
+
+ config.EmailSettings.SMTPServer = inbucket_host
+ config.EmailSettings.SMTPPort = inbucket_port
+ _, resp = th.SystemAdminClient.TestEmail(&config)
+ CheckOKStatus(t, resp)
}
func TestDatabaseRecycle(t *testing.T) {
diff --git a/model/client4.go b/model/client4.go
index 9e552d046..e7fe2bba0 100644
--- a/model/client4.go
+++ b/model/client4.go
@@ -2098,8 +2098,8 @@ func (c *Client4) GetPing() (string, *Response) {
}
// TestEmail will attempt to connect to the configured SMTP server.
-func (c *Client4) TestEmail() (bool, *Response) {
- if r, err := c.DoApiPost(c.GetTestEmailRoute(), ""); err != nil {
+func (c *Client4) TestEmail(config *Config) (bool, *Response) {
+ if r, err := c.DoApiPost(c.GetTestEmailRoute(), config.ToJson()); err != nil {
return false, BuildErrorResponse(r, err)
} else {
defer closeBody(r)