update email test in the driver to be able to send the config in the body (#8453)

Signed-off-by: cpanato <ctadeu@gmail.com>
Этот коммит содержится в:
Carlos Tadeu Panato Junior
2018-03-13 16:42:56 +01:00
коммит произвёл Chris
родитель 8ea26c84e7
Коммит 1b29b50330
2 изменённых файлов: 25 добавлений и 19 удалений

Просмотреть файл

@@ -262,28 +262,34 @@ func TestEmailTest(t *testing.T) {
defer th.TearDown() defer th.TearDown()
Client := th.Client Client := th.Client
SendEmailNotifications := th.App.Config().EmailSettings.SendEmailNotifications config := model.Config{
SMTPServer := th.App.Config().EmailSettings.SMTPServer EmailSettings: model.EmailSettings{
SMTPPort := th.App.Config().EmailSettings.SMTPPort SMTPServer: "",
FeedbackEmail := th.App.Config().EmailSettings.FeedbackEmail SMTPPort: "",
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 }) _, resp := Client.TestEmail(&config)
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 = "" })
_, resp := Client.TestEmail()
CheckForbiddenStatus(t, resp) CheckForbiddenStatus(t, resp)
_, resp = th.SystemAdminClient.TestEmail() _, resp = th.SystemAdminClient.TestEmail(&config)
CheckErrorMessage(t, resp, "api.admin.test_email.missing_server") CheckErrorMessage(t, resp, "api.admin.test_email.missing_server")
CheckBadRequestStatus(t, resp) 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) { func TestDatabaseRecycle(t *testing.T) {

Просмотреть файл

@@ -2098,8 +2098,8 @@ func (c *Client4) GetPing() (string, *Response) {
} }
// TestEmail will attempt to connect to the configured SMTP server. // TestEmail will attempt to connect to the configured SMTP server.
func (c *Client4) TestEmail() (bool, *Response) { func (c *Client4) TestEmail(config *Config) (bool, *Response) {
if r, err := c.DoApiPost(c.GetTestEmailRoute(), ""); err != nil { if r, err := c.DoApiPost(c.GetTestEmailRoute(), config.ToJson()); err != nil {
return false, BuildErrorResponse(r, err) return false, BuildErrorResponse(r, err)
} else { } else {
defer closeBody(r) defer closeBody(r)