From 8d70672beeb512bf9d78b68240471cc185a2cf82 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 28 Nov 2021 14:37:54 +0100 Subject: [PATCH] Enhance Regex to work for mark candles --- freqtrade/data/history/idatahandler.py | 2 +- tests/data/test_history.py | 15 ++++++++++----- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/freqtrade/data/history/idatahandler.py b/freqtrade/data/history/idatahandler.py index 04236e5a2..46fc5fcfe 100644 --- a/freqtrade/data/history/idatahandler.py +++ b/freqtrade/data/history/idatahandler.py @@ -23,7 +23,7 @@ logger = logging.getLogger(__name__) class IDataHandler(ABC): - _OHLCV_REGEX = r'^([a-zA-Z_]+)\-(\d+\S+)(?=\.)' + _OHLCV_REGEX = r'^([a-zA-Z_]+)\-(\d+\S)\-?([a-zA-Z_]*)?(?=\.)' def __init__(self, datadir: Path) -> None: self._datadir = datadir diff --git a/tests/data/test_history.py b/tests/data/test_history.py index 246e0ea84..af78a09af 100644 --- a/tests/data/test_history.py +++ b/tests/data/test_history.py @@ -670,18 +670,23 @@ def test_datahandler_ohlcv_get_pairs(testdatadir): # assert set(pairs) == {'UNITTEST/BTC'} -@pytest.mark.parametrize('filename,pair,timeframe', [ - ('XMR_BTC-5m.json', 'XMR_BTC', '5m'), - ('XMR_USDT-1h.h5', 'XMR_USDT', '1h'), - ('BTC_USDT-2h.jsongz', 'BTC_USDT', '2h'), +@pytest.mark.parametrize('filename,pair,timeframe,candletype', [ + ('XMR_BTC-5m.json', 'XMR_BTC', '5m', ''), + ('XMR_USDT-1h.h5', 'XMR_USDT', '1h', ''), + ('BTC_USDT-2h.jsongz', 'BTC_USDT', '2h', ''), + ('BTC_USDT-2h-mark.jsongz', 'BTC_USDT', '2h', 'mark'), + ('XMR_USDT-1h-mark.h5', 'XMR_USDT', '1h', 'mark'), + ('XMR_USDT-1h-random.h5', 'XMR_USDT', '1h', 'random'), + ('XMR_USDT_USDT-1h-mark.h5', 'XMR_USDT_USDT', '1h', 'mark'), ]) -def test_datahandler_ohlcv_regex(filename, pair, timeframe): +def test_datahandler_ohlcv_regex(filename, pair, timeframe, candletype): regex = JsonDataHandler._OHLCV_REGEX match = re.search(regex, filename) assert len(match.groups()) > 1 assert match[1] == pair assert match[2] == timeframe + assert match[3] == candletype def test_datahandler_ohlcv_get_available_data(testdatadir):