async def test_acquire_conn(self): redis = RedisBackend() pool = FakePool() redis._pool = pool with patch("aiocache.backends.redis.aioredis.create_pool", MagicMock(return_value=pool)): assert await redis.acquire_conn() == pool.conn
async def test_release_conn(self): redis = RedisBackend() pool = FakePool() redis._pool = pool with patch("aiocache.backends.redis.aioredis.create_pool", MagicMock(return_value=pool)): conn = await redis.acquire_conn() await redis.release_conn(conn) redis._pool.release.assert_called_with(conn)
def test_setup_override(self): redis_backend = RedisBackend(db=2, password="******") assert redis_backend.endpoint == "127.0.0.1" assert redis_backend.port == 6379 assert redis_backend.db == 2 assert redis_backend.password == "pass"
def test_setup(self): redis_backend = RedisBackend() assert redis_backend.endpoint == "127.0.0.1" assert redis_backend.port == 6379 assert redis_backend.db == 0 assert redis_backend.password is None assert redis_backend.pool_min_size == 1 assert redis_backend.pool_max_size == 10
async def test_connect_sets_pool(self): with patch( "aiocache.backends.redis.aioredis.create_pool") as create_pool: pool = FakePool() create_pool.return_value = pool redis = RedisBackend() await redis._connect() assert redis._pool == pool
async def test_connect_locked(self, mocker): redis = RedisBackend() pool = FakePool() mocker.spy(redis._pool_lock, "acquire") mocker.spy(redis._pool_lock, "release") with patch("aiocache.backends.redis.aioredis.create_pool", MagicMock(return_value=pool)): assert await redis._connect() == pool assert redis._pool_lock.acquire.call_count == 1 assert redis._pool_lock.release.call_count == 1
def test_setup_casts(self): redis_backend = RedisBackend( db="2", port="6379", pool_min_size="1", pool_max_size="10", create_connection_timeout="1.5", ) assert redis_backend.db == 2 assert redis_backend.port == 6379 assert redis_backend.pool_min_size == 1 assert redis_backend.pool_max_size == 10 assert redis_backend.create_connection_timeout == 1.5
async def test_connect_calls_create_pool(self): with patch( "aiocache.backends.redis.aioredis.create_pool") as create_pool: pool = FakePool() create_pool.return_value = pool redis = RedisBackend() await redis._connect() create_pool.assert_called_with((redis.endpoint, redis.port), db=redis.db, password=redis.password, loop=redis._loop, encoding="utf-8", minsize=redis.pool_min_size, maxsize=redis.pool_max_size)
def redis(redis_pool): redis = RedisBackend() redis._pool = redis_pool yield redis
def test_parse_uri_path(self, path, expected): assert RedisBackend.parse_uri_path(path) == expected
def redis(): redis = RedisBackend() pool = FakePool() redis._connect = pool yield redis, pool
async def test_connect_with_pool(self): redis = RedisBackend() pool = FakePool() with patch("aiocache.backends.redis.aioredis.create_pool", MagicMock(return_value=pool)): assert await redis._connect() == pool