From 68cf098e9c66e28dc1c9ae0a43a4169dba194f07 Mon Sep 17 00:00:00 2001 From: Ryan O'Hara-Reid Date: Mon, 10 Apr 2017 14:18:48 +1000 Subject: [PATCH] Add Exchange Tests --- exchanges/exchange_test.go | 86 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 exchanges/exchange_test.go diff --git a/exchanges/exchange_test.go b/exchanges/exchange_test.go new file mode 100644 index 00000000..119f5a9c --- /dev/null +++ b/exchanges/exchange_test.go @@ -0,0 +1,86 @@ +package exchange + +import ( + "testing" + + "github.com/thrasher-/gocryptotrader/config" +) + +func TestGetName(t *testing.T) { + GetName := ExchangeBase{ + Name: "TESTNAME", + } + + name := GetName.GetName() + if name != "TESTNAME" { + t.Error("Test Failed - Exchange getName() returned incorrect name") + } +} + +func TestGetEnabledCurrencies(t *testing.T) { + enabledPairs := []string{"BTCUSD", "BTCAUD", "LTCUSD", "LTCAUD"} + GetEnabledCurrencies := ExchangeBase{ + Name: "TESTNAME", + EnabledPairs: enabledPairs, + } + + enCurr := GetEnabledCurrencies.GetEnabledCurrencies() + if enCurr[0] != "BTCUSD" { + t.Error("Test Failed - Exchange GetEnabledCurrencies() incorrect string") + } +} + +func TestSetEnabled(t *testing.T) { + GetEnabledCurrencies := ExchangeBase{ + Name: "TESTNAME", + Enabled: false, + } + + GetEnabledCurrencies.SetEnabled(true) + if !GetEnabledCurrencies.Enabled { + t.Error("Test Failed - Exchange SetEnabled(true) did not set boolean") + } +} + +func TestIsEnabled(t *testing.T) { + GetEnabledCurrencies := ExchangeBase{ + Name: "TESTNAME", + Enabled: false, + } + + if GetEnabledCurrencies.IsEnabled() { + t.Error("Test Failed - Exchange IsEnabled() did not return correct boolean") + } +} + +func TestSetAPIKeys(t *testing.T) { + SetAPIKeys := ExchangeBase{ + Name: "TESTNAME", + Enabled: false, + } + + SetAPIKeys.SetAPIKeys("RocketMan", "Digereedoo", "007", false) + + if SetAPIKeys.APIKey != "RocketMan" && SetAPIKeys.APISecret != "Digereedoo" && SetAPIKeys.ClientID != "007" { + t.Error("Test Failed - Exchange SetAPIKeys() did not set correct values") + } + +} + +func TestUpdateAvailableCurrencies(t *testing.T) { + cfg := config.GetConfig() + err := cfg.LoadConfig("../testdata/configtest.dat") + if err != nil { + t.Log("SOMETHING DONE HAPPENED!") + } + + UAC := ExchangeBase{ + Name: "ANX", + } + exchangeProducts := []string{"ltc", "btc", "usd", "aud"} + + err2 := UAC.UpdateAvailableCurrencies(exchangeProducts) + if err2 != nil { + t.Errorf("Test Failed - Exchange UpdateAvailableCurrencies() error: %s", err2) + } +}