Fix mock trade 1 status

This commit is contained in:
Matthias
2023-08-24 17:53:46 +02:00
parent 0f73e38f98
commit 0cc7039232
3 changed files with 26 additions and 24 deletions

View File

@@ -22,15 +22,15 @@ def mock_order_1(is_short: bool):
return {
'id': f'1234_{direc(is_short)}',
'symbol': 'ETH/BTC',
'status': 'closed',
'status': 'open',
'side': entry_side(is_short),
'type': 'limit',
'price': 0.123,
'average': 0.123,
'amount': 123.0,
'filled': 123.0,
'filled': 50.0,
'cost': 15.129,
'remaining': 0.0,
'remaining': 123.0 - 50.0,
}

View File

@@ -1969,9 +1969,9 @@ def test_select_order(fee, is_short):
# Open buy order, no sell order
order = trades[0].select_order(trades[0].entry_side, True)
assert order is None
order = trades[0].select_order(trades[0].entry_side, False)
assert order is not None
order = trades[0].select_order(trades[0].entry_side, False)
assert order is None
order = trades[0].select_order(trades[0].exit_side, None)
assert order is None
@@ -2442,7 +2442,16 @@ def test_select_filled_orders(fee):
# Closed buy order, no sell order
orders = trades[0].select_filled_orders('buy')
assert isinstance(orders, list)
assert len(orders) == 0
orders = trades[0].select_filled_orders('sell')
assert orders is not None
assert len(orders) == 0
# closed buy order, and closed sell order
orders = trades[1].select_filled_orders('buy')
assert isinstance(orders, list)
assert len(orders) == 1
order = orders[0]
assert order.amount > 0
@@ -2450,33 +2459,25 @@ def test_select_filled_orders(fee):
assert order.side == 'buy'
assert order.ft_order_side == 'buy'
assert order.status == 'closed'
orders = trades[0].select_filled_orders('sell')
assert orders is not None
assert len(orders) == 0
# closed buy order, and closed sell order
orders = trades[1].select_filled_orders('buy')
assert orders is not None
assert len(orders) == 1
orders = trades[1].select_filled_orders('sell')
assert orders is not None
assert isinstance(orders, list)
assert len(orders) == 1
# Has open buy order
orders = trades[3].select_filled_orders('buy')
assert orders is not None
assert isinstance(orders, list)
assert len(orders) == 0
orders = trades[3].select_filled_orders('sell')
assert orders is not None
assert isinstance(orders, list)
assert len(orders) == 0
# Open sell order
orders = trades[4].select_filled_orders('buy')
assert orders is not None
assert isinstance(orders, list)
assert len(orders) == 1
orders = trades[4].select_filled_orders('sell')
assert orders is not None
assert isinstance(orders, list)
assert len(orders) == 0

View File

@@ -5387,7 +5387,7 @@ def test_startup_update_open_orders(mocker, default_conf_usdt, fee, caplog, is_s
freqtrade.config['dry_run'] = False
freqtrade.startup_update_open_orders()
assert len(Order.get_open_orders()) == 3
assert len(Order.get_open_orders()) == 4
matching_buy_order = mock_order_4(is_short=is_short)
matching_buy_order.update({
'status': 'closed',
@@ -5395,7 +5395,7 @@ def test_startup_update_open_orders(mocker, default_conf_usdt, fee, caplog, is_s
mocker.patch(f'{EXMS}.fetch_order', return_value=matching_buy_order)
freqtrade.startup_update_open_orders()
# Only stoploss and sell orders are kept open
assert len(Order.get_open_orders()) == 2
assert len(Order.get_open_orders()) == 3
caplog.clear()
mocker.patch(f'{EXMS}.fetch_order', side_effect=ExchangeError)
@@ -5407,7 +5407,7 @@ def test_startup_update_open_orders(mocker, default_conf_usdt, fee, caplog, is_s
# Orders which are no longer found after X days should be assumed as canceled.
freqtrade.startup_update_open_orders()
assert log_has_re(r"Order is older than \d days.*", caplog)
assert hto_mock.call_count == 2
assert hto_mock.call_count == 3
assert hto_mock.call_args_list[0][0][0]['status'] == 'canceled'
assert hto_mock.call_args_list[1][0][0]['status'] == 'canceled'
@@ -5561,14 +5561,15 @@ def test_handle_insufficient_funds(mocker, default_conf_usdt, fee, is_short, cap
caplog.clear()
# No open order
trade = trades[0]
trade = trades[1]
reset_open_orders(trade)
assert trade.open_order_id is None
assert trade.stoploss_order_id is None
freqtrade.handle_insufficient_funds(trade)
order = mock_order_1(is_short=is_short)
assert log_has_re(r"Order Order(.*order_id=" + order['id'] + ".*) is no longer open.", caplog)
order = trade.orders[0]
assert log_has_re(r"Order Order(.*order_id=" + order.order_id + ".*) is no longer open.",
caplog)
assert mock_fo.call_count == 0
assert mock_uts.call_count == 0
# No change to orderid - as update_trade_state is mocked