mirror of
https://github.com/freqtrade/freqtrade.git
synced 2024-11-10 10:21:59 +00:00
fix tests and warning message
This commit is contained in:
parent
8e75852ff3
commit
7d1645ac20
|
@ -99,7 +99,7 @@ class ExternalMessageConsumer:
|
||||||
|
|
||||||
if self.enabled and self._config.get('process_only_new_candles', True):
|
if self.enabled and self._config.get('process_only_new_candles', True):
|
||||||
# Warning here or require it?
|
# Warning here or require it?
|
||||||
logger.warning("To receive best performance with external data,"
|
logger.warning("To receive best performance with external data, "
|
||||||
"please set `process_only_new_candles` to False")
|
"please set `process_only_new_candles` to False")
|
||||||
|
|
||||||
def start(self):
|
def start(self):
|
||||||
|
@ -205,11 +205,6 @@ class ExternalMessageConsumer:
|
||||||
# Now receive data, if none is within the time limit, ping
|
# Now receive data, if none is within the time limit, ping
|
||||||
await self._receive_messages(channel, producer, lock)
|
await self._receive_messages(channel, producer, lock)
|
||||||
|
|
||||||
# Catch invalid ws_url, and break the loop
|
|
||||||
except websockets.exceptions.InvalidURI as e:
|
|
||||||
logger.error(f"{ws_url} is an invalid WebSocket URL - {e}")
|
|
||||||
break
|
|
||||||
|
|
||||||
except (
|
except (
|
||||||
socket.gaierror,
|
socket.gaierror,
|
||||||
ConnectionRefusedError,
|
ConnectionRefusedError,
|
||||||
|
|
|
@ -29,7 +29,8 @@ def patched_emc(default_conf, mocker):
|
||||||
"producers": [
|
"producers": [
|
||||||
{
|
{
|
||||||
"name": "default",
|
"name": "default",
|
||||||
"url": "ws://null:9891/api/v1/message/ws",
|
"host": "null",
|
||||||
|
"port": 9891,
|
||||||
"ws_token": _TEST_WS_TOKEN
|
"ws_token": _TEST_WS_TOKEN
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -166,7 +167,8 @@ async def test_emc_create_connection_success(default_conf, caplog, mocker):
|
||||||
"producers": [
|
"producers": [
|
||||||
{
|
{
|
||||||
"name": "default",
|
"name": "default",
|
||||||
"url": f"ws://{_TEST_WS_HOST}:{_TEST_WS_PORT}/api/v1/message/ws",
|
"host": _TEST_WS_HOST,
|
||||||
|
"port": _TEST_WS_PORT,
|
||||||
"ws_token": _TEST_WS_TOKEN
|
"ws_token": _TEST_WS_TOKEN
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@ -198,42 +200,43 @@ async def test_emc_create_connection_success(default_conf, caplog, mocker):
|
||||||
emc.shutdown()
|
emc.shutdown()
|
||||||
|
|
||||||
|
|
||||||
async def test_emc_create_connection_invalid(default_conf, caplog, mocker):
|
# async def test_emc_create_connection_invalid(default_conf, caplog, mocker):
|
||||||
default_conf.update({
|
# default_conf.update({
|
||||||
"external_message_consumer": {
|
# "external_message_consumer": {
|
||||||
"enabled": True,
|
# "enabled": True,
|
||||||
"producers": [
|
# "producers": [
|
||||||
{
|
# {
|
||||||
"name": "default",
|
# "name": "default",
|
||||||
"url": "ws://localhost:8080/api/v1/message/ws",
|
# "host": _TEST_WS_HOST,
|
||||||
"ws_token": _TEST_WS_TOKEN
|
# "port": _TEST_WS_PORT,
|
||||||
}
|
# "ws_token": _TEST_WS_TOKEN
|
||||||
],
|
# }
|
||||||
"wait_timeout": 60,
|
# ],
|
||||||
"ping_timeout": 60,
|
# "wait_timeout": 60,
|
||||||
"sleep_timeout": 60
|
# "ping_timeout": 60,
|
||||||
}
|
# "sleep_timeout": 60
|
||||||
})
|
# }
|
||||||
|
# })
|
||||||
mocker.patch('freqtrade.rpc.external_message_consumer.ExternalMessageConsumer.start',
|
#
|
||||||
MagicMock())
|
# mocker.patch('freqtrade.rpc.external_message_consumer.ExternalMessageConsumer.start',
|
||||||
|
# MagicMock())
|
||||||
test_producer = default_conf['external_message_consumer']['producers'][0]
|
#
|
||||||
lock = asyncio.Lock()
|
# test_producer = default_conf['external_message_consumer']['producers'][0]
|
||||||
|
# lock = asyncio.Lock()
|
||||||
dp = DataProvider(default_conf, None, None, None)
|
#
|
||||||
emc = ExternalMessageConsumer(default_conf, dp)
|
# dp = DataProvider(default_conf, None, None, None)
|
||||||
|
# emc = ExternalMessageConsumer(default_conf, dp)
|
||||||
try:
|
#
|
||||||
# Test invalid URL
|
# try:
|
||||||
test_producer['url'] = "tcp://localhost:8080/api/v1/message/ws"
|
# # Test invalid URL
|
||||||
emc._running = True
|
# test_producer['url'] = "tcp://null:8080/api/v1/message/ws"
|
||||||
await emc._create_connection(test_producer, lock)
|
# emc._running = True
|
||||||
emc._running = False
|
# await emc._create_connection(test_producer, lock)
|
||||||
|
# emc._running = False
|
||||||
assert log_has_re(r".+is an invalid WebSocket URL.+", caplog)
|
#
|
||||||
finally:
|
# assert log_has_re(r".+is an invalid WebSocket URL.+", caplog)
|
||||||
emc.shutdown()
|
# finally:
|
||||||
|
# emc.shutdown()
|
||||||
|
|
||||||
|
|
||||||
async def test_emc_create_connection_error(default_conf, caplog, mocker):
|
async def test_emc_create_connection_error(default_conf, caplog, mocker):
|
||||||
|
@ -243,7 +246,8 @@ async def test_emc_create_connection_error(default_conf, caplog, mocker):
|
||||||
"producers": [
|
"producers": [
|
||||||
{
|
{
|
||||||
"name": "default",
|
"name": "default",
|
||||||
"url": "ws://localhost:8080/api/v1/message/ws",
|
"host": _TEST_WS_HOST,
|
||||||
|
"port": _TEST_WS_PORT,
|
||||||
"ws_token": _TEST_WS_TOKEN
|
"ws_token": _TEST_WS_TOKEN
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@ -260,7 +264,7 @@ async def test_emc_create_connection_error(default_conf, caplog, mocker):
|
||||||
emc = ExternalMessageConsumer(default_conf, dp)
|
emc = ExternalMessageConsumer(default_conf, dp)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
await asyncio.sleep(1)
|
await asyncio.sleep(0.01)
|
||||||
assert log_has("Unexpected error has occurred:", caplog)
|
assert log_has("Unexpected error has occurred:", caplog)
|
||||||
finally:
|
finally:
|
||||||
emc.shutdown()
|
emc.shutdown()
|
||||||
|
@ -273,7 +277,8 @@ async def test_emc_receive_messages_valid(default_conf, caplog, mocker):
|
||||||
"producers": [
|
"producers": [
|
||||||
{
|
{
|
||||||
"name": "default",
|
"name": "default",
|
||||||
"url": f"ws://{_TEST_WS_HOST}:{_TEST_WS_PORT}/api/v1/message/ws",
|
"host": _TEST_WS_HOST,
|
||||||
|
"port": _TEST_WS_PORT,
|
||||||
"ws_token": _TEST_WS_TOKEN
|
"ws_token": _TEST_WS_TOKEN
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@ -319,7 +324,8 @@ async def test_emc_receive_messages_invalid(default_conf, caplog, mocker):
|
||||||
"producers": [
|
"producers": [
|
||||||
{
|
{
|
||||||
"name": "default",
|
"name": "default",
|
||||||
"url": f"ws://{_TEST_WS_HOST}:{_TEST_WS_PORT}/api/v1/message/ws",
|
"host": _TEST_WS_HOST,
|
||||||
|
"port": _TEST_WS_PORT,
|
||||||
"ws_token": _TEST_WS_TOKEN
|
"ws_token": _TEST_WS_TOKEN
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@ -365,7 +371,8 @@ async def test_emc_receive_messages_timeout(default_conf, caplog, mocker):
|
||||||
"producers": [
|
"producers": [
|
||||||
{
|
{
|
||||||
"name": "default",
|
"name": "default",
|
||||||
"url": f"ws://{_TEST_WS_HOST}:{_TEST_WS_PORT}/api/v1/message/ws",
|
"host": _TEST_WS_HOST,
|
||||||
|
"port": _TEST_WS_PORT,
|
||||||
"ws_token": _TEST_WS_TOKEN
|
"ws_token": _TEST_WS_TOKEN
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
@ -411,7 +418,8 @@ async def test_emc_receive_messages_handle_error(default_conf, caplog, mocker):
|
||||||
"producers": [
|
"producers": [
|
||||||
{
|
{
|
||||||
"name": "default",
|
"name": "default",
|
||||||
"url": f"ws://{_TEST_WS_HOST}:{_TEST_WS_PORT}/api/v1/message/ws",
|
"host": _TEST_WS_HOST,
|
||||||
|
"port": _TEST_WS_PORT,
|
||||||
"ws_token": _TEST_WS_TOKEN
|
"ws_token": _TEST_WS_TOKEN
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|
Loading…
Reference in New Issue
Block a user