exchange/wrapper: add GetServerTime() for exchange analytics (#938)

* exchange/wrapper: add GetServerTime() for exchange analytics

* binance: fix linter issue

* glorious: nits

* glorious: nits rides again

* thrasher: nits implement huobi

* thrasher: nits add to exchange_wrapper_issues cmd
This commit is contained in:
Ryan O'Hara-Reid
2022-05-06 11:38:59 +10:00
committed by GitHub
parent c6ad429827
commit d735effc8e
24 changed files with 230 additions and 28 deletions

View File

@@ -37,8 +37,8 @@ type Kraken struct {
wsRequestMtx sync.Mutex
}
// GetServerTime returns current server time
func (k *Kraken) GetServerTime(ctx context.Context) (TimeResponse, error) {
// GetCurrentServerTime returns current server time
func (k *Kraken) GetCurrentServerTime(ctx context.Context) (TimeResponse, error) {
path := fmt.Sprintf("/%s/public/%s", krakenAPIVersion, krakenServerTime)
var response struct {

View File

@@ -75,11 +75,23 @@ func TestStart(t *testing.T) {
testWg.Wait()
}
func TestGetServerTime(t *testing.T) {
func TestGetCurrentServerTime(t *testing.T) {
t.Parallel()
_, err := k.GetServerTime(context.Background())
_, err := k.GetCurrentServerTime(context.Background())
if err != nil {
t.Error("GetServerTime() error", err)
t.Error("GetCurrentServerTime() error", err)
}
}
func TestWrapperGetServerTime(t *testing.T) {
t.Parallel()
st, err := k.GetServerTime(context.Background(), asset.Spot)
if !errors.Is(err, nil) {
t.Fatalf("received: '%v' but expected: '%v'", err, nil)
}
if st.IsZero() {
t.Fatal("expected a time")
}
}

View File

@@ -1565,3 +1565,12 @@ func (k *Kraken) GetAvailableTransferChains(ctx context.Context, cryptocurrency
}
return availableChains, nil
}
// GetServerTime returns the current exchange server time.
func (k *Kraken) GetServerTime(ctx context.Context, _ asset.Item) (time.Time, error) {
st, err := k.GetCurrentServerTime(ctx)
if err != nil {
return time.Time{}, err
}
return time.Parse("Mon, 02 Jan 06 15:04:05 -0700", st.Rfc1123)
}