@@ -2028,6 +2028,7 @@ def test_get_conversion_rate(default_conf_usdt, mocker, exchange_name):
2028
2028
mocker .patch (f"{ EXMS } .exchange_has" , return_value = True )
2029
2029
api_mock .fetch_tickers = MagicMock (side_effect = [tick , tick2 ])
2030
2030
api_mock .fetch_bids_asks = MagicMock (return_value = {})
2031
+ default_conf_usdt ["trading_mode" ] = "futures"
2031
2032
2032
2033
exchange = get_patched_exchange (mocker , default_conf_usdt , api_mock , exchange = exchange_name )
2033
2034
# retrieve original ticker
@@ -2045,6 +2046,13 @@ def test_get_conversion_rate(default_conf_usdt, mocker, exchange_name):
2045
2046
# Only the call to the "others" market
2046
2047
assert api_mock .fetch_tickers .call_count == 1
2047
2048
2049
+ if exchange_name == "binance" :
2050
+ # Special binance case of BNFCR matching USDT.
2051
+ assert exchange .get_conversion_rate ("BNFCR" , "USDT" ) is None
2052
+ assert exchange .get_conversion_rate ("BNFCR" , "USDC" ) == 1
2053
+ assert exchange .get_conversion_rate ("USDT" , "BNFCR" ) is None
2054
+ assert exchange .get_conversion_rate ("USDC" , "BNFCR" ) == 1
2055
+
2048
2056
2049
2057
@pytest .mark .parametrize ("exchange_name" , EXCHANGES )
2050
2058
def test_fetch_ticker (default_conf , mocker , exchange_name ):
@@ -4721,7 +4729,7 @@ def test_extract_cost_curr_rate(mocker, default_conf, order, expected) -> None:
4721
4729
],
4722
4730
)
4723
4731
def test_calculate_fee_rate (mocker , default_conf , order , expected , unknown_fee_rate ) -> None :
4724
- mocker .patch (f"{ EXMS } .fetch_ticker " , return_value = {"last" : 0.081 })
4732
+ mocker .patch (f"{ EXMS } .get_tickers " , return_value = {"NEO/BTC" : { " last" : 0.081 } })
4725
4733
if unknown_fee_rate :
4726
4734
default_conf ["exchange" ]["unknown_fee_rate" ] = unknown_fee_rate
4727
4735
@@ -4898,7 +4906,7 @@ def test_set_margin_mode(mocker, default_conf, margin_mode):
4898
4906
("okx" , TradingMode .FUTURES , MarginMode .ISOLATED , False ),
4899
4907
# * Remove once implemented
4900
4908
("binance" , TradingMode .MARGIN , MarginMode .CROSS , True ),
4901
- ("binance" , TradingMode .FUTURES , MarginMode .CROSS , True ),
4909
+ ("binance" , TradingMode .FUTURES , MarginMode .CROSS , False ),
4902
4910
("kraken" , TradingMode .MARGIN , MarginMode .CROSS , True ),
4903
4911
("kraken" , TradingMode .FUTURES , MarginMode .CROSS , True ),
4904
4912
("gate" , TradingMode .MARGIN , MarginMode .CROSS , True ),
0 commit comments