summaryrefslogtreecommitdiffstats
path: root/api4
diff options
context:
space:
mode:
authorGeorge Goldberg <george@gberg.me>2018-03-19 10:53:37 +0000
committerGeorge Goldberg <george@gberg.me>2018-03-19 10:53:37 +0000
commit37f0e5e0ebc0595efe2c65ffb84fa096dc8c5493 (patch)
tree4b791b279109a10a66b62aaeeeae3d5243d2961b /api4
parentfadcdd271a68b38571b75d1d38ab023f940ac83a (diff)
parent4b675b347b5241def7807fab5e01ce9b98531815 (diff)
downloadchat-37f0e5e0ebc0595efe2c65ffb84fa096dc8c5493.tar.gz
chat-37f0e5e0ebc0595efe2c65ffb84fa096dc8c5493.tar.bz2
chat-37f0e5e0ebc0595efe2c65ffb84fa096dc8c5493.zip
Merge branch 'master' into advanced-permissions-phase-1
Diffstat (limited to 'api4')
-rw-r--r--api4/system.go4
-rw-r--r--api4/system_test.go57
2 files changed, 31 insertions, 30 deletions
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 e39486b77..6ef02cbfe 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) {
@@ -491,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),
},
}
@@ -506,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)