From 1b29b503309cdd1f12a1b9d56b4c695a8ed84d2a Mon Sep 17 00:00:00 2001 From: Carlos Tadeu Panato Junior Date: Tue, 13 Mar 2018 16:42:56 +0100 Subject: update email test in the driver to be able to send the config in the body (#8453) Signed-off-by: cpanato --- api4/system_test.go | 40 +++++++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 17 deletions(-) (limited to 'api4') 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) { -- cgit v1.2.3-1-g7c22 From db4402c40dca7724416f1f6a38e4e256e871c302 Mon Sep 17 00:00:00 2001 From: Carlos Tadeu Panato Junior Date: Tue, 13 Mar 2018 17:26:56 +0100 Subject: remove s3 region to be mandatory and fix when user call test s3 when the config is saved (#8454) --- api4/system.go | 4 ++++ api4/system_test.go | 17 ++++------------- 2 files changed, 8 insertions(+), 13 deletions(-) (limited to 'api4') diff --git a/api4/system.go b/api4/system.go index c1541f0b5..7b63afc0b 100644 --- a/api4/system.go +++ b/api4/system.go @@ -395,6 +395,10 @@ func testS3(c *Context, w http.ResponseWriter, r *http.Request) { return } + if cfg.FileSettings.AmazonS3SecretAccessKey == model.FAKE_SETTING { + cfg.FileSettings.AmazonS3SecretAccessKey = c.App.Config().FileSettings.AmazonS3SecretAccessKey + } + license := c.App.License() backend, appErr := utils.NewFileBackend(&cfg.FileSettings, license != nil && *license.Features.Compliance) if appErr == nil { diff --git a/api4/system_test.go b/api4/system_test.go index 136c11774..6ef02cbfe 100644 --- a/api4/system_test.go +++ b/api4/system_test.go @@ -497,7 +497,7 @@ func TestS3TestConnection(t *testing.T) { AmazonS3AccessKeyId: model.MINIO_ACCESS_KEY, AmazonS3SecretAccessKey: model.MINIO_SECRET_KEY, AmazonS3Bucket: "", - AmazonS3Endpoint: "", + AmazonS3Endpoint: s3Endpoint, AmazonS3SSL: model.NewBool(false), }, } @@ -512,20 +512,11 @@ func TestS3TestConnection(t *testing.T) { } config.FileSettings.AmazonS3Bucket = model.MINIO_BUCKET + config.FileSettings.AmazonS3Region = "us-east-1" _, resp = th.SystemAdminClient.TestS3Connection(&config) - CheckBadRequestStatus(t, resp) - if resp.Error.Message != "S3 Endpoint is required" { - t.Fatal("should return error - missing s3 endpoint") - } - - config.FileSettings.AmazonS3Endpoint = s3Endpoint - _, resp = th.SystemAdminClient.TestS3Connection(&config) - CheckBadRequestStatus(t, resp) - if resp.Error.Message != "S3 Region is required" { - t.Fatal("should return error - missing s3 region") - } + CheckOKStatus(t, resp) - config.FileSettings.AmazonS3Region = "us-east-1" + config.FileSettings.AmazonS3Region = "" _, resp = th.SystemAdminClient.TestS3Connection(&config) CheckOKStatus(t, resp) -- cgit v1.2.3-1-g7c22