Browse Source

🎨 [pre-commit.ci] Auto format from pre-commit.com hooks

pull/13674/head
pre-commit-ci[bot] 3 months ago
parent
commit
b8c46a01a5
  1. 15
      tests/test_include_more_routes.py
  2. 3
      tests/test_route_with_multiple_methods.py

15
tests/test_include_more_routes.py

@ -1,8 +1,8 @@
import pytest
from fastapi import APIRouter, FastAPI, Request from fastapi import APIRouter, FastAPI, Request
from fastapi.responses import JSONResponse from fastapi.responses import JSONResponse
from fastapi.testclient import TestClient from fastapi.testclient import TestClient
from pydantic import BaseModel from pydantic import BaseModel
import pytest
# ====================== # ======================
# Configuração do app e rotas # Configuração do app e rotas
@ -23,7 +23,9 @@ async def read_items(request: Request):
try: try:
dados = await request.json() dados = await request.json()
item = Item(**dados) item = Item(**dados)
return JSONResponse({"message": "Item criado", "item": item.model_dump()}, status_code=201) return JSONResponse(
{"message": "Item criado", "item": item.model_dump()}, status_code=201
)
except Exception: except Exception:
return JSONResponse({"detail": "Erro ao processar JSON"}, status_code=400) return JSONResponse({"detail": "Erro ao processar JSON"}, status_code=400)
return JSONResponse({"hello": "world"}) return JSONResponse({"hello": "world"})
@ -50,7 +52,7 @@ def test_post_items():
assert resposta.status_code == 201 assert resposta.status_code == 201
assert resposta.json() == { assert resposta.json() == {
"message": "Item criado", "message": "Item criado",
"item": {"nome": "Caderno", "quantidade": 10} "item": {"nome": "Caderno", "quantidade": 10},
} }
@ -87,13 +89,16 @@ def test_method_not_allowed():
# Testa múltiplos métodos HTTP para a mesma rota usando parametrização # Testa múltiplos métodos HTTP para a mesma rota usando parametrização
# Verifica se cada método responde com o status esperado # Verifica se cada método responde com o status esperado
@pytest.mark.parametrize("metodo,status_esperado", [ @pytest.mark.parametrize(
"metodo,status_esperado",
[
("GET", 200), ("GET", 200),
("POST", 201), ("POST", 201),
("PUT", 405), ("PUT", 405),
("DELETE", 405), ("DELETE", 405),
("PATCH", 405), ("PATCH", 405),
]) ],
)
def test_varios_metodos(metodo, status_esperado): def test_varios_metodos(metodo, status_esperado):
payload = {"nome": "Caneta", "quantidade": 1} payload = {"nome": "Caneta", "quantidade": 1}
resposta = client.request(metodo, "/items/", json=payload) resposta = client.request(metodo, "/items/", json=payload)

3
tests/test_route_with_multiple_methods.py

@ -1,8 +1,9 @@
# https://github.com/fastapi/fastapi/issues/10180 # https://github.com/fastapi/fastapi/issues/10180
from fastapi import FastAPI, APIRouter from fastapi import APIRouter, FastAPI
from fastapi.testclient import TestClient from fastapi.testclient import TestClient
def test_mount_subapp_on_apirouter_should_not_work(): def test_mount_subapp_on_apirouter_should_not_work():
app = FastAPI() app = FastAPI()
router = APIRouter(prefix="/api") router = APIRouter(prefix="/api")

Loading…
Cancel
Save