Browse Source

Update tests to check for custom deprecation warning

pull/14605/head
Sebastián Ramírez 7 months ago
parent
commit
f7b0e3d038
  1. 9
      tests/test_compat_params_v1.py
  2. 9
      tests/test_pydantic_v1_deprecation_warnings.py
  3. 3
      tests/test_regex_deprecated_body.py
  4. 3
      tests/test_regex_deprecated_params.py
  5. 21
      tests/test_schema_extra_examples.py
  6. 3
      tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial002.py
  7. 3
      tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial003.py
  8. 3
      tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial004.py
  9. 2
      tests/test_tutorial/test_query_params_str_validations/test_tutorial004.py
  10. 3
      tests/test_tutorial/test_request_form_models/test_tutorial002_pv1.py
  11. 3
      tests/test_tutorial/test_schema_extra_example/test_tutorial001_pv1.py

9
tests/test_compat_params_v1.py

@ -3,6 +3,7 @@ import warnings
from typing import Optional
import pytest
from fastapi.exceptions import FastAPIDeprecationWarning
from tests.utils import skip_module_if_py_gte_314
@ -504,23 +505,23 @@ def test_body_repr():
# Deprecation warning tests for regex parameter
def test_query_regex_deprecation_warning():
with pytest.warns(DeprecationWarning, match="`regex` has been deprecated"):
with pytest.warns(FastAPIDeprecationWarning, match="`regex` has been deprecated"):
Query(regex="^test$")
def test_body_regex_deprecation_warning():
with pytest.warns(DeprecationWarning, match="`regex` has been deprecated"):
with pytest.warns(FastAPIDeprecationWarning, match="`regex` has been deprecated"):
Body(regex="^test$")
# Deprecation warning tests for example parameter
def test_query_example_deprecation_warning():
with pytest.warns(DeprecationWarning, match="`example` has been deprecated"):
with pytest.warns(FastAPIDeprecationWarning, match="`example` has been deprecated"):
Query(example="test example")
def test_body_example_deprecation_warning():
with pytest.warns(DeprecationWarning, match="`example` has been deprecated"):
with pytest.warns(FastAPIDeprecationWarning, match="`example` has been deprecated"):
Body(example={"test": "example"})

9
tests/test_pydantic_v1_deprecation_warnings.py

@ -1,6 +1,7 @@
import sys
import pytest
from fastapi.exceptions import FastAPIDeprecationWarning
from tests.utils import skip_module_if_py_gte_314
@ -19,7 +20,7 @@ def test_warns_pydantic_v1_model_in_endpoint_param() -> None:
app = FastAPI()
with pytest.warns(
DeprecationWarning,
FastAPIDeprecationWarning,
match=r"pydantic\.v1 is deprecated.*Please update the param data:",
):
@ -40,7 +41,7 @@ def test_warns_pydantic_v1_model_in_return_type() -> None:
app = FastAPI()
with pytest.warns(
DeprecationWarning,
FastAPIDeprecationWarning,
match=r"pydantic\.v1 is deprecated.*Please update the response model",
):
@ -61,7 +62,7 @@ def test_warns_pydantic_v1_model_in_response_model() -> None:
app = FastAPI()
with pytest.warns(
DeprecationWarning,
FastAPIDeprecationWarning,
match=r"pydantic\.v1 is deprecated.*Please update the response model",
):
@ -82,7 +83,7 @@ def test_warns_pydantic_v1_model_in_additional_responses_model() -> None:
app = FastAPI()
with pytest.warns(
DeprecationWarning,
FastAPIDeprecationWarning,
match=r"pydantic\.v1 is deprecated.*In responses=\{\}, please update",
):

3
tests/test_regex_deprecated_body.py

