Files
gocryptotrader/exchanges/bybit/inverse_websocket_test.go
Gareth Kirwan 5d6755b76e linters: Exclude govet shadow check on exchange instances (#2097)
* Linters: Exclude govet shadow check on e in tests

* Linters: Remove nolint rule for new(Exchange) in tests

Replay with:
```
perl -pi -e 's{(\se\s:=\s.*?)\s*//nolint:govet // Intentional shadow.*}{$1}' **/*_test.go
```
2025-10-29 09:30:23 +11:00

59 lines
2.0 KiB
Go

package bybit
import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"github.com/thrasher-corp/gocryptotrader/exchanges/asset"
testexch "github.com/thrasher-corp/gocryptotrader/internal/testing/exchange"
)
func TestGenerateInverseDefaultSubscriptions(t *testing.T) {
t.Parallel()
e := new(Exchange)
require.NoError(t, testexch.Setup(e), "Test instance Setup must not error")
subs, err := e.GenerateInverseDefaultSubscriptions()
require.NoError(t, err, "GenerateInverseDefaultSubscriptions must not error")
assert.NotEmpty(t, subs, "Subscriptions should not be empty")
for i := range subs {
assert.Equal(t, asset.CoinMarginedFutures, subs[i].Asset, "Asset type should be CoinMarginedFutures")
}
err = e.CurrencyPairs.SetAssetEnabled(asset.CoinMarginedFutures, false)
require.NoError(t, err, "SetAssetEnabled must not error")
subs, err = e.GenerateInverseDefaultSubscriptions()
require.NoError(t, err, "GenerateInverseDefaultSubscriptions must not error")
assert.Empty(t, subs, "Subscriptions should be empty when asset is disabled")
}
func TestInverseSubscribe(t *testing.T) {
t.Parallel()
e := new(Exchange)
require.NoError(t, testexch.Setup(e), "Test instance Setup must not error")
subs, err := e.GenerateInverseDefaultSubscriptions()
require.NoError(t, err, "GenerateInverseDefaultSubscriptions must not error")
err = e.InverseSubscribe(t.Context(), &FixtureConnection{}, subs)
require.NoError(t, err, "InverseSubscribe must not error")
}
func TestInverseUnsubscribe(t *testing.T) {
t.Parallel()
e := new(Exchange)
require.NoError(t, testexch.Setup(e), "Test instance Setup must not error")
subs, err := e.GenerateInverseDefaultSubscriptions()
require.NoError(t, err, "GenerateInverseDefaultSubscriptions must not error")
err = e.InverseSubscribe(t.Context(), &FixtureConnection{}, subs)
require.NoError(t, err, "InverseSubscribe must not error")
err = e.InverseUnsubscribe(t.Context(), &FixtureConnection{}, subs)
require.NoError(t, err, "InverseUnsubscribe must not error")
}