48 lines
2.3 KiB
Python
48 lines
2.3 KiB
Python
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_shared_methods # noqa E402
|
|
|
|
def test_trade(exchange, skipped_properties, method, entry, symbol, now):
|
|
format = {
|
|
'info': {},
|
|
'id': '12345-67890:09876/54321',
|
|
'timestamp': 1502962946216,
|
|
'datetime': '2017-08-17 12:42:48.000',
|
|
'symbol': 'ETH/BTC',
|
|
'order': '12345-67890:09876/54321',
|
|
'side': 'buy',
|
|
'takerOrMaker': 'taker',
|
|
'price': exchange.parse_number('0.06917684'),
|
|
'amount': exchange.parse_number('1.5'),
|
|
'cost': exchange.parse_number('0.10376526'),
|
|
'fees': [],
|
|
'fee': {},
|
|
}
|
|
# todo: add takeOrMaker as mandatory (atm, many exchanges fail)
|
|
# removed side because some public endpoints return trades without side
|
|
empty_allowed_for = ['fees', 'fee', 'symbol', 'order', 'id', 'takerOrMaker']
|
|
test_shared_methods.assert_structure(exchange, skipped_properties, method, entry, format, empty_allowed_for)
|
|
test_shared_methods.assert_timestamp_and_datetime(exchange, skipped_properties, method, entry, now)
|
|
test_shared_methods.assert_symbol(exchange, skipped_properties, method, entry, 'symbol', symbol)
|
|
#
|
|
test_shared_methods.assert_in_array(exchange, skipped_properties, method, entry, 'side', ['buy', 'sell'])
|
|
test_shared_methods.assert_in_array(exchange, skipped_properties, method, entry, 'takerOrMaker', ['taker', 'maker'])
|
|
test_shared_methods.assert_fee_structure(exchange, skipped_properties, method, entry, 'fee')
|
|
if not ('fees' in skipped_properties):
|
|
# todo: remove undefined check and probably non-empty array check later
|
|
if entry['fees'] is not None:
|
|
for i in range(0, len(entry['fees'])):
|
|
test_shared_methods.assert_fee_structure(exchange, skipped_properties, method, entry['fees'], i)
|