From 5bc84dca565f022eaa3454612a186921910b0c7a Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 10 Jul 2023 06:38:18 +0200 Subject: [PATCH] Fix from_json with new attributes --- freqtrade/persistence/trade_model.py | 2 ++ tests/persistence/test_trade_fromjson.py | 9 +++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/freqtrade/persistence/trade_model.py b/freqtrade/persistence/trade_model.py index 35a44e3fc..c8834c74f 100644 --- a/freqtrade/persistence/trade_model.py +++ b/freqtrade/persistence/trade_model.py @@ -1708,6 +1708,7 @@ class Trade(ModelBase, LocalTrade): order_obj = Order( amount=order["amount"], + ft_amount=order["amount"], ft_order_side=order["ft_order_side"], ft_pair=order["pair"], ft_is_open=order["is_open"], @@ -1722,6 +1723,7 @@ class Trade(ModelBase, LocalTrade): if order["order_filled_timestamp"] else None), order_type=order["order_type"], price=order["price"], + ft_price=order["price"], remaining=order["remaining"], ) trade.orders.append(order_obj) diff --git a/tests/persistence/test_trade_fromjson.py b/tests/persistence/test_trade_fromjson.py index 22053463d..2edfd18b8 100644 --- a/tests/persistence/test_trade_fromjson.py +++ b/tests/persistence/test_trade_fromjson.py @@ -1,8 +1,11 @@ from datetime import datetime, timezone +import pytest + from freqtrade.persistence.trade_model import Trade +@pytest.mark.usefixtures("init_persistence") def test_trade_fromjson(): """Test the Trade.from_json() method.""" trade_string = """{ @@ -168,14 +171,16 @@ def test_trade_fromjson(): ] }""" trade = Trade.from_json(trade_string) + Trade.session.add(trade) + Trade.commit() assert trade.id == 25 assert trade.pair == 'ETH/USDT' - assert trade.open_date == datetime(2022, 10, 18, 9, 12, 42, tzinfo=timezone.utc) + assert trade.open_date_utc == datetime(2022, 10, 18, 9, 12, 42, tzinfo=timezone.utc) assert isinstance(trade.open_date, datetime) assert trade.exit_reason == 'no longer good' assert len(trade.orders) == 5 last_o = trade.orders[-1] - assert last_o.order_filled_date == datetime(2022, 10, 18, 9, 45, 22, tzinfo=timezone.utc) + assert last_o.order_filled_utc == datetime(2022, 10, 18, 9, 45, 22, tzinfo=timezone.utc) assert isinstance(last_o.order_date, datetime)