Coverage for docs_src / handling_errors / tutorial005_py310.py: 100%

15 statements  

« prev     ^ index     » next       coverage.py v7.13.3, created at 2026-02-12 18:15 +0000

1from fastapi import FastAPI, Request 1abcd

2from fastapi.encoders import jsonable_encoder 1abcd

3from fastapi.exceptions import RequestValidationError 1abcd

4from fastapi.responses import JSONResponse 1abcd

5from pydantic import BaseModel 1abcd

6 

7app = FastAPI() 1abcd

8 

9 

10@app.exception_handler(RequestValidationError) 1abcd

11async def validation_exception_handler(request: Request, exc: RequestValidationError): 1abcd

12 return JSONResponse( 1efg

13 status_code=422, 

14 content=jsonable_encoder({"detail": exc.errors(), "body": exc.body}), 

15 ) 

16 

17 

18class Item(BaseModel): 1abcd

19 title: str 1abcd

20 size: int 1abcd

21 

22 

23@app.post("/items/") 1abcd

24async def create_item(item: Item): 1abcd

25 return item 1hij