mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
* PLT-5860 Updated copyright date in about modal * PLT-5860 Updated copyright notice in JSX files * PLT-5860 Updated copyright notice in go files * Fixed misc copyright dates * Fixed component snapshots
74 lines
1.9 KiB
Go
74 lines
1.9 KiB
Go
// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
|
|
// See License.txt for license information.
|
|
|
|
package utils
|
|
|
|
import (
|
|
"strings"
|
|
"testing"
|
|
)
|
|
|
|
func TestMailConnection(t *testing.T) {
|
|
LoadConfig("config.json")
|
|
|
|
if conn, err := connectToSMTPServer(Cfg); err != nil {
|
|
t.Log(err)
|
|
t.Fatal("Should connect to the STMP Server")
|
|
} else {
|
|
if _, err1 := newSMTPClient(conn, Cfg); err1 != nil {
|
|
t.Log(err)
|
|
t.Fatal("Should get new smtp client")
|
|
}
|
|
}
|
|
|
|
Cfg.EmailSettings.SMTPServer = "wrongServer"
|
|
Cfg.EmailSettings.SMTPPort = "553"
|
|
|
|
if _, err := connectToSMTPServer(Cfg); err == nil {
|
|
t.Log(err)
|
|
t.Fatal("Should not to the STMP Server")
|
|
}
|
|
|
|
}
|
|
|
|
func TestSendMail(t *testing.T) {
|
|
LoadConfig("config.json")
|
|
T = GetUserTranslations("en")
|
|
|
|
var emailTo string = "test@example.com"
|
|
var emailSubject string = "Testing this email"
|
|
var emailBody string = "This is a test from autobot"
|
|
|
|
//Delete all the messages before check the sample email
|
|
DeleteMailBox(emailTo)
|
|
|
|
if err := SendMail(emailTo, emailSubject, emailBody); err != nil {
|
|
t.Log(err)
|
|
t.Fatal("Should connect to the STMP Server")
|
|
} else {
|
|
//Check if the email was send to the rigth email address
|
|
var resultsMailbox JSONMessageHeaderInbucket
|
|
err := RetryInbucket(5, func() error {
|
|
var err error
|
|
resultsMailbox, err = GetMailBox(emailTo)
|
|
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], emailTo) {
|
|
t.Fatal("Wrong To recipient")
|
|
} else {
|
|
if resultsEmail, err := GetMessageFromMailbox(emailTo, resultsMailbox[0].ID); err == nil {
|
|
if !strings.Contains(resultsEmail.Body.Text, emailBody) {
|
|
t.Log(resultsEmail.Body.Text)
|
|
t.Fatal("Received message")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|