Add test to ensure configuration error is displayed as expected
This commit is contained in:
+17
-1
@@ -8,7 +8,7 @@ import pytest
|
|||||||
|
|
||||||
from freqtrade.commands import Arguments
|
from freqtrade.commands import Arguments
|
||||||
from freqtrade.enums import State
|
from freqtrade.enums import State
|
||||||
from freqtrade.exceptions import FreqtradeException, OperationalException
|
from freqtrade.exceptions import ConfigurationError, FreqtradeException, OperationalException
|
||||||
from freqtrade.freqtradebot import FreqtradeBot
|
from freqtrade.freqtradebot import FreqtradeBot
|
||||||
from freqtrade.main import main
|
from freqtrade.main import main
|
||||||
from freqtrade.worker import Worker
|
from freqtrade.worker import Worker
|
||||||
@@ -141,6 +141,22 @@ def test_main_operational_exception1(mocker, default_conf, caplog) -> None:
|
|||||||
assert log_has_re(r'SIGINT.*', caplog)
|
assert log_has_re(r'SIGINT.*', caplog)
|
||||||
|
|
||||||
|
|
||||||
|
def test_main_ConfigurationError(mocker, default_conf, caplog) -> None:
|
||||||
|
patch_exchange(mocker)
|
||||||
|
mocker.patch(
|
||||||
|
'freqtrade.commands.list_commands.list_available_exchanges',
|
||||||
|
MagicMock(side_effect=ConfigurationError('Oh snap!'))
|
||||||
|
)
|
||||||
|
patched_configuration_load_config_file(mocker, default_conf)
|
||||||
|
|
||||||
|
args = ['list-exchanges']
|
||||||
|
|
||||||
|
# Test Main + the KeyboardInterrupt exception
|
||||||
|
with pytest.raises(SystemExit):
|
||||||
|
main(args)
|
||||||
|
assert log_has_re('Configuration error: Oh snap!', caplog)
|
||||||
|
|
||||||
|
|
||||||
def test_main_reload_config(mocker, default_conf, caplog) -> None:
|
def test_main_reload_config(mocker, default_conf, caplog) -> None:
|
||||||
patch_exchange(mocker)
|
patch_exchange(mocker)
|
||||||
mocker.patch('freqtrade.freqtradebot.FreqtradeBot.cleanup', MagicMock())
|
mocker.patch('freqtrade.freqtradebot.FreqtradeBot.cleanup', MagicMock())
|
||||||
|
|||||||
Reference in New Issue
Block a user