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()
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 })
}()
config := model.Config{
EmailSettings: model.EmailSettings{
SMTPServer: "",
SMTPPort: "",
},
}
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 = "" })
_, 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) {

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

@@ -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)