@ -3,6 +3,7 @@ from typing import Annotated
import pytest
from dirty_equals import IsDict
from fastapi import FastAPI, Form
from fastapi.exceptions import FastAPIDeprecationWarning
from fastapi.testclient import TestClient
from .utils import needs_py310
@ -10,7 +11,7 @@ from .utils import needs_py310
def get_client():
app = FastAPI()
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.post("/items/")
async def read_items(

3
tests/test_regex_deprecated_params.py

@ -3,6 +3,7 @@ from typing import Annotated
import pytest
from dirty_equals import IsDict
from fastapi import FastAPI, Query
from fastapi.exceptions import FastAPIDeprecationWarning
from fastapi.testclient import TestClient
from .utils import needs_py310
@ -10,7 +11,7 @@ from .utils import needs_py310
def get_client():
app = FastAPI()
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.get("/items/")
async def read_items(

21
tests/test_schema_extra_examples.py

@ -3,6 +3,7 @@ from typing import Union
import pytest
from dirty_equals import IsDict
from fastapi import Body, Cookie, FastAPI, Header, Path, Query
from fastapi.exceptions import FastAPIDeprecationWarning
from fastapi.testclient import TestClient
from pydantic import BaseModel, ConfigDict
@ -21,7 +22,7 @@ def create_app():
def schema_extra(item: Item):
return item
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.post("/example/")
def example(item: Item = Body(example={"data": "Data in Body example"})):
@ -38,7 +39,7 @@ def create_app():
):
return item
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.post("/example_examples/")
def example_examples(
@ -83,7 +84,7 @@ def create_app():
# ):
# return lastname
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.get("/path_example/{item_id}")
def path_example(
@ -101,7 +102,7 @@ def create_app():
):
return item_id
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.get("/path_example_examples/{item_id}")
def path_example_examples(
@ -112,7 +113,7 @@ def create_app():
):
return item_id
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.get("/query_example/")
def query_example(
@ -132,7 +133,7 @@ def create_app():
):
return data
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.get("/query_example_examples/")
def query_example_examples(
@ -144,7 +145,7 @@ def create_app():
):
return data
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.get("/header_example/")
def header_example(
@ -167,7 +168,7 @@ def create_app():
):
return data
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.get("/header_example_examples/")
def header_example_examples(
@ -179,7 +180,7 @@ def create_app():
):
return data
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.get("/cookie_example/")
def cookie_example(
@ -199,7 +200,7 @@ def create_app():
):
return data
with pytest.warns(DeprecationWarning):
with pytest.warns(FastAPIDeprecationWarning):
@app.get("/cookie_example_examples/")
def cookie_example_examples(

3
tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial002.py

@ -2,6 +2,7 @@ import sys
import warnings
import pytest
from fastapi.exceptions import FastAPIDeprecationWarning
from inline_snapshot import snapshot
from tests.utils import skip_module_if_py_gte_314
@ -29,7 +30,7 @@ def get_client(request: pytest.FixtureRequest):
warnings.filterwarnings(
"ignore",
message=r"pydantic\.v1 is deprecated and will soon stop being supported by FastAPI\..*",
category=DeprecationWarning,
category=FastAPIDeprecationWarning,
)
mod = importlib.import_module(f"docs_src.pydantic_v1_in_v2.{request.param}")

3
tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial003.py

@ -2,6 +2,7 @@ import sys
import warnings
import pytest
from fastapi.exceptions import FastAPIDeprecationWarning
from inline_snapshot import snapshot
from tests.utils import skip_module_if_py_gte_314
@ -29,7 +30,7 @@ def get_client(request: pytest.FixtureRequest):
warnings.filterwarnings(
"ignore",
message=r"pydantic\.v1 is deprecated and will soon stop being supported by FastAPI\..*",
category=DeprecationWarning,
category=FastAPIDeprecationWarning,
)
mod = importlib.import_module(f"docs_src.pydantic_v1_in_v2.{request.param}")

3
tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial004.py

@ -2,6 +2,7 @@ import sys
import warnings
import pytest
from fastapi.exceptions import FastAPIDeprecationWarning
from inline_snapshot import snapshot
from tests.utils import skip_module_if_py_gte_314
@ -29,7 +30,7 @@ def get_client(request: pytest.FixtureRequest):
warnings.filterwarnings(
"ignore",
message=r"pydantic\.v1 is deprecated and will soon stop being supported by FastAPI\..*",
category=DeprecationWarning,
category=FastAPIDeprecationWarning,
)
mod = importlib.import_module(f"docs_src.pydantic_v1_in_v2.{request.param}")

2
tests/test_tutorial/test_query_params_str_validations/test_tutorial004.py

@ -18,7 +18,7 @@ from ...utils import needs_py310
marks=(
needs_py310,
pytest.mark.filterwarnings(
"ignore:`regex` has been deprecated, please use `pattern` instead:DeprecationWarning"
"ignore:`regex` has been deprecated, please use `pattern` instead:fastapi.exceptions.FastAPIDeprecationWarning"
),
),
),

3
tests/test_tutorial/test_request_form_models/test_tutorial002_pv1.py

@ -2,6 +2,7 @@ import importlib
import warnings
import pytest
from fastapi.exceptions import FastAPIDeprecationWarning
from fastapi.testclient import TestClient
from ...utils import needs_pydanticv1
@ -19,7 +20,7 @@ def get_client(request: pytest.FixtureRequest):
warnings.filterwarnings(
"ignore",
message=r"pydantic\.v1 is deprecated and will soon stop being supported by FastAPI\..*",
category=DeprecationWarning,
category=FastAPIDeprecationWarning,
)
mod = importlib.import_module(f"docs_src.request_form_models.{request.param}")

3
tests/test_tutorial/test_schema_extra_example/test_tutorial001_pv1.py

@ -2,6 +2,7 @@ import importlib
import warnings
import pytest
from fastapi.exceptions import FastAPIDeprecationWarning
from fastapi.testclient import TestClient
from inline_snapshot import snapshot
@ -20,7 +21,7 @@ def get_client(request: pytest.FixtureRequest):
warnings.filterwarnings(
"ignore",
message=r"pydantic\.v1 is deprecated and will soon stop being supported by FastAPI\..*",
category=DeprecationWarning,
category=FastAPIDeprecationWarning,
)
mod = importlib.import_module(f"docs_src.schema_extra_example.{request.param}")

Loading…
Cancel
Save