Test api-server start from manager
This commit is contained in:
		| @@ -143,15 +143,6 @@ def patch_coinmarketcap(mocker) -> None: | |||||||
|     ) |     ) | ||||||
|  |  | ||||||
|  |  | ||||||
| def patch_apiserver(mocker) -> None: |  | ||||||
|     mocker.patch.multiple( |  | ||||||
|         'freqtrade.rpc.api_server.ApiServer', |  | ||||||
|         run=MagicMock(), |  | ||||||
|         register_rest_other=MagicMock(), |  | ||||||
|         register_rest_rpc_urls=MagicMock(), |  | ||||||
|     ) |  | ||||||
|  |  | ||||||
|  |  | ||||||
| @pytest.fixture(scope="function") | @pytest.fixture(scope="function") | ||||||
| def default_conf(): | def default_conf(): | ||||||
|     """ Returns validated configuration suitable for most tests """ |     """ Returns validated configuration suitable for most tests """ | ||||||
|   | |||||||
| @@ -10,15 +10,14 @@ import pytest | |||||||
| from freqtrade.__init__ import __version__ | from freqtrade.__init__ import __version__ | ||||||
| from freqtrade.rpc.api_server import ApiServer | from freqtrade.rpc.api_server import ApiServer | ||||||
| from freqtrade.state import State | from freqtrade.state import State | ||||||
| from freqtrade.tests.conftest import (get_patched_freqtradebot, | from freqtrade.tests.conftest import (get_patched_freqtradebot, patch_get_signal) | ||||||
|                                       patch_apiserver, patch_get_signal) |  | ||||||
|  |  | ||||||
|  |  | ||||||
| @pytest.fixture | @pytest.fixture | ||||||
| def botclient(default_conf, mocker): | def botclient(default_conf, mocker): | ||||||
|     default_conf.update({"api_server": {"enabled": True, |     default_conf.update({"api_server": {"enabled": True, | ||||||
|                                        "listen_ip_address": "127.0.0.1", |                                         "listen_ip_address": "127.0.0.1", | ||||||
|                                        "listen_port": "8080"}}) |                                         "listen_port": "8080"}}) | ||||||
|     ftbot = get_patched_freqtradebot(mocker, default_conf) |     ftbot = get_patched_freqtradebot(mocker, default_conf) | ||||||
|     mocker.patch('freqtrade.rpc.api_server.ApiServer.run', MagicMock()) |     mocker.patch('freqtrade.rpc.api_server.ApiServer.run', MagicMock()) | ||||||
|     apiserver = ApiServer(ftbot) |     apiserver = ApiServer(ftbot) | ||||||
|   | |||||||
| @@ -135,3 +135,32 @@ def test_startupmessages_telegram_enabled(mocker, default_conf, caplog) -> None: | |||||||
|     rpc_manager.startup_messages(default_conf,  freqtradebot.pairlists) |     rpc_manager.startup_messages(default_conf,  freqtradebot.pairlists) | ||||||
|     assert telegram_mock.call_count == 3 |     assert telegram_mock.call_count == 3 | ||||||
|     assert "Dry run is enabled." in telegram_mock.call_args_list[0][0][0]['status'] |     assert "Dry run is enabled." in telegram_mock.call_args_list[0][0][0]['status'] | ||||||
|  |  | ||||||
|  |  | ||||||
|  | def test_init_apiserver_disabled(mocker, default_conf, caplog) -> None: | ||||||
|  |     caplog.set_level(logging.DEBUG) | ||||||
|  |     run_mock = MagicMock() | ||||||
|  |     mocker.patch('freqtrade.rpc.api_server.ApiServer.run', run_mock) | ||||||
|  |     default_conf['telegram']['enabled'] = False | ||||||
|  |     rpc_manager = RPCManager(get_patched_freqtradebot(mocker, default_conf)) | ||||||
|  |  | ||||||
|  |     assert not log_has('Enabling rpc.api_server', caplog.record_tuples) | ||||||
|  |     assert rpc_manager.registered_modules == [] | ||||||
|  |     assert run_mock.call_count == 0 | ||||||
|  |  | ||||||
|  |  | ||||||
|  | def test_init_apiserver_enabled(mocker, default_conf, caplog) -> None: | ||||||
|  |     caplog.set_level(logging.DEBUG) | ||||||
|  |     run_mock = MagicMock() | ||||||
|  |     mocker.patch('freqtrade.rpc.api_server.ApiServer.run', run_mock) | ||||||
|  |  | ||||||
|  |     default_conf["telegram"]["enabled"] = False | ||||||
|  |     default_conf["api_server"] = {"enabled": True, | ||||||
|  |                                   "listen_ip_address": "127.0.0.1", | ||||||
|  |                                   "listen_port": "8080"} | ||||||
|  |     rpc_manager = RPCManager(get_patched_freqtradebot(mocker, default_conf)) | ||||||
|  |  | ||||||
|  |     assert log_has('Enabling rpc.api_server', caplog.record_tuples) | ||||||
|  |     assert len(rpc_manager.registered_modules) == 1 | ||||||
|  |     assert 'apiserver' in [mod.name for mod in rpc_manager.registered_modules] | ||||||
|  |     assert run_mock.call_count == 1 | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user