diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index 937ad43de..df147f964 100755 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -144,6 +144,7 @@ class Backtesting: self.init_backtest() def __del__(self): + logger.info('Inside Backtesting.__del__()') self.cleanup() @staticmethod @@ -151,6 +152,7 @@ class Backtesting: LoggingMixin.show_output = True PairLocks.use_db = True Trade.use_db = True + logger.info('Cleaned Backtest') def init_backtest_detail(self): # Load detail timeframe if specified diff --git a/freqtrade/rpc/api_server/api_backtest.py b/freqtrade/rpc/api_server/api_backtest.py index 41712632b..26b100408 100644 --- a/freqtrade/rpc/api_server/api_backtest.py +++ b/freqtrade/rpc/api_server/api_backtest.py @@ -172,6 +172,7 @@ def api_delete_backtest(ws_mode=Depends(is_webserver_mode)): "status_msg": "Backtest running", } if ApiServer._bt: + ApiServer._bt.cleanup() del ApiServer._bt ApiServer._bt = None del ApiServer._bt_data diff --git a/tests/conftest.py b/tests/conftest.py index cc07de1de..6c78e0497 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -33,6 +33,12 @@ from tests.conftest_trades_usdt import (mock_trade_usdt_1, mock_trade_usdt_2, mo logging.getLogger('').setLevel(logging.INFO) +@pytest.fixture(autouse=True) +def run_around_tests(): + yield + assert Trade.use_db + + # Do not mask numpy errors as warnings that no one read, raise the exсeption np.seterr(all='raise')