mirror of
https://github.com/d0zingcat/gocryptotrader.git
synced 2026-06-03 15:10:49 +00:00
accounts: Move to instance methods, fix races and isolate tests (#1923)
* Bybit: Fix race in TestUpdateAccountInfo and TestWSHandleData * DriveBy rename TestWSHandleData * This doesn't address running with -race=2+ due to the singleton * Accounts: Add account.GetService() * exchange: Assertify TestSetupDefaults * Exchanges: Add account.Service override for testing * Exchanges: Remove duplicate IsWebsocketEnabled test from TestSetupDefaults * Dispatch: Replace nil checks with NilGuard * Engine: Remove deprecated printAccountHoldingsChangeSummary * Dispatcher: Add EnsureRunning method * Accounts: Move singleton accounts service to exchange Accounts * Move singleton accounts service to exchange Accounts This maintains the concept of a global store, whilst allowing exchanges to override it when needed, particularly for testing. APIServer: * Remove getAllActiveAccounts from apiserver Deprecated apiserver only thing using this, so remove it instead of updating it * Update comment for UpdateAccountBalances everywhere * Docs: Add punctuation to function comments * Bybit: Coverage for wsProcessWalletPushData Save
This commit is contained in:
@@ -639,19 +639,17 @@ func TestCancelAllExchangeOrders(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestUpdateAccountInfo(t *testing.T) {
|
||||
func TestUpdateAccountBalances(t *testing.T) {
|
||||
t.Parallel()
|
||||
if sharedtestvalues.AreAPICredentialsSet(e) {
|
||||
_, err := e.UpdateAccountInfo(t.Context(), asset.Spot)
|
||||
_, err := e.UpdateAccountBalances(t.Context(), asset.Spot)
|
||||
require.NoError(t, err)
|
||||
|
||||
_, err = e.UpdateAccountInfo(t.Context(), asset.Futures)
|
||||
_, err = e.UpdateAccountBalances(t.Context(), asset.Futures)
|
||||
require.NoError(t, err)
|
||||
} else {
|
||||
_, err := e.UpdateAccountInfo(t.Context(), asset.Spot)
|
||||
_, err := e.UpdateAccountBalances(t.Context(), asset.Spot)
|
||||
require.Error(t, err)
|
||||
|
||||
_, err = e.UpdateAccountInfo(t.Context(), asset.Futures)
|
||||
_, err = e.UpdateAccountBalances(t.Context(), asset.Futures)
|
||||
require.Error(t, err)
|
||||
}
|
||||
}
|
||||
@@ -973,13 +971,13 @@ func TestUpdateTickers(t *testing.T) {
|
||||
|
||||
func TestNormalizeWalletInfo(t *testing.T) {
|
||||
w := &WalletInfo{
|
||||
Currency: "XBt",
|
||||
Currency: xbtCurr,
|
||||
Amount: 1e+08,
|
||||
}
|
||||
|
||||
normalizeWalletInfo(w)
|
||||
|
||||
assert.Equal(t, "BTC", w.Currency, "Currency should be correct")
|
||||
assert.Equal(t, currency.BTC, w.Currency, "Currency should be correct")
|
||||
assert.Equal(t, 1.0, w.Amount, "Amount should be correct")
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user