diff --git a/tests/exchange/test_exchange.py b/tests/exchange/test_exchange.py index adb8b7497..317d2dcf2 100644 --- a/tests/exchange/test_exchange.py +++ b/tests/exchange/test_exchange.py @@ -15,9 +15,9 @@ from freqtrade.exceptions import (DDosProtection, DependencyException, ExchangeE InsufficientFundsError, InvalidOrderException, OperationalException, PricingError, TemporaryError) from freqtrade.exchange import (Binance, Bittrex, Exchange, Kraken, amount_to_precision, - date_minus_candles, market_is_active, price_to_precision, - timeframe_to_minutes, timeframe_to_msecs, timeframe_to_next_date, - timeframe_to_prev_date, timeframe_to_seconds) + market_is_active, price_to_precision, timeframe_to_minutes, + timeframe_to_msecs, timeframe_to_next_date, timeframe_to_prev_date, + timeframe_to_seconds) from freqtrade.exchange.common import (API_FETCH_ORDER_RETRY_COUNT, API_RETRY_COUNT, calculate_backoff, remove_exchange_credentials) from freqtrade.exchange.exchange import amount_to_contract_precision @@ -3719,16 +3719,6 @@ def test_timeframe_to_next_date(): assert timeframe_to_next_date("5m", date) == date + timedelta(minutes=5) -def test_date_minus_candles(): - - date = datetime(2019, 8, 12, 13, 25, 0, tzinfo=timezone.utc) - - assert date_minus_candles("5m", 3, date) == date - timedelta(minutes=15) - assert date_minus_candles("5m", 5, date) == date - timedelta(minutes=25) - assert date_minus_candles("1m", 6, date) == date - timedelta(minutes=6) - assert date_minus_candles("1h", 3, date) == date - timedelta(hours=3, minutes=25) - assert date_minus_candles("1h", 3) == timeframe_to_prev_date('1h') - timedelta(hours=3) - @pytest.mark.parametrize( "market_symbol,base,quote,exchange,spot,margin,futures,trademode,add_dict,expected_result", diff --git a/tests/exchange/test_exchange_utils.py b/tests/exchange/test_exchange_utils.py index db206ab98..bee64bf4f 100644 --- a/tests/exchange/test_exchange_utils.py +++ b/tests/exchange/test_exchange_utils.py @@ -1,9 +1,11 @@ # pragma pylint: disable=missing-docstring, protected-access, invalid-name +from datetime import datetime, timedelta, timezone import pytest from freqtrade.enums import RunMode from freqtrade.exceptions import OperationalException +from freqtrade.exchange import date_minus_candles, timeframe_to_prev_date from freqtrade.exchange.check_exchange import check_exchange from tests.conftest import log_has_re @@ -83,3 +85,14 @@ def test_check_exchange(default_conf, caplog) -> None: with pytest.raises(OperationalException, match=r'This command requires a configured exchange.*'): check_exchange(default_conf) + + +def test_date_minus_candles(): + + date = datetime(2019, 8, 12, 13, 25, 0, tzinfo=timezone.utc) + + assert date_minus_candles("5m", 3, date) == date - timedelta(minutes=15) + assert date_minus_candles("5m", 5, date) == date - timedelta(minutes=25) + assert date_minus_candles("1m", 6, date) == date - timedelta(minutes=6) + assert date_minus_candles("1h", 3, date) == date - timedelta(hours=3, minutes=25) + assert date_minus_candles("1h", 3) == timeframe_to_prev_date('1h') - timedelta(hours=3)