test: add bitget leverage prep test
This commit is contained in:
@@ -1,6 +1,5 @@
|
|||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
from sqlite3 import OperationalError
|
from unittest.mock import MagicMock, PropertyMock
|
||||||
from unittest.mock import MagicMock
|
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
@@ -159,3 +158,38 @@ def test_dry_run_liquidation_price_cross_bitget(default_conf, mocker):
|
|||||||
100,
|
100,
|
||||||
[],
|
[],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def test__lev_prep_bitget(default_conf, mocker):
|
||||||
|
api_mock = MagicMock()
|
||||||
|
api_mock.set_margin_mode = MagicMock()
|
||||||
|
api_mock.set_leverage = MagicMock()
|
||||||
|
type(api_mock).has = PropertyMock(return_value={"setMarginMode": True, "setLeverage": True})
|
||||||
|
exchange = get_patched_exchange(mocker, default_conf, api_mock, exchange="bitget")
|
||||||
|
exchange._lev_prep("BTC/USDC:USDC", 3.2, "buy")
|
||||||
|
|
||||||
|
assert api_mock.set_margin_mode.call_count == 0
|
||||||
|
assert api_mock.set_leverage.call_count == 0
|
||||||
|
|
||||||
|
# test in futures mode
|
||||||
|
api_mock.set_margin_mode.reset_mock()
|
||||||
|
api_mock.set_leverage.reset_mock()
|
||||||
|
default_conf["dry_run"] = False
|
||||||
|
|
||||||
|
default_conf["trading_mode"] = "futures"
|
||||||
|
default_conf["margin_mode"] = "isolated"
|
||||||
|
|
||||||
|
exchange = get_patched_exchange(mocker, default_conf, api_mock, exchange="bitget")
|
||||||
|
exchange._lev_prep("BTC/USDC:USDC", 3.2, "buy")
|
||||||
|
|
||||||
|
assert api_mock.set_margin_mode.call_count == 0
|
||||||
|
assert api_mock.set_leverage.call_count == 1
|
||||||
|
api_mock.set_leverage.assert_called_with(symbol="BTC/USDC:USDC", leverage=3.2)
|
||||||
|
|
||||||
|
api_mock.reset_mock()
|
||||||
|
|
||||||
|
exchange._lev_prep("BTC/USDC:USDC", 19.99, "sell")
|
||||||
|
|
||||||
|
assert api_mock.set_margin_mode.call_count == 0
|
||||||
|
assert api_mock.set_leverage.call_count == 1
|
||||||
|
api_mock.set_leverage.assert_called_with(symbol="BTC/USDC:USDC", leverage=19.99)
|
||||||
|
|||||||
Reference in New Issue
Block a user