mirror of
https://github.com/freqtrade/freqtrade.git
synced 2026-01-20 14:00:38 +00:00
Improve test correctness
This commit is contained in:
@@ -600,7 +600,9 @@ def test_calc_open_close_trade_price(
|
||||
|
||||
|
||||
@pytest.mark.usefixtures("init_persistence")
|
||||
def test_trade_close(fee):
|
||||
def test_trade_close(fee, time_machine):
|
||||
time_machine.move_to("2022-09-01 05:00:00 +00:00", tick=False)
|
||||
|
||||
trade = Trade(
|
||||
pair='ADA/USDT',
|
||||
stake_amount=60.0,
|
||||
@@ -609,7 +611,7 @@ def test_trade_close(fee):
|
||||
is_open=True,
|
||||
fee_open=fee.return_value,
|
||||
fee_close=fee.return_value,
|
||||
open_date=datetime.now(tz=timezone.utc) - timedelta(minutes=10),
|
||||
open_date=dt_now() - timedelta(minutes=10),
|
||||
interest_rate=0.0005,
|
||||
exchange='binance',
|
||||
trading_mode=margin,
|
||||
@@ -628,6 +630,7 @@ def test_trade_close(fee):
|
||||
status="closed",
|
||||
order_type="limit",
|
||||
side=trade.entry_side,
|
||||
order_filled_date=trade.open_date,
|
||||
))
|
||||
trade.orders.append(Order(
|
||||
ft_order_side=trade.exit_side,
|
||||
@@ -642,6 +645,7 @@ def test_trade_close(fee):
|
||||
status="closed",
|
||||
order_type="limit",
|
||||
side=trade.exit_side,
|
||||
order_filled_date=dt_now(),
|
||||
))
|
||||
assert trade.close_profit is None
|
||||
assert trade.close_date is None
|
||||
@@ -650,14 +654,15 @@ def test_trade_close(fee):
|
||||
assert trade.is_open is False
|
||||
assert pytest.approx(trade.close_profit) == 0.094513715
|
||||
assert trade.close_date is not None
|
||||
assert trade.close_date_utc == dt_now()
|
||||
|
||||
new_date = datetime(2020, 2, 2, 15, 6, 1),
|
||||
assert trade.close_date != new_date
|
||||
new_date = dt_now() + timedelta(minutes=5)
|
||||
assert trade.close_date_utc != new_date
|
||||
# Close should NOT update close_date if the trade has been closed already
|
||||
assert trade.is_open is False
|
||||
trade.close_date = new_date
|
||||
trade.close(2.2)
|
||||
assert trade.close_date == new_date
|
||||
assert trade.close_date_utc == new_date
|
||||
|
||||
|
||||
@pytest.mark.usefixtures("init_persistence")
|
||||
|
||||
Reference in New Issue
Block a user