mirror of
https://github.com/d0zingcat/gocryptotrader.git
synced 2026-05-13 23:16:45 +00:00
Telegram testing and race condition fix. (#195)
* Telegram testing and race condition fix. Improving telegram Setup test More coverage for telegram PushEvent test Adding telegram HandleMessages test Adding telegram GetUpdates test Adding telegram TestConnection test Adding telegram SendMessage test (Hopefully) completely fixed race conditions with slack testing * Adding testing to communications.go
This commit is contained in:
committed by
Adrian Gallagher
parent
d0f5f46c9d
commit
8cbe99cf2f
28
communications/communications_test.go
Normal file
28
communications/communications_test.go
Normal file
@@ -0,0 +1,28 @@
|
||||
package communications
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/thrasher-/gocryptotrader/config"
|
||||
)
|
||||
|
||||
func TestNewComm(t *testing.T) {
|
||||
var config config.CommunicationsConfig
|
||||
communications := NewComm(config)
|
||||
|
||||
if len(communications.IComm) != 0 {
|
||||
t.Errorf("Test failed, communications NewComm, expected len 0, got len %d",
|
||||
len(communications.IComm))
|
||||
}
|
||||
|
||||
config.TelegramConfig.Enabled = true
|
||||
config.SMSGlobalConfig.Enabled = true
|
||||
config.SMTPConfig.Enabled = true
|
||||
config.SlackConfig.Enabled = true
|
||||
communications = NewComm(config)
|
||||
|
||||
if len(communications.IComm) != 4 {
|
||||
t.Errorf("Test failed, communications NewComm, expected len 4, got len %d",
|
||||
len(communications.IComm))
|
||||
}
|
||||
}
|
||||
@@ -4,7 +4,6 @@ import (
|
||||
"testing"
|
||||
|
||||
"github.com/thrasher-/gocryptotrader/common"
|
||||
|
||||
"github.com/thrasher-/gocryptotrader/communications/base"
|
||||
"github.com/thrasher-/gocryptotrader/config"
|
||||
)
|
||||
@@ -104,7 +103,6 @@ func TestGetChannelsString(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestGetUsernameByID(t *testing.T) {
|
||||
t.Parallel()
|
||||
username := s.GetUsernameByID("1337")
|
||||
if len(username) != 0 {
|
||||
t.Error("test failed - slack GetUsernameByID() error")
|
||||
@@ -239,7 +237,6 @@ func TestNewConnection(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestWebsocketConnect(t *testing.T) {
|
||||
t.Parallel()
|
||||
err := s.WebsocketConnect()
|
||||
if err == nil {
|
||||
t.Error("test failed - slack WebsocketConnect() error")
|
||||
@@ -247,7 +244,6 @@ func TestWebsocketConnect(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestHandlePresenceChange(t *testing.T) {
|
||||
t.Parallel()
|
||||
var pres PresenceChange
|
||||
pres.User = "1337"
|
||||
pres.Presence = "Present"
|
||||
@@ -265,7 +261,6 @@ func TestHandlePresenceChange(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestHandleMessageResponse(t *testing.T) {
|
||||
t.Parallel()
|
||||
var data WebsocketResponse
|
||||
data.ReplyTo = 1
|
||||
|
||||
@@ -316,13 +311,11 @@ func TestHandleErrorResponse(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestHandleHelloResponse(t *testing.T) {
|
||||
t.Parallel()
|
||||
var data WebsocketResponse
|
||||
s.handleHelloResponse(data)
|
||||
}
|
||||
|
||||
func TestHandleReconnectResponse(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
err := s.handleReconnectResponse([]byte(`{"malformedjson}`))
|
||||
if err == nil {
|
||||
@@ -344,7 +337,6 @@ func TestHandleReconnectResponse(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestWebsocketSend(t *testing.T) {
|
||||
t.Parallel()
|
||||
err := s.WebsocketSend("test", "Hello World!")
|
||||
if err == nil {
|
||||
t.Error("test failed - slack WebsocketSend(), Sent message through nil websocket")
|
||||
@@ -352,7 +344,6 @@ func TestWebsocketSend(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestHandleMessage(t *testing.T) {
|
||||
t.Parallel()
|
||||
var msg Message
|
||||
|
||||
err := s.HandleMessage(msg)
|
||||
|
||||
@@ -13,18 +13,108 @@ func TestSetup(t *testing.T) {
|
||||
cfg := config.GetConfig()
|
||||
cfg.LoadConfig("../../testdata/configtest.json")
|
||||
T.Setup(cfg.GetCommunicationsConfig())
|
||||
if T.Name != "Telegram" || T.Enabled != false ||
|
||||
T.Token != "testest" || T.Verbose != false {
|
||||
t.Error("test failed - telegram Setup() error, unexpected setup values",
|
||||
T.Name, T.Enabled, T.Token, T.Verbose)
|
||||
}
|
||||
}
|
||||
|
||||
func TestConnect(t *testing.T) {
|
||||
err := T.Connect()
|
||||
if err == nil {
|
||||
t.Error("test failed - telegram Connect() error", err)
|
||||
t.Error("test failed - telegram Connect() error")
|
||||
}
|
||||
}
|
||||
|
||||
func PushEvent(t *testing.T) {
|
||||
func TestPushEvent(t *testing.T) {
|
||||
err := T.PushEvent(base.Event{})
|
||||
if err != nil {
|
||||
t.Error("test failed - telegram PushEvent() error", err)
|
||||
}
|
||||
T.AuthorisedClients = append(T.AuthorisedClients, 1337)
|
||||
err = T.PushEvent(base.Event{})
|
||||
if err.Error() != "Not Found" {
|
||||
t.Errorf("test failed - telegram PushEvent() error, expected 'Not found' got '%s'",
|
||||
err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestHandleMessages(t *testing.T) {
|
||||
t.Parallel()
|
||||
chatID := int64(1337)
|
||||
err := T.HandleMessages(cmdHelp, chatID)
|
||||
if err.Error() != "Not Found" {
|
||||
t.Errorf("test failed - telegram HandleMessages() error, expected 'Not found' got '%s'",
|
||||
err)
|
||||
}
|
||||
err = T.HandleMessages(cmdStart, chatID)
|
||||
if err.Error() != "Not Found" {
|
||||
t.Errorf("test failed - telegram HandleMessages() error, expected 'Not found' got '%s'",
|
||||
err)
|
||||
}
|
||||
err = T.HandleMessages(cmdOrders, chatID)
|
||||
if err.Error() != "Not Found" {
|
||||
t.Errorf("test failed - telegram HandleMessages() error, expected 'Not found' got '%s'",
|
||||
err)
|
||||
}
|
||||
err = T.HandleMessages(cmdStatus, chatID)
|
||||
if err.Error() != "Not Found" {
|
||||
t.Errorf("test failed - telegram HandleMessages() error, expected 'Not found' got '%s'",
|
||||
err)
|
||||
}
|
||||
err = T.HandleMessages(cmdTicker, chatID)
|
||||
if err.Error() != "Not Found" {
|
||||
t.Errorf("test failed - telegram HandleMessages() error, expected 'Not found' got '%s'",
|
||||
err)
|
||||
}
|
||||
err = T.HandleMessages(cmdSettings, chatID)
|
||||
if err.Error() != "Not Found" {
|
||||
t.Errorf("test failed - telegram HandleMessages() error, expected 'Not found' got '%s'",
|
||||
err)
|
||||
}
|
||||
err = T.HandleMessages(cmdPortfolio, chatID)
|
||||
if err.Error() != "Not Found" {
|
||||
t.Errorf("test failed - telegram HandleMessages() error, expected 'Not found' got '%s'",
|
||||
err)
|
||||
}
|
||||
err = T.HandleMessages("Not a command", chatID)
|
||||
if err.Error() != "Not Found" {
|
||||
t.Errorf("test failed - telegram HandleMessages() error, expected 'Not found' got '%s'",
|
||||
err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGetUpdates(t *testing.T) {
|
||||
t.Parallel()
|
||||
_, err := T.GetUpdates()
|
||||
if err != nil {
|
||||
t.Error("test failed - telegram GetUpdates() error", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestTestConnection(t *testing.T) {
|
||||
t.Parallel()
|
||||
err := T.TestConnection()
|
||||
if err.Error() != "Not Found" {
|
||||
t.Errorf("test failed - telegram TestConnection() error, expected 'Not found' got '%s'",
|
||||
err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestSendMessage(t *testing.T) {
|
||||
t.Parallel()
|
||||
err := T.SendMessage("Test message", int64(1337))
|
||||
if err.Error() != "Not Found" {
|
||||
t.Errorf("test failed - telegram SendMessage() error, expected 'Not found' got '%s'",
|
||||
err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestSendHTTPRequest(t *testing.T) {
|
||||
t.Parallel()
|
||||
err := T.SendHTTPRequest("0.0.0.0", nil, nil)
|
||||
if err == nil {
|
||||
t.Error("test failed - telegram SendHTTPRequest() error")
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user