def test_clean_dry_run_db(default_conf, fee): # Simulate dry_run entries trade = Trade( pair='ETH/BTC', stake_amount=0.001, amount=123.0, fee_open=fee.return_value, fee_close=fee.return_value, open_rate=0.123, exchange='bittrex', open_order_id='dry_run_buy_12345' ) Trade.session.add(trade) trade = Trade( pair='ETC/BTC', stake_amount=0.001, amount=123.0, fee_open=fee.return_value, fee_close=fee.return_value, open_rate=0.123, exchange='bittrex', open_order_id='dry_run_sell_12345' ) Trade.session.add(trade) # Simulate prod entry trade = Trade( pair='ETC/BTC', stake_amount=0.001, amount=123.0, fee_open=fee.return_value, fee_close=fee.return_value, open_rate=0.123, exchange='bittrex', open_order_id='prod_buy_12345' ) Trade.session.add(trade) # We have 3 entries: 2 dry_run, 1 prod assert len(Trade.query.filter(Trade.open_order_id.isnot(None)).all()) == 3 clean_dry_run_db() # We have now only the prod assert len(Trade.query.filter(Trade.open_order_id.isnot(None)).all()) == 1
def test_clean_dry_run_db(default_conf): init(default_conf, create_engine('sqlite://')) # Simulate dry_run entries trade = Trade( pair='BTC_ETH', stake_amount=0.001, amount=123.0, fee=0.0025, open_rate=0.123, exchange='BITTREX', open_order_id='dry_run_buy_12345' ) Trade.session.add(trade) trade = Trade( pair='BTC_ETC', stake_amount=0.001, amount=123.0, fee=0.0025, open_rate=0.123, exchange='BITTREX', open_order_id='dry_run_sell_12345' ) Trade.session.add(trade) # Simulate prod entry trade = Trade( pair='BTC_ETC', stake_amount=0.001, amount=123.0, fee=0.0025, open_rate=0.123, exchange='BITTREX', open_order_id='prod_buy_12345' ) Trade.session.add(trade) # We have 3 entries: 2 dry_run, 1 prod assert len(Trade.query.filter(Trade.open_order_id.isnot(None)).all()) == 3 clean_dry_run_db() # We have now only the prod assert len(Trade.query.filter(Trade.open_order_id.isnot(None)).all()) == 1