From c9e6137ad0d472d910941ce24acbb379e2f44adc Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 16 Apr 2023 17:18:28 +0200 Subject: [PATCH] Fix test_telegram _init test --- freqtrade/rpc/telegram.py | 5 ++++- tests/rpc/test_rpc_telegram.py | 15 +++++++++------ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/freqtrade/rpc/telegram.py b/freqtrade/rpc/telegram.py index babe7d582..d20d1862e 100644 --- a/freqtrade/rpc/telegram.py +++ b/freqtrade/rpc/telegram.py @@ -166,6 +166,9 @@ class Telegram(RPCHandler): logger.info('using custom keyboard from ' f'config.json: {self._keyboard}') + def _init_telegram_app(self): + return Application.builder().token(self._config['telegram']['token']).build() + def _init(self) -> None: """ Initializes this module with the given config, @@ -179,7 +182,7 @@ class Telegram(RPCHandler): self._loop = asyncio.new_event_loop() asyncio.set_event_loop(self._loop) - self._app = Application.builder().token(self._config['telegram']['token']).build() + self._app = self._init_telegram_app() # Register command handler and start telegram message polling handles = [ diff --git a/tests/rpc/test_rpc_telegram.py b/tests/rpc/test_rpc_telegram.py index b406ddc3a..b762c999b 100644 --- a/tests/rpc/test_rpc_telegram.py +++ b/tests/rpc/test_rpc_telegram.py @@ -105,15 +105,18 @@ def test_telegram__init__(default_conf, mocker) -> None: def test_telegram_init(default_conf, mocker, caplog) -> None: - start_polling = MagicMock() - mocker.patch('freqtrade.rpc.telegram.Updater', MagicMock(return_value=start_polling)) + app_mock = MagicMock() + mocker.patch('freqtrade.rpc.telegram.Telegram._start_thread', MagicMock()) + mocker.patch('freqtrade.rpc.telegram.Telegram._init_telegram_app', return_value=app_mock) + mocker.patch('freqtrade.rpc.telegram.Telegram._startup_telegram', AsyncMock()) - get_telegram_testobject(mocker, default_conf, mock=False) - assert start_polling.call_count == 0 + telegram, _, _ = get_telegram_testobject(mocker, default_conf, mock=False) + telegram._init() + assert app_mock.call_count == 0 # number of handles registered - assert start_polling.dispatcher.add_handler.call_count > 0 - assert start_polling.start_polling.call_count == 1 + assert app_mock.add_handler.call_count > 0 + # assert start_polling.start_polling.call_count == 1 message_str = ("rpc.telegram is listening for following commands: [['status'], ['profit'], " "['balance'], ['start'], ['stop'], "