add
This commit is contained in:
60
ccxt/pro/test/Exchange/test_watch_positions.py
Normal file
60
ccxt/pro/test/Exchange/test_watch_positions.py
Normal file
@@ -0,0 +1,60 @@
|
||||
import os
|
||||
import sys
|
||||
|
||||
root = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))))
|
||||
sys.path.append(root)
|
||||
|
||||
# ----------------------------------------------------------------------------
|
||||
|
||||
# PLEASE DO NOT EDIT THIS FILE, IT IS GENERATED AND WILL BE OVERWRITTEN:
|
||||
# https://github.com/ccxt/ccxt/blob/master/CONTRIBUTING.md#how-to-contribute-code
|
||||
|
||||
# ----------------------------------------------------------------------------
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from ccxt.test.exchange.base import test_position # noqa E402
|
||||
from ccxt.test.exchange.base import test_shared_methods # noqa E402
|
||||
|
||||
async def test_watch_positions(exchange, skipped_properties, symbol):
|
||||
method = 'watchPositions'
|
||||
now = exchange.milliseconds()
|
||||
ends = now + 15000
|
||||
while now < ends:
|
||||
response = None
|
||||
success = True
|
||||
try:
|
||||
response = await exchange.watch_positions([symbol])
|
||||
except Exception as e:
|
||||
if not test_shared_methods.is_temporary_failure(e):
|
||||
raise e
|
||||
now = exchange.milliseconds()
|
||||
# continue;
|
||||
success = False
|
||||
if success:
|
||||
test_shared_methods.assert_non_emtpy_array(exchange, skipped_properties, method, response, symbol)
|
||||
now = exchange.milliseconds()
|
||||
for i in range(0, len(response)):
|
||||
test_position(exchange, skipped_properties, method, response[i], None, now)
|
||||
test_shared_methods.assert_timestamp_order(exchange, method, symbol, response)
|
||||
#
|
||||
# Test with specific symbol
|
||||
#
|
||||
positions_for_symbols = None
|
||||
success2 = True
|
||||
try:
|
||||
positions_for_symbols = await exchange.watch_positions([symbol])
|
||||
except Exception as e:
|
||||
if not test_shared_methods.is_temporary_failure(e):
|
||||
raise e
|
||||
now = exchange.milliseconds()
|
||||
# continue;
|
||||
success2 = False
|
||||
if success2:
|
||||
assert isinstance(positions_for_symbols, list), exchange.id + ' ' + method + ' must return an array, returned ' + exchange.json(positions_for_symbols)
|
||||
# max theoretical 4 positions: two for one-way-mode and two for two-way mode
|
||||
assert len(positions_for_symbols) <= 4, exchange.id + ' ' + method + ' positions length for particular symbol should be less than 4, returned ' + exchange.json(positions_for_symbols)
|
||||
now = exchange.milliseconds()
|
||||
for i in range(0, len(positions_for_symbols)):
|
||||
test_position(exchange, skipped_properties, method, positions_for_symbols[i], symbol, now)
|
||||
test_shared_methods.assert_timestamp_order(exchange, method, symbol, positions_for_symbols)
|
||||
return True
|
||||
Reference in New Issue
Block a user