docstrings / formatting
This commit is contained in:
@@ -6,10 +6,11 @@ from utils.meme_util import MemeUtil
|
||||
|
||||
class Meme(FastAPI):
|
||||
"""
|
||||
Misc Endpoints
|
||||
Meme Endpoints
|
||||
"""
|
||||
|
||||
def __init__(self, app: FastAPI, my_util, constants) -> None:
|
||||
"""Initialize Meme endpoints."""
|
||||
self.app: FastAPI = app
|
||||
self.util = my_util
|
||||
self.meme_util = MemeUtil(constants)
|
||||
@@ -35,21 +36,47 @@ class Meme(FastAPI):
|
||||
)
|
||||
|
||||
async def get_meme_by_id(self, id: int, request: Request) -> Response:
|
||||
"""Get meme (image) by id"""
|
||||
"""
|
||||
Get meme image by ID.
|
||||
|
||||
Parameters:
|
||||
- **id** (int): Meme ID.
|
||||
- **request** (Request): The request object.
|
||||
|
||||
Returns:
|
||||
- **Response**: Image response or 404.
|
||||
"""
|
||||
meme_image = await self.meme_util.get_meme_by_id(id)
|
||||
if not meme_image:
|
||||
return Response(status_code=404, content="Not found")
|
||||
return Response(content=meme_image, media_type="image/png")
|
||||
|
||||
async def random_meme(self, request: Request) -> Response:
|
||||
"""Get random meme (image)"""
|
||||
"""
|
||||
Get a random meme image.
|
||||
|
||||
Parameters:
|
||||
- **request** (Request): The request object.
|
||||
|
||||
Returns:
|
||||
- **Response**: Image response or 404.
|
||||
"""
|
||||
meme_image = await self.meme_util.get_random_meme()
|
||||
if not meme_image:
|
||||
return Response(status_code=404, content="Not found")
|
||||
return Response(content=meme_image, media_type="image/png")
|
||||
|
||||
async def list_memes(self, page: int, request: Request) -> Response:
|
||||
"""Get meme (image) by id"""
|
||||
"""
|
||||
List memes with pagination.
|
||||
|
||||
Parameters:
|
||||
- **page** (int): Page number.
|
||||
- **request** (Request): The request object.
|
||||
|
||||
Returns:
|
||||
- **JSONResponse**: List of memes with paging info.
|
||||
"""
|
||||
meme_list = await self.meme_util.list_memes(page)
|
||||
page_count = await self.meme_util.get_page_count()
|
||||
return JSONResponse(
|
||||
|
Reference in New Issue
Block a user