def test_cache_cluster_batch_mode(redis_hosts): cache = CacheCluster(redis_hosts) @cache.cache() def cluster_batch_test_func(value): return value for i in range(5): assert cluster_batch_test_func(i) == i results = [] with cache.batch_mode(): for i in range(10): rv = cluster_batch_test_func(i) assert rv.is_pending assert rv.value is None results.append(rv) for i, rv in enumerate(results): assert rv.is_resolved assert rv.value == i for i in range(20): assert cluster_batch_test_func(i) == i