summaryrefslogtreecommitdiffstats
path: root/api4/team_test.go
diff options
context:
space:
mode:
authorCarlos Tadeu Panato Junior <ctadeu@gmail.com>2017-04-04 03:32:09 +0200
committerJoram Wilander <jwawilander@gmail.com>2017-04-03 21:32:09 -0400
commit9dce50281471f356a63544680907cbd7346e7dc2 (patch)
tree501a65edceb36f3883a9b29f274ffd7220763b3c /api4/team_test.go
parentd5f56e678ac2aebd65e06ee3a079850013eb0ba2 (diff)
downloadchat-9dce50281471f356a63544680907cbd7346e7dc2.tar.gz
chat-9dce50281471f356a63544680907cbd7346e7dc2.tar.bz2
chat-9dce50281471f356a63544680907cbd7346e7dc2.zip
Implement POST /teams/{team_id}/invite/email for apiV4 (#5944)
Diffstat (limited to 'api4/team_test.go')
-rw-r--r--api4/team_test.go48
1 files changed, 48 insertions, 0 deletions
diff --git a/api4/team_test.go b/api4/team_test.go
index f145515aa..b58a4dc72 100644
--- a/api4/team_test.go
+++ b/api4/team_test.go
@@ -1372,3 +1372,51 @@ func TestImportTeam(t *testing.T) {
CheckForbiddenStatus(t, resp)
})
}
+
+func TestInviteUsersToTeam(t *testing.T) {
+ th := Setup().InitBasic().InitSystemAdmin()
+ defer TearDown()
+
+ user1 := GenerateTestEmail()
+ user2 := GenerateTestEmail()
+
+ emailList := []string{user1, user2}
+
+ //Delete all the messages before check the sample email
+ utils.DeleteMailBox(user1)
+ utils.DeleteMailBox(user2)
+
+ okMsg, resp := th.SystemAdminClient.InviteUsersToTeam(th.BasicTeam.Id, emailList)
+ CheckNoError(t, resp)
+ if okMsg != true {
+ t.Fatal("should return true")
+ }
+
+ expectedSubject := "[Mattermost] " + th.SystemAdminUser.GetDisplayName() + " invited you to join " + th.BasicTeam.DisplayName + " Team"
+ //Check if the email was send to the rigth email address
+ for _, email := range emailList {
+ var resultsMailbox utils.JSONMessageHeaderInbucket
+ err := utils.RetryInbucket(5, func() error {
+ var err error
+ resultsMailbox, err = utils.GetMailBox(email)
+ return err
+ })
+ if err != nil {
+ t.Log(err)
+ t.Log("No email was received, maybe due load on the server. Disabling this verification")
+ }
+ if err == nil && len(resultsMailbox) > 0 {
+ if !strings.ContainsAny(resultsMailbox[0].To[0], email) {
+ t.Fatal("Wrong To recipient")
+ } else {
+ if resultsEmail, err := utils.GetMessageFromMailbox(email, resultsMailbox[0].ID); err == nil {
+ if resultsEmail.Subject != expectedSubject {
+ t.Log(resultsEmail.Subject)
+ t.Log(expectedSubject)
+ t.Fatal("Wrong Subject")
+ }
+ }
+ }
+ }
+ }
+}