Add tests for sl_order_with_result
This commit is contained in:
		| @@ -2084,6 +2084,47 @@ def test_cancel_stoploss_order(default_conf, mocker, exchange_name): | ||||
|                            order_id='_', pair='TKN/BTC') | ||||
|  | ||||
|  | ||||
| @pytest.mark.parametrize("exchange_name", EXCHANGES) | ||||
| def test_cancel_stoploss_order_with_result(default_conf, mocker, exchange_name): | ||||
|     default_conf['dry_run'] = False | ||||
|     mocker.patch('freqtrade.exchange.Exchange.fetch_stoploss_order', return_value={'for': 123}) | ||||
|     mocker.patch('freqtrade.exchange.Ftx.fetch_stoploss_order', return_value={'for': 123}) | ||||
|     exchange = get_patched_exchange(mocker, default_conf, id=exchange_name) | ||||
|  | ||||
|     mocker.patch('freqtrade.exchange.Exchange.cancel_stoploss_order', | ||||
|                  return_value={'fee': {}, 'status': 'canceled', 'amount': 1234}) | ||||
|     mocker.patch('freqtrade.exchange.Ftx.cancel_stoploss_order', | ||||
|                  return_value={'fee': {}, 'status': 'canceled', 'amount': 1234}) | ||||
|     co = exchange.cancel_stoploss_order_with_result(order_id='_', pair='TKN/BTC', amount=555) | ||||
|     assert co == {'fee': {}, 'status': 'canceled', 'amount': 1234} | ||||
|  | ||||
|     mocker.patch('freqtrade.exchange.Exchange.cancel_stoploss_order', | ||||
|                  return_value='canceled') | ||||
|     mocker.patch('freqtrade.exchange.Ftx.cancel_stoploss_order', | ||||
|                  return_value='canceled') | ||||
|     # Fall back to fetch_stoploss_order | ||||
|     co = exchange.cancel_stoploss_order_with_result(order_id='_', pair='TKN/BTC', amount=555) | ||||
|     assert co == {'for': 123} | ||||
|  | ||||
|     mocker.patch('freqtrade.exchange.Exchange.fetch_stoploss_order', | ||||
|                  side_effect=InvalidOrderException("")) | ||||
|     mocker.patch('freqtrade.exchange.Ftx.fetch_stoploss_order', | ||||
|                  side_effect=InvalidOrderException("")) | ||||
|  | ||||
|     co = exchange.cancel_stoploss_order_with_result(order_id='_', pair='TKN/BTC', amount=555) | ||||
|     assert co['amount'] == 555 | ||||
|     assert co == {'fee': {}, 'status': 'canceled', 'amount': 555, 'info': {}} | ||||
|  | ||||
|     with pytest.raises(InvalidOrderException): | ||||
|         mocker.patch('freqtrade.exchange.Exchange.cancel_stoploss_order', | ||||
|                      side_effect=InvalidOrderException("Did not find order")) | ||||
|         mocker.patch('freqtrade.exchange.Ftx.cancel_stoploss_order', | ||||
|                      side_effect=InvalidOrderException("Did not find order")) | ||||
|         exchange = get_patched_exchange(mocker, default_conf, id=exchange_name) | ||||
|         exchange.cancel_stoploss_order_with_result(order_id='_', pair='TKN/BTC', amount=123) | ||||
|  | ||||
|  | ||||
|  | ||||
| @pytest.mark.parametrize("exchange_name", EXCHANGES) | ||||
| def test_fetch_order(default_conf, mocker, exchange_name): | ||||
|     default_conf['dry_run'] = True | ||||
|   | ||||
		Reference in New Issue
	
	Block a user