mirror of
https://github.com/freqtrade/freqtrade.git
synced 2024-11-10 02:12:01 +00:00
Add tests for rest client
This commit is contained in:
parent
bef15b5238
commit
7e3e65ecd8
0
ft_client/test_client/__init__.py
Normal file
0
ft_client/test_client/__init__.py
Normal file
94
ft_client/test_client/test_rest_client.py
Normal file
94
ft_client/test_client/test_rest_client.py
Normal file
|
@ -0,0 +1,94 @@
|
|||
from unittest.mock import MagicMock
|
||||
|
||||
import pytest
|
||||
from freqtrade_client import FtRestClient
|
||||
|
||||
|
||||
def get_rest_client():
|
||||
client = FtRestClient('http://localhost:8080', 'freqtrader', 'password')
|
||||
client._session = MagicMock()
|
||||
request_mock = MagicMock()
|
||||
client._session.request = request_mock
|
||||
return client, request_mock
|
||||
|
||||
|
||||
def test_FtRestClient_init():
|
||||
client = FtRestClient('http://localhost:8080', 'freqtrader', 'password')
|
||||
assert client is not None
|
||||
assert client._serverurl == 'http://localhost:8080'
|
||||
assert client._session is not None
|
||||
assert client._session.auth is not None
|
||||
assert client._session.auth == ('freqtrader', 'password')
|
||||
|
||||
|
||||
@pytest.mark.parametrize('method', ['GET', 'POST', 'DELETE'])
|
||||
def test_FtRestClient_call(method):
|
||||
client, mock = get_rest_client()
|
||||
client._call(method, '/dummytest')
|
||||
assert mock.call_count == 1
|
||||
|
||||
getattr(client, f"_{method.lower()}")('/dummytest')
|
||||
assert mock.call_count == 2
|
||||
|
||||
|
||||
@pytest.mark.parametrize('method,args', [
|
||||
('start', []),
|
||||
('stop', []),
|
||||
('stopbuy', []),
|
||||
('reload_config', []),
|
||||
('balance', []),
|
||||
('count', []),
|
||||
('entries', []),
|
||||
('exits', []),
|
||||
('mix_tags', []),
|
||||
('locks', []),
|
||||
('delete_lock', [2]),
|
||||
('daily', []),
|
||||
('daily', [15]),
|
||||
('weekly', []),
|
||||
('weekly', [15]),
|
||||
('monthly', []),
|
||||
('monthly', [12]),
|
||||
('edge', []),
|
||||
('profit', []),
|
||||
('stats', []),
|
||||
('performance', []),
|
||||
('status', []),
|
||||
('version', []),
|
||||
('show_config', []),
|
||||
('ping', []),
|
||||
('logs', []),
|
||||
('logs', [55]),
|
||||
('trades', []),
|
||||
('trades', [5]),
|
||||
('trades', [5, 5]), # With offset
|
||||
('trade', [1]),
|
||||
('delete_trade', [1]),
|
||||
('cancel_open_order', [1]),
|
||||
('whitelist', []),
|
||||
('blacklist', ['XRP/USDT']),
|
||||
('blacklist', ['XRP/USDT', 'BTC/USDT']),
|
||||
('forcebuy', ['XRP/USDT']),
|
||||
('forcebuy', ['XRP/USDT', 1.5]),
|
||||
('forceenter', ['XRP/USDT', 'short']),
|
||||
('forceenter', ['XRP/USDT', 'short', 1.5]),
|
||||
('forceexit', [1]),
|
||||
('forceexit', [1, 'limit']),
|
||||
('forceexit', [1, 'limit', 100]),
|
||||
('strategies', []),
|
||||
('strategy', ['sampleStrategy']),
|
||||
('pairlists_available', []),
|
||||
('plot_config', []),
|
||||
('available_pairs', []),
|
||||
('available_pairs', ['5m']),
|
||||
('pair_candles', ['XRP/USDT', '5m']),
|
||||
('pair_candles', ['XRP/USDT', '5m', 500]),
|
||||
('pair_history', ['XRP/USDT', '5m', 'SampleStrategy']),
|
||||
('sysinfo', []),
|
||||
('health', []),
|
||||
])
|
||||
def test_FtRestClient_call_explicit_methods(method, args):
|
||||
client, mock = get_rest_client()
|
||||
exec = getattr(client, method)
|
||||
exec(*args)
|
||||
assert mock.call_count == 1
|
Loading…
Reference in New Issue
Block a user