mirror of
https://github.com/freqtrade/freqtrade.git
synced 2024-11-10 02:12:01 +00:00
tests: Adjust tests for removed validate_pairlist functionality
This commit is contained in:
parent
94ef4380d4
commit
f4881e7c6f
|
@ -255,7 +255,6 @@ def test_init_exception(default_conf, mocker):
|
||||||
def test_exchange_resolver(default_conf, mocker, caplog):
|
def test_exchange_resolver(default_conf, mocker, caplog):
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=MagicMock()))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=MagicMock()))
|
||||||
mocker.patch(f"{EXMS}._load_async_markets")
|
mocker.patch(f"{EXMS}._load_async_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
mocker.patch(f"{EXMS}.validate_timeframes")
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
mocker.patch(f"{EXMS}.validate_pricing")
|
||||||
|
@ -555,7 +554,6 @@ def test_get_min_pair_stake_amount_real_data(mocker, default_conf) -> None:
|
||||||
|
|
||||||
def test__load_async_markets(default_conf, mocker, caplog):
|
def test__load_async_markets(default_conf, mocker, caplog):
|
||||||
mocker.patch(f"{EXMS}._init_ccxt")
|
mocker.patch(f"{EXMS}._init_ccxt")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
mocker.patch(f"{EXMS}.validate_timeframes")
|
||||||
mocker.patch(f"{EXMS}.reload_markets")
|
mocker.patch(f"{EXMS}.reload_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
|
@ -584,7 +582,6 @@ def test__load_markets(default_conf, mocker, caplog):
|
||||||
api_mock = MagicMock()
|
api_mock = MagicMock()
|
||||||
api_mock.load_markets = get_mock_coro(side_effect=ccxt.BaseError("SomeError"))
|
api_mock.load_markets = get_mock_coro(side_effect=ccxt.BaseError("SomeError"))
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
mocker.patch(f"{EXMS}.validate_timeframes")
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
mocker.patch(f"{EXMS}.validate_pricing")
|
||||||
|
@ -684,7 +681,6 @@ def test_validate_stakecurrency(default_conf, stake_currency, mocker, caplog):
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
mocker.patch(f"{EXMS}.validate_timeframes")
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
mocker.patch(f"{EXMS}.validate_pricing")
|
||||||
Exchange(default_conf)
|
Exchange(default_conf)
|
||||||
|
@ -702,7 +698,6 @@ def test_validate_stakecurrency_error(default_conf, mocker, caplog):
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
mocker.patch(f"{EXMS}.validate_timeframes")
|
||||||
with pytest.raises(
|
with pytest.raises(
|
||||||
ConfigurationError,
|
ConfigurationError,
|
||||||
|
@ -755,123 +750,6 @@ def test_get_pair_base_currency(default_conf, mocker, pair, expected):
|
||||||
assert ex.get_pair_base_currency(pair) == expected
|
assert ex.get_pair_base_currency(pair) == expected
|
||||||
|
|
||||||
|
|
||||||
def test_validate_pairs(default_conf, mocker):
|
|
||||||
api_mock = MagicMock()
|
|
||||||
id_mock = PropertyMock(return_value="test_exchange")
|
|
||||||
type(api_mock).id = id_mock
|
|
||||||
|
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
|
||||||
mocker.patch(
|
|
||||||
f"{EXMS}._load_async_markets",
|
|
||||||
return_value={
|
|
||||||
"ETH/BTC": {"quote": "BTC"},
|
|
||||||
"LTC/BTC": {"quote": "BTC"},
|
|
||||||
"XRP/BTC": {"quote": "BTC"},
|
|
||||||
"NEO/BTC": {"quote": "BTC"},
|
|
||||||
},
|
|
||||||
)
|
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
|
||||||
# test exchange.validate_pairs directly
|
|
||||||
# No assert - but this should not fail (!)
|
|
||||||
Exchange(default_conf)
|
|
||||||
|
|
||||||
|
|
||||||
def test_validate_pairs_not_available(default_conf, mocker):
|
|
||||||
api_mock = MagicMock()
|
|
||||||
type(api_mock).markets = PropertyMock(
|
|
||||||
return_value={"XRP/BTC": {"inactive": True, "base": "XRP", "quote": "BTC"}}
|
|
||||||
)
|
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
|
||||||
mocker.patch(f"{EXMS}._load_async_markets")
|
|
||||||
|
|
||||||
with pytest.raises(OperationalException, match=r"not available"):
|
|
||||||
Exchange(default_conf)
|
|
||||||
|
|
||||||
|
|
||||||
def test_validate_pairs_exception(default_conf, mocker, caplog):
|
|
||||||
caplog.set_level(logging.INFO)
|
|
||||||
api_mock = MagicMock()
|
|
||||||
mocker.patch(f"{EXMS}.name", PropertyMock(return_value="Binance"))
|
|
||||||
|
|
||||||
type(api_mock).markets = PropertyMock(return_value={})
|
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", api_mock)
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
|
||||||
mocker.patch(f"{EXMS}._load_async_markets")
|
|
||||||
|
|
||||||
with pytest.raises(OperationalException, match=r"Pair ETH/BTC is not available on Binance"):
|
|
||||||
Exchange(default_conf)
|
|
||||||
|
|
||||||
mocker.patch(f"{EXMS}.markets", PropertyMock(return_value={}))
|
|
||||||
Exchange(default_conf)
|
|
||||||
assert log_has("Unable to validate pairs (assuming they are correct).", caplog)
|
|
||||||
|
|
||||||
|
|
||||||
def test_validate_pairs_stakecompatibility(default_conf, mocker):
|
|
||||||
api_mock = MagicMock()
|
|
||||||
type(api_mock).load_markets = get_mock_coro(
|
|
||||||
return_value={
|
|
||||||
"ETH/BTC": {"quote": "BTC"},
|
|
||||||
"LTC/BTC": {"quote": "BTC"},
|
|
||||||
"XRP/BTC": {"quote": "BTC"},
|
|
||||||
"NEO/BTC": {"quote": "BTC"},
|
|
||||||
"HELLO-WORLD": {"quote": "BTC"},
|
|
||||||
}
|
|
||||||
)
|
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
|
||||||
|
|
||||||
Exchange(default_conf)
|
|
||||||
|
|
||||||
|
|
||||||
def test_validate_pairs_stakecompatibility_downloaddata(default_conf, mocker):
|
|
||||||
api_mock = MagicMock()
|
|
||||||
default_conf["stake_currency"] = ""
|
|
||||||
type(api_mock).load_markets = get_mock_coro(
|
|
||||||
return_value={
|
|
||||||
"ETH/BTC": {"quote": "BTC"},
|
|
||||||
"LTC/BTC": {"quote": "BTC"},
|
|
||||||
"XRP/BTC": {"quote": "BTC"},
|
|
||||||
"NEO/BTC": {"quote": "BTC"},
|
|
||||||
"HELLO-WORLD": {"quote": "BTC"},
|
|
||||||
}
|
|
||||||
)
|
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
|
||||||
|
|
||||||
Exchange(default_conf)
|
|
||||||
assert type(api_mock).load_markets.call_count == 1
|
|
||||||
|
|
||||||
|
|
||||||
def test_validate_pairs_stakecompatibility_fail(default_conf, mocker):
|
|
||||||
default_conf["exchange"]["pair_whitelist"].append("HELLO-WORLD")
|
|
||||||
api_mock = MagicMock()
|
|
||||||
type(api_mock).load_markets = get_mock_coro(
|
|
||||||
return_value={
|
|
||||||
"ETH/BTC": {"quote": "BTC"},
|
|
||||||
"LTC/BTC": {"quote": "BTC"},
|
|
||||||
"XRP/BTC": {"quote": "BTC"},
|
|
||||||
"NEO/BTC": {"quote": "BTC"},
|
|
||||||
"HELLO-WORLD": {"quote": "USDT"},
|
|
||||||
}
|
|
||||||
)
|
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
|
||||||
|
|
||||||
with pytest.raises(OperationalException, match=r"Stake-currency 'BTC' not compatible with.*"):
|
|
||||||
Exchange(default_conf)
|
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.parametrize("timeframe", [("5m"), ("1m"), ("15m"), ("1h")])
|
@pytest.mark.parametrize("timeframe", [("5m"), ("1m"), ("15m"), ("1h")])
|
||||||
def test_validate_timeframes(default_conf, mocker, timeframe):
|
def test_validate_timeframes(default_conf, mocker, timeframe):
|
||||||
default_conf["timeframe"] = timeframe
|
default_conf["timeframe"] = timeframe
|
||||||
|
@ -883,7 +761,6 @@ def test_validate_timeframes(default_conf, mocker, timeframe):
|
||||||
|
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.reload_markets")
|
mocker.patch(f"{EXMS}.reload_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
mocker.patch(f"{EXMS}.validate_pricing")
|
||||||
Exchange(default_conf)
|
Exchange(default_conf)
|
||||||
|
@ -901,7 +778,6 @@ def test_validate_timeframes_failed(default_conf, mocker):
|
||||||
|
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.reload_markets")
|
mocker.patch(f"{EXMS}.reload_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
mocker.patch(f"{EXMS}.validate_pricing")
|
||||||
with pytest.raises(
|
with pytest.raises(
|
||||||
|
@ -931,7 +807,6 @@ def test_validate_timeframes_emulated_ohlcv_1(default_conf, mocker):
|
||||||
|
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.reload_markets")
|
mocker.patch(f"{EXMS}.reload_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
with pytest.raises(
|
with pytest.raises(
|
||||||
OperationalException,
|
OperationalException,
|
||||||
|
@ -953,7 +828,6 @@ def test_validate_timeframes_emulated_ohlcvi_2(default_conf, mocker):
|
||||||
|
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.reload_markets")
|
mocker.patch(f"{EXMS}.reload_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs", MagicMock())
|
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
with pytest.raises(
|
with pytest.raises(
|
||||||
OperationalException,
|
OperationalException,
|
||||||
|
@ -975,7 +849,6 @@ def test_validate_timeframes_not_in_config(default_conf, mocker):
|
||||||
|
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.reload_markets")
|
mocker.patch(f"{EXMS}.reload_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
mocker.patch(f"{EXMS}.validate_pricing")
|
||||||
mocker.patch(f"{EXMS}.validate_required_startup_candles")
|
mocker.patch(f"{EXMS}.validate_required_startup_candles")
|
||||||
|
@ -992,7 +865,6 @@ def test_validate_pricing(default_conf, mocker):
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.reload_markets")
|
mocker.patch(f"{EXMS}.reload_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_trading_mode_and_margin_mode")
|
mocker.patch(f"{EXMS}.validate_trading_mode_and_margin_mode")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
mocker.patch(f"{EXMS}.validate_timeframes")
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
mocker.patch(f"{EXMS}.name", "Binance")
|
mocker.patch(f"{EXMS}.name", "Binance")
|
||||||
|
@ -1027,7 +899,6 @@ def test_validate_ordertypes(default_conf, mocker):
|
||||||
type(api_mock).has = PropertyMock(return_value={"createMarketOrder": True})
|
type(api_mock).has = PropertyMock(return_value={"createMarketOrder": True})
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.reload_markets")
|
mocker.patch(f"{EXMS}.reload_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
mocker.patch(f"{EXMS}.validate_timeframes")
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
mocker.patch(f"{EXMS}.validate_pricing")
|
||||||
|
@ -1086,7 +957,6 @@ def test_validate_ordertypes_stop_advanced(default_conf, mocker, exchange_name,
|
||||||
type(api_mock).has = PropertyMock(return_value={"createMarketOrder": True})
|
type(api_mock).has = PropertyMock(return_value={"createMarketOrder": True})
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.reload_markets")
|
mocker.patch(f"{EXMS}.reload_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
mocker.patch(f"{EXMS}.validate_timeframes")
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
mocker.patch(f"{EXMS}.validate_pricing")
|
||||||
|
@ -1111,7 +981,6 @@ def test_validate_order_types_not_in_config(default_conf, mocker):
|
||||||
api_mock = MagicMock()
|
api_mock = MagicMock()
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
mocker.patch(f"{EXMS}._init_ccxt", MagicMock(return_value=api_mock))
|
||||||
mocker.patch(f"{EXMS}.reload_markets")
|
mocker.patch(f"{EXMS}.reload_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
mocker.patch(f"{EXMS}.validate_timeframes")
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
mocker.patch(f"{EXMS}.validate_pricing")
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
|
@ -1127,7 +996,6 @@ def test_validate_required_startup_candles(default_conf, mocker, caplog):
|
||||||
mocker.patch(f"{EXMS}._init_ccxt", api_mock)
|
mocker.patch(f"{EXMS}._init_ccxt", api_mock)
|
||||||
mocker.patch(f"{EXMS}.validate_timeframes")
|
mocker.patch(f"{EXMS}.validate_timeframes")
|
||||||
mocker.patch(f"{EXMS}._load_async_markets")
|
mocker.patch(f"{EXMS}._load_async_markets")
|
||||||
mocker.patch(f"{EXMS}.validate_pairs")
|
|
||||||
mocker.patch(f"{EXMS}.validate_pricing")
|
mocker.patch(f"{EXMS}.validate_pricing")
|
||||||
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
mocker.patch(f"{EXMS}.validate_stakecurrency")
|
||||||
|
|
||||||
|
@ -4161,7 +4029,6 @@ def test_merge_ft_has_dict(default_conf, mocker):
|
||||||
EXMS,
|
EXMS,
|
||||||
_init_ccxt=MagicMock(return_value=MagicMock()),
|
_init_ccxt=MagicMock(return_value=MagicMock()),
|
||||||
_load_async_markets=MagicMock(),
|
_load_async_markets=MagicMock(),
|
||||||
validate_pairs=MagicMock(),
|
|
||||||
validate_timeframes=MagicMock(),
|
validate_timeframes=MagicMock(),
|
||||||
validate_stakecurrency=MagicMock(),
|
validate_stakecurrency=MagicMock(),
|
||||||
validate_pricing=MagicMock(),
|
validate_pricing=MagicMock(),
|
||||||
|
@ -4196,7 +4063,6 @@ def test_get_valid_pair_combination(default_conf, mocker, markets):
|
||||||
EXMS,
|
EXMS,
|
||||||
_init_ccxt=MagicMock(return_value=MagicMock()),
|
_init_ccxt=MagicMock(return_value=MagicMock()),
|
||||||
_load_async_markets=MagicMock(),
|
_load_async_markets=MagicMock(),
|
||||||
validate_pairs=MagicMock(),
|
|
||||||
validate_timeframes=MagicMock(),
|
validate_timeframes=MagicMock(),
|
||||||
validate_pricing=MagicMock(),
|
validate_pricing=MagicMock(),
|
||||||
markets=PropertyMock(return_value=markets),
|
markets=PropertyMock(return_value=markets),
|
||||||
|
@ -4476,7 +4342,6 @@ def test_get_markets(
|
||||||
EXMS,
|
EXMS,
|
||||||
_init_ccxt=MagicMock(return_value=MagicMock()),
|
_init_ccxt=MagicMock(return_value=MagicMock()),
|
||||||
_load_async_markets=MagicMock(),
|
_load_async_markets=MagicMock(),
|
||||||
validate_pairs=MagicMock(),
|
|
||||||
validate_timeframes=MagicMock(),
|
validate_timeframes=MagicMock(),
|
||||||
validate_pricing=MagicMock(),
|
validate_pricing=MagicMock(),
|
||||||
markets=PropertyMock(return_value=markets_static),
|
markets=PropertyMock(return_value=markets_static),
|
||||||
|
|
|
@ -2204,7 +2204,6 @@ def test_manage_open_orders_buy_exception(
|
||||||
patch_exchange(mocker)
|
patch_exchange(mocker)
|
||||||
mocker.patch.multiple(
|
mocker.patch.multiple(
|
||||||
EXMS,
|
EXMS,
|
||||||
validate_pairs=MagicMock(),
|
|
||||||
fetch_ticker=ticker_usdt,
|
fetch_ticker=ticker_usdt,
|
||||||
fetch_order=MagicMock(side_effect=ExchangeError),
|
fetch_order=MagicMock(side_effect=ExchangeError),
|
||||||
cancel_order=cancel_order_mock,
|
cancel_order=cancel_order_mock,
|
||||||
|
|
Loading…
Reference in New Issue
Block a user