Config overwrite bugfix (#363)

* Fix bug where on parsing an alternate new config it will overwrite main config.json in gct dir

* Stop movement of config.json file from root dir when a new config is parsed in

* Stop overiding config.json at gct dir with new config.json from root directory

* RM LN :D

* Fix bug where promptforconfig in config_encryption.go overwrites default config
Ensure periphery command packages do not interact or save over configuration
Ensure tests to not save over or change current testdata/config
This commit is contained in:
Ryan O'Hara-Reid
2019-09-27 16:03:41 +10:00
committed by Adrian Gallagher
parent 6bdbe236c0
commit e2d57540a6
55 changed files with 408 additions and 173 deletions

View File

@@ -17,7 +17,10 @@ var mockTests = false
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatalf("Test Failed - ANX Setup() load config error: %s", err)
}
anxConfig, err := cfg.GetExchangeConfig("ANX")
if err != nil {
log.Fatalf("Test Failed - ANX Setup() init error: %s", err)
@@ -26,7 +29,10 @@ func TestMain(m *testing.M) {
anxConfig.API.Credentials.Key = apiKey
anxConfig.API.Credentials.Secret = apiSecret
a.SetDefaults()
a.Setup(anxConfig)
err = a.Setup(anxConfig)
if err != nil {
log.Fatal("Test Failed - ANX setup error", err)
}
log.Printf(sharedtestvalues.LiveTesting, a.GetName(), a.API.Endpoints.URL)
os.Exit(m.Run())
}

View File

@@ -20,7 +20,10 @@ var mockTests = true
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - ANX load config error", err)
}
anxConfig, err := cfg.GetExchangeConfig("ANX")
if err != nil {
log.Fatal("Test Failed - Mock server error", err)
@@ -30,7 +33,10 @@ func TestMain(m *testing.M) {
anxConfig.API.Credentials.Key = apiKey
anxConfig.API.Credentials.Secret = apiSecret
a.SetDefaults()
a.Setup(anxConfig)
err = a.Setup(anxConfig)
if err != nil {
log.Fatal("Test Failed - ANX setup error", err)
}
serverDetails, newClient, err := mock.NewVCRServer(mockFile)
if err != nil {

View File

@@ -17,7 +17,10 @@ var mockTests = false
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Binance load config error", err)
}
binanceConfig, err := cfg.GetExchangeConfig("Binance")
if err != nil {
log.Fatal("Test Failed - Binance Setup() init error", err)
@@ -26,7 +29,10 @@ func TestMain(m *testing.M) {
binanceConfig.API.Credentials.Key = apiKey
binanceConfig.API.Credentials.Secret = apiSecret
b.SetDefaults()
b.Setup(binanceConfig)
err = b.Setup(binanceConfig)
if err != nil {
log.Fatal("Test Failed - Binance setup error", err)
}
log.Printf(sharedtestvalues.LiveTesting, b.GetName(), b.API.Endpoints.URL)
os.Exit(m.Run())
}

View File

@@ -20,7 +20,10 @@ var mockTests = true
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Binance load config error", err)
}
binanceConfig, err := cfg.GetExchangeConfig("Binance")
if err != nil {
log.Fatal("Test Failed - Binance Setup() init error", err)
@@ -30,7 +33,10 @@ func TestMain(m *testing.M) {
binanceConfig.API.Credentials.Key = apiKey
binanceConfig.API.Credentials.Secret = apiSecret
b.SetDefaults()
b.Setup(binanceConfig)
err = b.Setup(binanceConfig)
if err != nil {
log.Fatal("Test Failed - Binance setup error", err)
}
serverDetails, newClient, err := mock.NewVCRServer(mockfile)
if err != nil {

View File

@@ -28,12 +28,18 @@ var b Bitfinex
func TestSetup(t *testing.T) {
b.SetDefaults()
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - Bitfinex load config error", err)
}
bfxConfig, err := cfg.GetExchangeConfig("Bitfinex")
if err != nil {
t.Error("Test Failed - Bitfinex Setup() init error")
}
b.Setup(bfxConfig)
err = b.Setup(bfxConfig)
if err != nil {
t.Fatal("Test Failed - Bitfinex setup error", err)
}
b.API.Credentials.Key = apiKey
b.API.Credentials.Secret = apiSecret
if !b.Enabled || b.API.AuthenticatedSupport ||

View File

@@ -26,7 +26,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - Bitflyer load config error", err)
}
bitflyerConfig, err := cfg.GetExchangeConfig("Bitflyer")
if err != nil {
t.Error("Test Failed - bitflyer Setup() init error")
@@ -36,7 +39,10 @@ func TestSetup(t *testing.T) {
bitflyerConfig.API.Credentials.Key = apiKey
bitflyerConfig.API.Credentials.Secret = apiSecret
b.Setup(bitflyerConfig)
err = b.Setup(bitflyerConfig)
if err != nil {
t.Fatal("Test Failed - Bitflyer setup error", err)
}
}
func TestGetLatestBlockCA(t *testing.T) {

View File

@@ -24,7 +24,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - Bithumb load config error", err)
}
bitConfig, err := cfg.GetExchangeConfig("Bithumb")
if err != nil {
t.Error("Test Failed - Bithumb Setup() init error")
@@ -34,7 +37,10 @@ func TestSetup(t *testing.T) {
bitConfig.API.Credentials.Key = apiKey
bitConfig.API.Credentials.Secret = apiSecret
b.Setup(bitConfig)
err = b.Setup(bitConfig)
if err != nil {
t.Fatal("Test Failed - Bithumb setup error", err)
}
}
func TestGetTradablePairs(t *testing.T) {

View File

@@ -30,7 +30,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - Bitmex load config error", err)
}
bitmexConfig, err := cfg.GetExchangeConfig("Bitmex")
if err != nil {
t.Error("Test Failed - Bitmex Setup() init error")
@@ -41,7 +44,10 @@ func TestSetup(t *testing.T) {
bitmexConfig.API.Credentials.Key = apiKey
bitmexConfig.API.Credentials.Secret = apiSecret
b.Setup(bitmexConfig)
err = b.Setup(bitmexConfig)
if err != nil {
t.Fatal("Test Failed - Bitmex setup error", err)
}
}
func TestStart(t *testing.T) {

View File

@@ -17,7 +17,10 @@ var mockTests = false
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Bitstamp load config error", err)
}
bitstampConfig, err := cfg.GetExchangeConfig("Bitstamp")
if err != nil {
log.Fatal("Test Failed - Bitstamp Setup() init error", err)
@@ -27,7 +30,10 @@ func TestMain(m *testing.M) {
bitstampConfig.API.Credentials.Secret = apiSecret
bitstampConfig.API.Credentials.ClientID = customerID
b.SetDefaults()
b.Setup(bitstampConfig)
err = b.Setup(bitstampConfig)
if err != nil {
log.Fatal("Test Failed - Bitstamp setup error", err)
}
log.Printf(sharedtestvalues.LiveTesting, b.GetName(), b.API.Endpoints.URL)
os.Exit(m.Run())
}

View File

@@ -20,7 +20,10 @@ var mockTests = true
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Bitstamp load config error", err)
}
bitstampConfig, err := cfg.GetExchangeConfig("Bitstamp")
if err != nil {
log.Fatal("Test Failed - Bitstamp Setup() init error", err)
@@ -31,7 +34,10 @@ func TestMain(m *testing.M) {
bitstampConfig.API.Credentials.Secret = apiSecret
bitstampConfig.API.Credentials.ClientID = customerID
b.SetDefaults()
b.Setup(bitstampConfig)
err = b.Setup(bitstampConfig)
if err != nil {
log.Fatal("Test Failed - Bitstamp setup error", err)
}
serverDetails, newClient, err := mock.NewVCRServer(mockfile)
if err != nil {

View File

@@ -27,7 +27,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - Bittrex load config error", err)
}
bConfig, err := cfg.GetExchangeConfig("Bittrex")
if err != nil {
t.Error("Test Failed - Bittrex Setup() init error")
@@ -36,7 +39,10 @@ func TestSetup(t *testing.T) {
bConfig.API.Credentials.Secret = apiSecret
bConfig.API.AuthenticatedSupport = true
b.Setup(bConfig)
err = b.Setup(bConfig)
if err != nil {
t.Fatal("Test Failed - Bittrex setup error", err)
}
if !b.IsEnabled() || !b.API.AuthenticatedSupport ||
b.Verbose || len(b.BaseCurrencies) < 1 {

View File

@@ -25,7 +25,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - BTC Markets load config error", err)
}
bConfig, err := cfg.GetExchangeConfig("BTC Markets")
if err != nil {
t.Error("Test Failed - BTC Markets Setup() init error")
@@ -34,7 +37,10 @@ func TestSetup(t *testing.T) {
bConfig.API.Credentials.Secret = apiSecret
bConfig.API.AuthenticatedSupport = true
b.Setup(bConfig)
err = b.Setup(bConfig)
if err != nil {
t.Fatal("Test Failed - BTC Markets setup error", err)
}
}
func TestGetMarkets(t *testing.T) {

View File

@@ -1,6 +1,7 @@
package btse
import (
"log"
"testing"
"github.com/thrasher-corp/gocryptotrader/common"
@@ -24,7 +25,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - BTSE load config error", err)
}
btseConfig, err := cfg.GetExchangeConfig("BTSE")
if err != nil {
t.Error("Test Failed - BTSE Setup() init error")
@@ -34,7 +38,10 @@ func TestSetup(t *testing.T) {
btseConfig.API.Credentials.Key = apiKey
btseConfig.API.Credentials.Secret = apiSecret
b.Setup(btseConfig)
err = b.Setup(btseConfig)
if err != nil {
t.Fatal("Test Failed - BTSE setup error", err)
}
}
func TestGetMarkets(t *testing.T) {

View File

@@ -30,7 +30,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - coinbasepro load config error", err)
}
gdxConfig, err := cfg.GetExchangeConfig("CoinbasePro")
if err != nil {
t.Error("Test Failed - coinbasepro Setup() init error")
@@ -40,7 +43,10 @@ func TestSetup(t *testing.T) {
gdxConfig.API.Credentials.ClientID = clientID
gdxConfig.API.AuthenticatedSupport = true
gdxConfig.API.AuthenticatedWebsocketSupport = true
c.Setup(gdxConfig)
err = c.Setup(gdxConfig)
if err != nil {
t.Fatal("Test Failed - CoinbasePro setup error", err)
}
}
func TestGetProducts(t *testing.T) {

View File

@@ -29,7 +29,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - Coinut load config error", err)
}
bConfig, err := cfg.GetExchangeConfig("COINUT")
if err != nil {
t.Error("Test Failed - Coinut Setup() init error")
@@ -39,7 +42,10 @@ func TestSetup(t *testing.T) {
bConfig.API.Credentials.Key = apiKey
bConfig.API.Credentials.ClientID = clientID
bConfig.Verbose = true
c.Setup(bConfig)
err = c.Setup(bConfig)
if err != nil {
t.Fatal("Test Failed - Coinut setup error", err)
}
if !c.IsEnabled() || !c.Verbose ||
c.Websocket.IsEnabled() || len(c.BaseCurrencies) < 1 {

View File

@@ -110,7 +110,7 @@ func TestSetClientProxyAddress(t *testing.T) {
func TestSetAutoPairDefaults(t *testing.T) {
cfg := config.GetConfig()
err := cfg.LoadConfig(config.ConfigTestFile)
err := cfg.LoadConfig(config.ConfigTestFile, true)
if err != nil {
t.Fatalf("Test failed. TestSetAutoPairDefaults failed to load config file. Error: %s", err)
}
@@ -163,7 +163,7 @@ func TestGetLastPairsUpdateTime(t *testing.T) {
func TestSetAssetTypes(t *testing.T) {
cfg := config.GetConfig()
err := cfg.LoadConfig(config.ConfigTestFile)
err := cfg.LoadConfig(config.ConfigTestFile, true)
if err != nil {
t.Fatalf("Test failed. TestSetAssetTypes failed to load config file. Error: %s", err)
}
@@ -222,7 +222,7 @@ func TestSetCurrencyPairFormat(t *testing.T) {
t.Skip()
// TO-DO
cfg := config.GetConfig()
err := cfg.LoadConfig(config.ConfigTestFile)
err := cfg.LoadConfig(config.ConfigTestFile, true)
if err != nil {
t.Fatalf("Test failed. TestSetCurrencyPairFormat failed to load config file. Error: %s", err)
}
@@ -578,7 +578,7 @@ func TestSetPairs(t *testing.T) {
t.Skip()
// TO-DO
cfg := config.GetConfig()
err := cfg.LoadConfig(config.ConfigTestFile)
err := cfg.LoadConfig(config.ConfigTestFile, true)
if err != nil {
t.Fatal("Test failed. TestSetPairs failed to load config")
}
@@ -621,7 +621,7 @@ func TestSetPairs(t *testing.T) {
func TestUpdatePairs(t *testing.T) {
cfg := config.GetConfig()
err := cfg.LoadConfig(config.ConfigTestFile)
err := cfg.LoadConfig(config.ConfigTestFile, true)
if err != nil {
t.Fatal("Test failed. TestUpdatePairs failed to load config")
}

View File

@@ -1,6 +1,7 @@
package exmo
import (
"log"
"testing"
"github.com/thrasher-corp/gocryptotrader/common"
@@ -25,13 +26,19 @@ func TestDefault(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Exmo load config error", err)
}
exmoConf, err := cfg.GetExchangeConfig("EXMO")
if err != nil {
t.Error("Test Failed - OKCoin Setup() init error")
t.Error("Test Failed - Exmo Setup() init error")
}
e.Setup(exmoConf)
err = e.Setup(exmoConf)
if err != nil {
t.Fatal("Test Failed - Exmo setup error", err)
}
e.API.AuthenticatedSupport = true
e.API.Credentials.Key = APIKey

View File

@@ -30,7 +30,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - GateIO load config error", err)
}
gateioConfig, err := cfg.GetExchangeConfig("GateIO")
if err != nil {
t.Error("Test Failed - GateIO Setup() init error")
@@ -40,7 +43,10 @@ func TestSetup(t *testing.T) {
gateioConfig.API.Credentials.Key = apiKey
gateioConfig.API.Credentials.Secret = apiSecret
g.Setup(gateioConfig)
err = g.Setup(gateioConfig)
if err != nil {
t.Fatal("Test Failed - GateIO setup error", err)
}
}
func TestGetSymbols(t *testing.T) {

View File

@@ -17,7 +17,10 @@ var mockTests = false
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Gemini load config error", err)
}
geminiConfig, err := cfg.GetExchangeConfig("Gemini")
if err != nil {
log.Fatal("Test Failed - Gemini Setup() init error", err)
@@ -26,7 +29,10 @@ func TestMain(m *testing.M) {
geminiConfig.API.Credentials.Key = apiKey
geminiConfig.API.Credentials.Secret = apiSecret
g.SetDefaults()
g.Setup(geminiConfig)
err = g.Setup(geminiConfig)
if err != nil {
log.Fatal("Test Failed - Gemini setup error", err)
}
g.API.Endpoints.URL = geminiSandboxAPIURL
log.Printf(sharedtestvalues.LiveTesting, g.GetName(), g.API.Endpoints.URL)
os.Exit(m.Run())

View File

@@ -20,7 +20,10 @@ var mockTests = true
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Gemini load config error", err)
}
geminiConfig, err := cfg.GetExchangeConfig("Gemini")
if err != nil {
log.Fatal("Test Failed - Mock server error", err)
@@ -30,7 +33,10 @@ func TestMain(m *testing.M) {
geminiConfig.API.Credentials.Key = apiKey
geminiConfig.API.Credentials.Secret = apiSecret
g.SetDefaults()
g.Setup(geminiConfig)
err = g.Setup(geminiConfig)
if err != nil {
log.Fatal("Test Failed - Gemini setup error", err)
}
serverDetails, newClient, err := mock.NewVCRServer(mockFile)
if err != nil {

View File

@@ -31,7 +31,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - HitBTC load config error", err)
}
hitbtcConfig, err := cfg.GetExchangeConfig("HitBTC")
if err != nil {
t.Error("Test Failed - HitBTC Setup() init error")
@@ -41,7 +44,10 @@ func TestSetup(t *testing.T) {
hitbtcConfig.API.Credentials.Key = apiKey
hitbtcConfig.API.Credentials.Secret = apiSecret
h.Setup(hitbtcConfig)
err = h.Setup(hitbtcConfig)
if err != nil {
t.Fatal("Test Failed - HitBTC setup error", err)
}
}
func TestGetOrderbook(t *testing.T) {

View File

@@ -6,6 +6,7 @@ import (
"crypto/x509"
"encoding/pem"
"io/ioutil"
"log"
"strconv"
"strings"
"testing"
@@ -37,7 +38,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Huobi load config error", err)
}
hConfig, err := cfg.GetExchangeConfig("Huobi")
if err != nil {
t.Error("Test Failed - Huobi Setup() init error")
@@ -47,7 +51,10 @@ func TestSetup(t *testing.T) {
hConfig.API.Credentials.Key = apiKey
hConfig.API.Credentials.Secret = apiSecret
h.Setup(hConfig)
err = h.Setup(hConfig)
if err != nil {
t.Fatal("Test Failed - Huobi setup error", err)
}
}
func setupWsTests(t *testing.T) {

View File

@@ -26,17 +26,23 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - Itbit load config error", err)
}
itbitConfig, err := cfg.GetExchangeConfig("ITBIT")
if err != nil {
t.Error("Test Failed - Gemini Setup() init error")
t.Error("Test Failed - Itbit Setup() init error")
}
itbitConfig.API.AuthenticatedSupport = true
itbitConfig.API.Credentials.Key = apiKey
itbitConfig.API.Credentials.Secret = apiSecret
itbitConfig.API.Credentials.ClientID = clientID
i.Setup(itbitConfig)
err = i.Setup(itbitConfig)
if err != nil {
t.Fatal("Test Failed - Itbit setup error", err)
}
}
func TestGetTicker(t *testing.T) {

View File

@@ -1,6 +1,7 @@
package kraken
import (
"log"
"net/http"
"testing"
@@ -31,7 +32,10 @@ func TestSetDefaults(t *testing.T) {
// TestSetup setup func
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Kraken load config error", err)
}
krakenConfig, err := cfg.GetExchangeConfig("Kraken")
if err != nil {
t.Error("Test Failed - kraken Setup() init error", err)
@@ -43,7 +47,10 @@ func TestSetup(t *testing.T) {
krakenConfig.API.Endpoints.WebsocketURL = k.API.Endpoints.WebsocketURL
subscribeToDefaultChannels = false
k.Setup(krakenConfig)
err = k.Setup(krakenConfig)
if err != nil {
t.Fatal("Test Failed - Kraken setup error", err)
}
}
// TestGetServerTime API endpoint test

View File

@@ -2,6 +2,7 @@ package lakebtc
import (
"fmt"
"log"
"testing"
"github.com/thrasher-corp/gocryptotrader/common"
@@ -32,7 +33,10 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
if !setupRan {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - LakeBTC load config error", err)
}
lakebtcConfig, err := cfg.GetExchangeConfig("LakeBTC")
if err != nil {
t.Error("Test Failed - LakeBTC Setup() init error")
@@ -41,7 +45,10 @@ func TestSetup(t *testing.T) {
lakebtcConfig.API.Credentials.Key = apiKey
lakebtcConfig.API.Credentials.Secret = apiSecret
lakebtcConfig.Features.Enabled.Websocket = true
l.Setup(lakebtcConfig)
err = l.Setup(lakebtcConfig)
if err != nil {
t.Fatal("Test Failed - LakeBTC setup error", err)
}
l.API.Endpoints.WebsocketURL = lakeBTCWSURL
setupRan = true
}

View File

@@ -32,18 +32,21 @@ func TestSetup(t *testing.T) {
}
l.SetDefaults()
cfg := config.GetConfig()
err := cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Errorf("Test Failed - Lbank Setup() init error:, %v", err)
t.Fatalf("Test Failed - Lbank Setup() init error:, %v", err)
}
lbankConfig, err := cfg.GetExchangeConfig("Lbank")
if err != nil {
t.Errorf("Test Failed - Lbank Setup() init error: %v", err)
t.Fatalf("Test Failed - Lbank Setup() init error: %v", err)
}
lbankConfig.API.AuthenticatedSupport = true
lbankConfig.API.Credentials.Secret = testAPISecret
lbankConfig.API.Credentials.Key = testAPIKey
l.Setup(lbankConfig)
err = l.Setup(lbankConfig)
if err != nil {
t.Fatal("Test Failed - LBank setup error", err)
}
setupRan = true
}

View File

@@ -17,7 +17,10 @@ var mockTests = false
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - LocalBitcoins load config error", err)
}
localbitcoinsConfig, err := cfg.GetExchangeConfig("LocalBitcoins")
if err != nil {
log.Fatal("Test Failed - LocalBitcoins Setup() init error", err)
@@ -26,7 +29,10 @@ func TestMain(m *testing.M) {
localbitcoinsConfig.API.Credentials.Key = apiKey
localbitcoinsConfig.API.Credentials.Secret = apiSecret
l.SetDefaults()
l.Setup(localbitcoinsConfig)
err = l.Setup(localbitcoinsConfig)
if err != nil {
log.Fatal("Test Failed - Localbitcoins setup error", err)
}
log.Printf(sharedtestvalues.LiveTesting, l.GetName(), l.API.Endpoints.URL)
os.Exit(m.Run())
}

View File

@@ -20,7 +20,10 @@ var mockTests = true
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Localbitcoins load config error", err)
}
localbitcoinsConfig, err := cfg.GetExchangeConfig("LocalBitcoins")
if err != nil {
log.Fatal("Test Failed - Localbitcoins Setup() init error", err)
@@ -30,7 +33,10 @@ func TestMain(m *testing.M) {
localbitcoinsConfig.API.Credentials.Key = apiKey
localbitcoinsConfig.API.Credentials.Secret = apiSecret
l.SetDefaults()
l.Setup(localbitcoinsConfig)
err = l.Setup(localbitcoinsConfig)
if err != nil {
log.Fatal("Test Failed - Localbitcoins setup error", err)
}
serverDetails, newClient, err := mock.NewVCRServer(mockfile)
if err != nil {

View File

@@ -62,7 +62,10 @@ func TestSetup(t *testing.T) {
}
o.ExchangeName = OKGroupExchange
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - Okcoin load config error", err)
}
okcoinConfig, err := cfg.GetExchangeConfig(OKGroupExchange)
if err != nil {
t.Fatalf("Test Failed - %v Setup() init error", OKGroupExchange)
@@ -77,7 +80,10 @@ func TestSetup(t *testing.T) {
okcoinConfig.API.Credentials.Secret = apiSecret
okcoinConfig.API.Credentials.ClientID = passphrase
okcoinConfig.API.Endpoints.WebsocketURL = o.API.Endpoints.WebsocketURL
o.Setup(okcoinConfig)
err = o.Setup(okcoinConfig)
if err != nil {
t.Fatal("Test Failed - OKCoin setup error", err)
}
testSetupRan = true
o.Websocket.DataHandler = sharedtestvalues.GetWebsocketInterfaceChannelOverride()
o.Websocket.TrafficAlert = sharedtestvalues.GetWebsocketStructChannelOverride()

View File

@@ -63,7 +63,10 @@ func TestSetup(t *testing.T) {
}
o.ExchangeName = OKGroupExchange
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - Okex load config error", err)
}
okexConfig, err := cfg.GetExchangeConfig(OKGroupExchange)
if err != nil {
@@ -78,7 +81,10 @@ func TestSetup(t *testing.T) {
okexConfig.API.Credentials.Secret = apiSecret
okexConfig.API.Credentials.ClientID = passphrase
okexConfig.API.Endpoints.WebsocketURL = o.API.Endpoints.WebsocketURL
o.Setup(okexConfig)
err = o.Setup(okexConfig)
if err != nil {
t.Fatal("Test Failed - Okex setup error", err)
}
testSetupRan = true
o.Websocket.DataHandler = sharedtestvalues.GetWebsocketInterfaceChannelOverride()
o.Websocket.TrafficAlert = sharedtestvalues.GetWebsocketStructChannelOverride()

View File

@@ -17,7 +17,10 @@ var mockTests = false
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Poloniex load config error", err)
}
poloniexConfig, err := cfg.GetExchangeConfig("Poloniex")
if err != nil {
log.Fatal("Test Failed - Poloniex Setup() init error", err)
@@ -26,7 +29,10 @@ func TestMain(m *testing.M) {
poloniexConfig.API.Credentials.Key = apiKey
poloniexConfig.API.Credentials.Secret = apiSecret
p.SetDefaults()
p.Setup(poloniexConfig)
err = p.Setup(poloniexConfig)
if err != nil {
log.Fatal("Test Failed - Poloniex setup error", err)
}
log.Printf(sharedtestvalues.LiveTesting, p.GetName(), p.API.Endpoints.URL)
os.Exit(m.Run())
}

View File

@@ -20,7 +20,10 @@ var mockTests = true
func TestMain(m *testing.M) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
log.Fatal("Test Failed - Poloniex load config error", err)
}
poloniexConfig, err := cfg.GetExchangeConfig("Poloniex")
if err != nil {
log.Fatal("Test Failed - Poloniex Setup() init error", err)
@@ -30,7 +33,10 @@ func TestMain(m *testing.M) {
poloniexConfig.API.Credentials.Key = apiKey
poloniexConfig.API.Credentials.Secret = apiSecret
p.SetDefaults()
p.Setup(poloniexConfig)
err = p.Setup(poloniexConfig)
if err != nil {
log.Fatal("Test Failed - Poloniex setup error", err)
}
serverDetails, newClient, err := mock.NewVCRServer(mockfile)
if err != nil {

View File

@@ -27,16 +27,22 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
yobitConfig := config.GetConfig()
yobitConfig.LoadConfig("../../testdata/configtest.json")
err := yobitConfig.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - Yobit load config error", err)
}
conf, err := yobitConfig.GetExchangeConfig("Yobit")
if err != nil {
t.Error("Test Failed - Yobit init error")
t.Fatal("Test Failed - Yobit init error", err)
}
conf.API.Credentials.Key = apiKey
conf.API.Credentials.Secret = apiSecret
conf.API.AuthenticatedSupport = true
y.Setup(conf)
err = y.Setup(conf)
if err != nil {
t.Fatal("Test Failed - Yobit setup error", err)
}
}
func TestFetchTradablePairs(t *testing.T) {

View File

@@ -29,17 +29,23 @@ func TestSetDefaults(t *testing.T) {
func TestSetup(t *testing.T) {
cfg := config.GetConfig()
cfg.LoadConfig("../../testdata/configtest.json")
err := cfg.LoadConfig("../../testdata/configtest.json", true)
if err != nil {
t.Fatal("Test Failed - ZB load config error", err)
}
zbConfig, err := cfg.GetExchangeConfig("ZB")
if err != nil {
t.Error("Test Failed - ZB Setup() init error")
t.Fatal("Test Failed - ZB Setup() init error", err)
}
zbConfig.API.AuthenticatedSupport = true
zbConfig.API.AuthenticatedWebsocketSupport = true
zbConfig.API.Credentials.Key = apiKey
zbConfig.API.Credentials.Secret = apiSecret
z.Setup(zbConfig)
err = z.Setup(zbConfig)
if err != nil {
t.Fatal("Test Failed - ZB setup error", err)
}
}
func setupWsAuth(t *testing.T) {