Add test for refresh_latest_ohlcv caching
This commit is contained in:
		| @@ -1564,13 +1564,16 @@ def test_refresh_latest_ohlcv(mocker, default_conf, caplog) -> None: | |||||||
|     pairs = [('IOTA/ETH', '5m'), ('XRP/ETH', '5m')] |     pairs = [('IOTA/ETH', '5m'), ('XRP/ETH', '5m')] | ||||||
|     # empty dicts |     # empty dicts | ||||||
|     assert not exchange._klines |     assert not exchange._klines | ||||||
|     exchange.refresh_latest_ohlcv(pairs, cache=False) |     res = exchange.refresh_latest_ohlcv(pairs, cache=False) | ||||||
|     # No caching |     # No caching | ||||||
|     assert not exchange._klines |     assert not exchange._klines | ||||||
|  |  | ||||||
|  |     assert len(res) == len(pairs) | ||||||
|     assert exchange._api_async.fetch_ohlcv.call_count == 2 |     assert exchange._api_async.fetch_ohlcv.call_count == 2 | ||||||
|     exchange._api_async.fetch_ohlcv.reset_mock() |     exchange._api_async.fetch_ohlcv.reset_mock() | ||||||
|  |  | ||||||
|     exchange.refresh_latest_ohlcv(pairs) |     res = exchange.refresh_latest_ohlcv(pairs) | ||||||
|  |     assert len(res) == len(pairs) | ||||||
|  |  | ||||||
|     assert log_has(f'Refreshing candle (OHLCV) data for {len(pairs)} pairs', caplog) |     assert log_has(f'Refreshing candle (OHLCV) data for {len(pairs)} pairs', caplog) | ||||||
|     assert exchange._klines |     assert exchange._klines | ||||||
| @@ -1587,12 +1590,16 @@ def test_refresh_latest_ohlcv(mocker, default_conf, caplog) -> None: | |||||||
|         assert exchange.klines(pair, copy=False) is exchange.klines(pair, copy=False) |         assert exchange.klines(pair, copy=False) is exchange.klines(pair, copy=False) | ||||||
|  |  | ||||||
|     # test caching |     # test caching | ||||||
|     exchange.refresh_latest_ohlcv([('IOTA/ETH', '5m'), ('XRP/ETH', '5m')]) |     res = exchange.refresh_latest_ohlcv([('IOTA/ETH', '5m'), ('XRP/ETH', '5m')]) | ||||||
|  |     assert len(res) == len(pairs) | ||||||
|  |  | ||||||
|     assert exchange._api_async.fetch_ohlcv.call_count == 2 |     assert exchange._api_async.fetch_ohlcv.call_count == 2 | ||||||
|     assert log_has(f"Using cached candle (OHLCV) data for pair {pairs[0][0]}, " |     assert log_has(f"Using cached candle (OHLCV) data for pair {pairs[0][0]}, " | ||||||
|                    f"timeframe {pairs[0][1]} ...", |                    f"timeframe {pairs[0][1]} ...", | ||||||
|                    caplog) |                    caplog) | ||||||
|  |     res = exchange.refresh_latest_ohlcv([('IOTA/ETH', '5m'), ('XRP/ETH', '5m'), ('XRP/ETH', '1d')], | ||||||
|  |                                         cache=False) | ||||||
|  |     assert len(res) == 3 | ||||||
|  |  | ||||||
|  |  | ||||||
| @pytest.mark.asyncio | @pytest.mark.asyncio | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user