我尝试用 pytest 测试我的端点
主要.py:
from fastapi import FastAPI, status, HTTPException, Depends
from sqlalchemy.ext.asyncio import AsyncSession
from .schema import ClientIn, ClientOut, ClientInWithID, Client, ValidationErrorSchema
from . import clients
from .database import SessionLocal
app = FastAPI()
async def get_db() -> AsyncSession:
if hasattr(get_db, "db"):
db: AsyncSession = get_db.db
return db
db = SessionLocal()
setattr(get_db, "db", db)
return db
@app.post("/client/",
response_model=ClientOut,
tags=["client"],
responses={422: {"model": ValidationErrorSchema}}
)
async def create_client(client_in: ClientIn, db: AsyncSession = Depends(get_db)) -> Client:
client = await clients.create_client(db, client_in)
return client …Run Code Online (Sandbox Code Playgroud)