mirror of
https://github.com/long2ice/fastapi-cache.git
synced 2026-03-24 20:47:54 +00:00
ci: fix poetry
This commit is contained in:
2
.github/workflows/ci.yml
vendored
2
.github/workflows/ci.yml
vendored
@@ -8,7 +8,7 @@ jobs:
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: "3.x"
|
||||
- uses: abatilo/actions-poetry@v2.1.6
|
||||
- uses: abatilo/actions-poetry@v2
|
||||
- name: Config poetry
|
||||
run: poetry config experimental.new-installer false
|
||||
- name: CI
|
||||
|
||||
@@ -42,14 +42,17 @@ async def get_date():
|
||||
async def get_datetime(request: Request, response: Response):
|
||||
return {"now": pendulum.now()}
|
||||
|
||||
|
||||
@cache(namespace="test")
|
||||
async def func_kwargs(*unused_args, **kwargs):
|
||||
return kwargs
|
||||
|
||||
|
||||
@app.get("/kwargs")
|
||||
async def get_kwargs(name: str):
|
||||
return await func_kwargs(name, name=name)
|
||||
|
||||
|
||||
@app.get("/sync-me")
|
||||
@cache(namespace="test")
|
||||
def sync_me():
|
||||
|
||||
@@ -13,7 +13,7 @@ class RedisBackend(Backend):
|
||||
|
||||
async def get_with_ttl(self, key: str) -> Tuple[int, str]:
|
||||
async with self.redis.pipeline(transaction=not self.is_cluster) as pipe:
|
||||
return await (pipe.ttl(key).get(key).execute())
|
||||
return await pipe.ttl(key).get(key).execute()
|
||||
|
||||
async def get(self, key: str) -> Optional[str]:
|
||||
return await self.redis.get(key)
|
||||
@@ -27,4 +27,4 @@ class RedisBackend(Backend):
|
||||
return await self.redis.eval(lua, numkeys=0)
|
||||
elif key:
|
||||
return await self.redis.delete(key)
|
||||
return 0
|
||||
return 0
|
||||
|
||||
@@ -136,7 +136,9 @@ def cache(
|
||||
try:
|
||||
ttl, ret = await backend.get_with_ttl(cache_key)
|
||||
except Exception:
|
||||
logger.warning(f"Error retrieving cache key '{cache_key}' from backend:", exc_info=True)
|
||||
logger.warning(
|
||||
f"Error retrieving cache key '{cache_key}' from backend:", exc_info=True
|
||||
)
|
||||
ttl, ret = 0, None
|
||||
if not request:
|
||||
if ret is not None:
|
||||
@@ -145,7 +147,9 @@ def cache(
|
||||
try:
|
||||
await backend.set(cache_key, coder.encode(ret), expire)
|
||||
except Exception:
|
||||
logger.warning(f"Error setting cache key '{cache_key}' in backend:", exc_info=True)
|
||||
logger.warning(
|
||||
f"Error setting cache key '{cache_key}' in backend:", exc_info=True
|
||||
)
|
||||
return ret
|
||||
|
||||
if request.method != "GET":
|
||||
|
||||
@@ -37,7 +37,6 @@ def test_datetime() -> None:
|
||||
def test_date() -> None:
|
||||
"""Test path function without request or response arguments."""
|
||||
with TestClient(app) as client:
|
||||
|
||||
response = client.get("/date")
|
||||
assert pendulum.parse(response.json()) == pendulum.today()
|
||||
|
||||
@@ -68,8 +67,9 @@ def test_cache_response_obj() -> None:
|
||||
assert get_cache_response.headers.get("cache-control")
|
||||
assert get_cache_response.headers.get("etag")
|
||||
|
||||
|
||||
def test_kwargs() -> None:
|
||||
with TestClient(app) as client:
|
||||
name = "Jon"
|
||||
response = client.get("/kwargs", params = {"name": name})
|
||||
response = client.get("/kwargs", params={"name": name})
|
||||
assert response.json() == {"name": name}
|
||||
|
||||
Reference in New Issue
Block a user