id: cache
with:
path: ${{ env.pythonLocation }}
- key: ${{ runner.os }}-python-${{ env.pythonLocation }}-pydantic-v2-${{ hashFiles('pyproject.toml', 'requirements-tests.txt', 'requirements-docs-tests.txt') }}-test-v07
+ key: ${{ runner.os }}-python-${{ env.pythonLocation }}-pydantic-v2-${{ hashFiles('pyproject.toml', 'requirements-tests.txt', 'requirements-docs-tests.txt') }}-test-v08
- name: Install Dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: pip install -r requirements-tests.txt
id: cache
with:
path: ${{ env.pythonLocation }}
- key: ${{ runner.os }}-python-${{ env.pythonLocation }}-${{ matrix.pydantic-version }}-${{ hashFiles('pyproject.toml', 'requirements-tests.txt', 'requirements-docs-tests.txt') }}-test-v07
+ key: ${{ runner.os }}-python-${{ env.pythonLocation }}-${{ matrix.pydantic-version }}-${{ hashFiles('pyproject.toml', 'requirements-tests.txt', 'requirements-docs-tests.txt') }}-test-v08
- name: Install Dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: pip install -r requirements-tests.txt
try:
item = Item.model_validate(data)
except ValidationError as e:
- raise HTTPException(status_code=422, detail=e.errors())
+ raise HTTPException(status_code=422, detail=e.errors(include_url=False))
return item
from fastapi.exceptions import RequestErrorModel
from fastapi.types import IncEx, ModelNameMap, UnionType
from pydantic import BaseModel, create_model
-from pydantic.version import VERSION as PYDANTIC_VERSION
+from pydantic.version import VERSION as P_VERSION
from starlette.datastructures import UploadFile
from typing_extensions import Annotated, Literal, get_args, get_origin
+# Reassign variable to make it reexported for mypy
+PYDANTIC_VERSION = P_VERSION
PYDANTIC_V2 = PYDANTIC_VERSION.startswith("2.")
)
except ValidationError as exc:
return None, _regenerate_error_with_loc(
- errors=exc.errors(), loc_prefix=loc
+ errors=exc.errors(include_url=False), loc_prefix=loc
)
def serialize(
def get_missing_field_error(loc: Tuple[str, ...]) -> Dict[str, Any]:
error = ValidationError.from_exception_data(
"Field required", [{"type": "missing", "loc": loc, "input": {}}]
- ).errors()[0]
+ ).errors(include_url=False)[0]
error["input"] = None
return error # type: ignore[return-value]
elif field_info.example != Undefined:
parameter["example"] = jsonable_encoder(field_info.example)
if field_info.deprecated:
- parameter["deprecated"] = field_info.deprecated
+ parameter["deprecated"] = True
parameters.append(parameter)
return parameters
),
] = None,
deprecated: Annotated[
- Optional[bool],
+ Union[deprecated, str, bool, None],
Doc(
"""
Mark this parameter field as deprecated.
),
] = None,
deprecated: Annotated[
- Optional[bool],
+ Union[deprecated, str, bool, None],
Doc(
"""
Mark this parameter field as deprecated.
),
] = None,
deprecated: Annotated[
- Optional[bool],
+ Union[deprecated, str, bool, None],
Doc(
"""
Mark this parameter field as deprecated.
),
] = None,
deprecated: Annotated[
- Optional[bool],
+ Union[deprecated, str, bool, None],
Doc(
"""
Mark this parameter field as deprecated.
),
] = None,
deprecated: Annotated[
- Optional[bool],
+ Union[deprecated, str, bool, None],
Doc(
"""
Mark this parameter field as deprecated.
),
] = None,
deprecated: Annotated[
- Optional[bool],
+ Union[deprecated, str, bool, None],
Doc(
"""
Mark this parameter field as deprecated.
),
] = None,
deprecated: Annotated[
- Optional[bool],
+ Union[deprecated, str, bool, None],
Doc(
"""
Mark this parameter field as deprecated.
from pydantic.fields import FieldInfo
from typing_extensions import Annotated, deprecated
-from ._compat import PYDANTIC_V2, Undefined
+from ._compat import PYDANTIC_V2, PYDANTIC_VERSION, Undefined
_Unset: Any = Undefined
),
] = _Unset,
openapi_examples: Optional[Dict[str, Example]] = None,
- deprecated: Optional[bool] = None,
+ deprecated: Union[deprecated, str, bool, None] = None,
include_in_schema: bool = True,
json_schema_extra: Union[Dict[str, Any], None] = None,
**extra: Any,
):
- self.deprecated = deprecated
if example is not _Unset:
warnings.warn(
"`example` has been deprecated, please use `examples` instead",
stacklevel=4,
)
current_json_schema_extra = json_schema_extra or extra
+ if PYDANTIC_VERSION < "2.7.0":
+ self.deprecated = deprecated
+ else:
+ kwargs["deprecated"] = deprecated
if PYDANTIC_V2:
kwargs.update(
{
),
] = _Unset,
openapi_examples: Optional[Dict[str, Example]] = None,
- deprecated: Optional[bool] = None,
+ deprecated: Union[deprecated, str, bool, None] = None,
include_in_schema: bool = True,
json_schema_extra: Union[Dict[str, Any], None] = None,
**extra: Any,
),
] = _Unset,
openapi_examples: Optional[Dict[str, Example]] = None,
- deprecated: Optional[bool] = None,
+ deprecated: Union[deprecated, str, bool, None] = None,
include_in_schema: bool = True,
json_schema_extra: Union[Dict[str, Any], None] = None,
**extra: Any,
),
] = _Unset,
openapi_examples: Optional[Dict[str, Example]] = None,
- deprecated: Optional[bool] = None,
+ deprecated: Union[deprecated, str, bool, None] = None,
include_in_schema: bool = True,
json_schema_extra: Union[Dict[str, Any], None] = None,
**extra: Any,
),
] = _Unset,
openapi_examples: Optional[Dict[str, Example]] = None,
- deprecated: Optional[bool] = None,
+ deprecated: Union[deprecated, str, bool, None] = None,
include_in_schema: bool = True,
json_schema_extra: Union[Dict[str, Any], None] = None,
**extra: Any,
),
] = _Unset,
openapi_examples: Optional[Dict[str, Example]] = None,
- deprecated: Optional[bool] = None,
+ deprecated: Union[deprecated, str, bool, None] = None,
include_in_schema: bool = True,
json_schema_extra: Union[Dict[str, Any], None] = None,
**extra: Any,
):
self.embed = embed
self.media_type = media_type
- self.deprecated = deprecated
if example is not _Unset:
warnings.warn(
"`example` has been deprecated, please use `examples` instead",
stacklevel=4,
)
current_json_schema_extra = json_schema_extra or extra
+ if PYDANTIC_VERSION < "2.7.0":
+ self.deprecated = deprecated
+ else:
+ kwargs["deprecated"] = deprecated
if PYDANTIC_V2:
kwargs.update(
{
),
] = _Unset,
openapi_examples: Optional[Dict[str, Example]] = None,
- deprecated: Optional[bool] = None,
+ deprecated: Union[deprecated, str, bool, None] = None,
include_in_schema: bool = True,
json_schema_extra: Union[Dict[str, Any], None] = None,
**extra: Any,
),
] = _Unset,
openapi_examples: Optional[Dict[str, Example]] = None,
- deprecated: Optional[bool] = None,
+ deprecated: Union[deprecated, str, bool, None] = None,
include_in_schema: bool = True,
json_schema_extra: Union[Dict[str, Any], None] = None,
**extra: Any,
if not isinstance(item, DefaultPlaceholder):
return item
return first_item
-
-
-def match_pydantic_error_url(error_type: str) -> Any:
- from dirty_equals import IsStr
-
- return IsStr(regex=rf"^https://errors\.pydantic\.dev/.*/v/{error_type}")
from dirty_equals import IsDict
from fastapi import APIRouter, FastAPI, Query
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from typing_extensions import Annotated
app = FastAPI()
"msg": "Field required",
"type": "missing",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
)
# TODO: remove when deprecating Pydantic v1
"msg": "String should have at least 1 character",
"type": "string_too_short",
"input": "",
- "url": match_pydantic_error_url("string_too_short"),
}
)
# TODO: remove when deprecating Pydantic v1
from dirty_equals import IsDict
from fastapi import Depends, FastAPI
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from pydantic import BaseModel
app = FastAPI()
"loc": ["body", "item2"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
from dirty_equals import IsDict
from fastapi import APIRouter, Depends, FastAPI
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
app = FastAPI()
"loc": ["query", "q"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "q"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "q"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "q"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "k"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "k"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "k"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "k"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "k"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "k"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "k"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "k"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
from fastapi import Depends, FastAPI
from fastapi.exceptions import ResponseValidationError
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from .utils import needs_pydanticv2
"msg": "Value error, name must end in A",
"input": "modelX",
"ctx": {"error": HasRepr("ValueError('name must end in A')")},
- "url": match_pydantic_error_url("value_error"),
}
)
| IsDict(
from dirty_equals import IsDict, IsOneOf
from fastapi import FastAPI
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from pydantic import BaseModel, condecimal
app = FastAPI()
"msg": "Input should be greater than 0",
"input": -1.0,
"ctx": {"gt": 0},
- "url": match_pydantic_error_url("greater_than"),
}
]
}
"loc": ["body", 0, "name"],
"msg": "Field required",
"input": {"age": "five"},
- "url": match_pydantic_error_url("missing"),
},
{
"type": "decimal_parsing",
"loc": ["body", 0, "age"],
"msg": "Input should be a valid decimal",
"input": "five",
- "url": match_pydantic_error_url("decimal_parsing"),
},
{
"type": "missing",
"loc": ["body", 1, "name"],
"msg": "Field required",
"input": {"age": "six"},
- "url": match_pydantic_error_url("missing"),
},
{
"type": "decimal_parsing",
"loc": ["body", 1, "age"],
"msg": "Input should be a valid decimal",
"input": "six",
- "url": match_pydantic_error_url("decimal_parsing"),
},
]
}
from dirty_equals import IsDict
from fastapi import FastAPI, Query
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
app = FastAPI()
"loc": ["query", "q", 0],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "five",
- "url": match_pydantic_error_url("int_parsing"),
},
{
"type": "int_parsing",
"loc": ["query", "q", 1],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "six",
- "url": match_pydantic_error_url("int_parsing"),
},
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from .main import app
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foobar",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "True",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "42.5",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid number, unable to parse string as a number",
"input": "foobar",
- "url": match_pydantic_error_url("float_parsing"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid number, unable to parse string as a number",
"input": "True",
- "url": match_pydantic_error_url("float_parsing"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid boolean, unable to interpret input",
"input": "foobar",
- "url": match_pydantic_error_url("bool_parsing"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid boolean, unable to interpret input",
"input": "42",
- "url": match_pydantic_error_url("bool_parsing"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid boolean, unable to interpret input",
"input": "42.5",
- "url": match_pydantic_error_url("bool_parsing"),
}
]
}
"msg": "String should have at least 3 characters",
"input": "fo",
"ctx": {"min_length": 3},
- "url": match_pydantic_error_url("string_too_short"),
}
]
}
"msg": "String should have at most 3 characters",
"input": "foobar",
"ctx": {"max_length": 3},
- "url": match_pydantic_error_url("string_too_long"),
}
]
}
"msg": "String should have at most 3 characters",
"input": "foobar",
"ctx": {"max_length": 3},
- "url": match_pydantic_error_url("string_too_long"),
}
]
}
"msg": "String should have at least 2 characters",
"input": "f",
"ctx": {"min_length": 2},
- "url": match_pydantic_error_url("string_too_short"),
}
]
}
"msg": "Input should be greater than 3",
"input": "2",
"ctx": {"gt": 3.0},
- "url": match_pydantic_error_url("greater_than"),
}
]
}
"msg": "Input should be greater than 0",
"input": "0",
"ctx": {"gt": 0.0},
- "url": match_pydantic_error_url("greater_than"),
}
]
}
"msg": "Input should be greater than or equal to 3",
"input": "2",
"ctx": {"ge": 3.0},
- "url": match_pydantic_error_url("greater_than_equal"),
}
]
}
"msg": "Input should be less than 3",
"input": "42",
"ctx": {"lt": 3.0},
- "url": match_pydantic_error_url("less_than"),
}
]
}
"msg": "Input should be less than 0",
"input": "0",
"ctx": {"lt": 0.0},
- "url": match_pydantic_error_url("less_than"),
}
]
}
"msg": "Input should be less than or equal to 3",
"input": "42",
"ctx": {"le": 3.0},
- "url": match_pydantic_error_url("less_than_equal"),
}
]
}
"msg": "Input should be less than 3",
"input": "4",
"ctx": {"lt": 3.0},
- "url": match_pydantic_error_url("less_than"),
}
]
}
"msg": "Input should be greater than 1",
"input": "0",
"ctx": {"gt": 1.0},
- "url": match_pydantic_error_url("greater_than"),
}
]
}
"msg": "Input should be less than or equal to 3",
"input": "4",
"ctx": {"le": 3.0},
- "url": match_pydantic_error_url("less_than_equal"),
}
]
}
"msg": "Input should be less than 3",
"input": "42",
"ctx": {"lt": 3},
- "url": match_pydantic_error_url("less_than"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "2.7",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"msg": "Input should be greater than 3",
"input": "2",
"ctx": {"gt": 3},
- "url": match_pydantic_error_url("greater_than"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "2.7",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"msg": "Input should be less than or equal to 3",
"input": "42",
"ctx": {"le": 3},
- "url": match_pydantic_error_url("less_than_equal"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "2.7",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"msg": "Input should be greater than or equal to 3",
"input": "2",
"ctx": {"ge": 3},
- "url": match_pydantic_error_url("greater_than_equal"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "2.7",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"msg": "Input should be less than 3",
"input": "4",
"ctx": {"lt": 3},
- "url": match_pydantic_error_url("less_than"),
}
]
}
"msg": "Input should be greater than 1",
"input": "0",
"ctx": {"gt": 1},
- "url": match_pydantic_error_url("greater_than"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "2.7",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"msg": "Input should be less than or equal to 3",
"input": "4",
"ctx": {"le": 3},
- "url": match_pydantic_error_url("less_than_equal"),
}
]
}
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "2.7",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from .main import app
"loc": ["query", "query"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "query"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "query"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "query"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "42.5",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"loc": ["query", "query"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "baz",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"loc": ["query", "query"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "query"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foo",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"loc": ["query", "query"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foo",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
"loc": ["query", "query"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "query"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "query"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foo",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
from dirty_equals import IsDict
from fastapi import FastAPI, Form
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from typing_extensions import Annotated
from .utils import needs_py310
"msg": "String should match pattern '^fixedquery$'",
"input": "nonregexquery",
"ctx": {"pattern": "^fixedquery$"},
- "url": match_pydantic_error_url("string_pattern_mismatch"),
}
]
}
from dirty_equals import IsDict
from fastapi import FastAPI, Query
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from typing_extensions import Annotated
from .utils import needs_py310
"msg": "String should match pattern '^fixedquery$'",
"input": "nonregexquery",
"ctx": {"pattern": "^fixedquery$"},
- "url": match_pydantic_error_url("string_pattern_mismatch"),
}
]
}
from fastapi import Depends, FastAPI, Security
from fastapi.security import OAuth2, OAuth2PasswordRequestFormStrict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from pydantic import BaseModel
app = FastAPI()
"loc": ["body", "grant_type"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "grant_type"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"msg": "String should match pattern 'password'",
"input": "incorrect",
"ctx": {"pattern": "password"},
- "url": match_pydantic_error_url("string_pattern_mismatch"),
}
]
}
from fastapi import Depends, FastAPI, Security
from fastapi.security import OAuth2, OAuth2PasswordRequestFormStrict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from pydantic import BaseModel
app = FastAPI()
"loc": ["body", "grant_type"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "grant_type"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"msg": "String should match pattern 'password'",
"input": "incorrect",
"ctx": {"pattern": "password"},
- "url": match_pydantic_error_url("string_pattern_mismatch"),
}
]
}
from fastapi import Depends, FastAPI, Security
from fastapi.security import OAuth2, OAuth2PasswordRequestFormStrict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from pydantic import BaseModel
app = FastAPI()
"loc": ["body", "grant_type"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "grant_type"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"msg": "String should match pattern 'password'",
"input": "incorrect",
"ctx": {"pattern": "password"},
- "url": match_pydantic_error_url("string_pattern_mismatch"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["query", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture
"loc": ["body", "price"],
"msg": "Field required",
"input": {"name": "Foo"},
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "price"],
"msg": "Input should be a valid number, unable to parse string as a number",
"input": "twenty",
- "url": match_pydantic_error_url("float_parsing"),
}
]
}
"loc": ["body", "name"],
"msg": "Field required",
"input": {},
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "price"],
"msg": "Field required",
"input": {},
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body"],
"msg": "Input should be a valid dictionary or object to extract fields from",
"input": "name=Foo&price=50.5",
- "url": match_pydantic_error_url("model_attributes_type"),
}
]
}
"loc": ["body"],
"msg": "Input should be a valid dictionary or object to extract fields from",
"input": '{"name": "Foo", "price": 50.5}',
- "url": match_pydantic_error_url(
- "model_attributes_type"
- ), # "https://errors.pydantic.dev/0.38.0/v/dict_attributes_type",
}
]
}
"loc": ["body"],
"msg": "Input should be a valid dictionary or object to extract fields from",
"input": '{"name": "Foo", "price": 50.5}',
- "url": match_pydantic_error_url("model_attributes_type"),
}
]
}
"loc": ["body"],
"msg": "Input should be a valid dictionary or object to extract fields from",
"input": '{"name": "Foo", "price": 50.5}',
- "url": match_pydantic_error_url("model_attributes_type"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py310
"loc": ["body", "price"],
"msg": "Field required",
"input": {"name": "Foo"},
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "price"],
"msg": "Input should be a valid number, unable to parse string as a number",
"input": "twenty",
- "url": match_pydantic_error_url("float_parsing"),
}
]
}
"loc": ["body", "name"],
"msg": "Field required",
"input": {},
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "price"],
"msg": "Field required",
"input": {},
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body"],
"msg": "Input should be a valid dictionary or object to extract fields from",
"input": "name=Foo&price=50.5",
- "url": match_pydantic_error_url("model_attributes_type"),
}
]
}
"loc": ["body"],
"msg": "Input should be a valid dictionary or object to extract fields from",
"input": '{"name": "Foo", "price": 50.5}',
- "url": match_pydantic_error_url("model_attributes_type"),
}
]
}
"loc": ["body"],
"msg": "Input should be a valid dictionary or object to extract fields from",
"input": '{"name": "Foo", "price": 50.5}',
- "url": match_pydantic_error_url("model_attributes_type"),
}
]
}
"loc": ["body"],
"msg": "Input should be a valid dictionary or object to extract fields from",
"input": '{"name": "Foo", "price": 50.5}',
- "url": match_pydantic_error_url("model_attributes_type"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"msg": "Input should be greater than 0",
"input": -3.0,
"ctx": {"gt": 0.0},
- "url": match_pydantic_error_url("greater_than"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"msg": "Input should be greater than 0",
"input": -3.0,
"ctx": {"gt": 0.0},
- "url": match_pydantic_error_url("greater_than"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py310
"msg": "Input should be greater than 0",
"input": -3.0,
"ctx": {"gt": 0.0},
- "url": match_pydantic_error_url("greater_than"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"msg": "Input should be greater than 0",
"input": -3.0,
"ctx": {"gt": 0.0},
- "url": match_pydantic_error_url("greater_than"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py310
"msg": "Input should be greater than 0",
"input": -3.0,
"ctx": {"gt": 0.0},
- "url": match_pydantic_error_url("greater_than"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foo",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foo",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py310
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foo",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foo",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py310
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foo",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"loc": ["body", "item"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "user"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "importance"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "item"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "user"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "importance"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"loc": ["body", "item"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "user"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "importance"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "item"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "user"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "importance"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py310
"loc": ["body", "item"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "user"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "importance"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "item"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "user"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "importance"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"loc": ["body", "item"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "user"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "importance"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "item"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "user"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "importance"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py310
"loc": ["body", "item"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "user"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "importance"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "item"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "user"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "importance"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"loc": ["body", "foo", "[key]"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foo",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"loc": ["body", "foo", "[key]"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foo",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.custom_request_and_route.tutorial002 import app
"loc": ["body"],
"msg": "Input should be a valid list",
"input": {"numbers": [1, 2, 3]},
- "url": match_pydantic_error_url("list_type"),
}
],
"body": '{"numbers": [1, 2, 3]}',
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.dataclasses.tutorial001 import app
"loc": ["body", "price"],
"msg": "Input should be a valid number, unable to parse string as a number",
"input": "invalid price",
- "url": match_pydantic_error_url("float_parsing"),
}
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.dependencies.tutorial006 import app
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-key"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.dependencies.tutorial006_an import app
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-key"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-key"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.dependencies.tutorial012 import app
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-key"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-key"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.dependencies.tutorial012_an import app
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-key"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-key"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-key"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["header", "x-token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["header", "x-key"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.handling_errors.tutorial005 import app
"loc": ["body", "size"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "XL",
- "url": match_pydantic_error_url("int_parsing"),
}
],
"body": {"title": "towel", "size": "XL"},
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.handling_errors.tutorial006 import app
"loc": ["path", "item_id"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "foo",
- "url": match_pydantic_error_url("int_parsing"),
}
]
}
import pytest
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_pydanticv2
"loc": ["tags", 3],
"msg": "Input should be a valid string",
"input": {"sneaky": "object"},
- "url": match_pydantic_error_url("string_type"),
}
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.query_params.tutorial005 import app
"loc": ["query", "needy"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"loc": ["query", "needy"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "int_parsing",
"loc": ["query", "skip"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "a",
- "url": match_pydantic_error_url("int_parsing"),
},
{
"type": "int_parsing",
"loc": ["query", "limit"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "b",
- "url": match_pydantic_error_url("int_parsing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py310
"loc": ["query", "needy"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "int_parsing",
"loc": ["query", "skip"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "a",
- "url": match_pydantic_error_url("int_parsing"),
},
{
"type": "int_parsing",
"loc": ["query", "limit"],
"msg": "Input should be a valid integer, unable to parse string as an integer",
"input": "b",
- "url": match_pydantic_error_url("int_parsing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"msg": "String should match pattern '^fixedquery$'",
"input": "nonregexquery",
"ctx": {"pattern": "^fixedquery$"},
- "url": match_pydantic_error_url("string_pattern_mismatch"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"msg": "String should match pattern '^fixedquery$'",
"input": "nonregexquery",
"ctx": {"pattern": "^fixedquery$"},
- "url": match_pydantic_error_url("string_pattern_mismatch"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py310
"msg": "String should match pattern '^fixedquery$'",
"input": "nonregexquery",
"ctx": {"pattern": "^fixedquery$"},
- "url": match_pydantic_error_url("string_pattern_mismatch"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"msg": "String should match pattern '^fixedquery$'",
"input": "nonregexquery",
"ctx": {"pattern": "^fixedquery$"},
- "url": match_pydantic_error_url("string_pattern_mismatch"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py310
"msg": "String should match pattern '^fixedquery$'",
"input": "nonregexquery",
"ctx": {"pattern": "^fixedquery$"},
- "url": match_pydantic_error_url("string_pattern_mismatch"),
}
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.request_files.tutorial001 import app
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.request_files.tutorial001_an import app
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.request_files.tutorial002 import app
"loc": ["body", "files"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "files"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from docs_src.request_files.tutorial002_an import app
"loc": ["body", "files"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "files"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
from dirty_equals import IsDict
from fastapi import FastAPI
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"loc": ["body", "files"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "files"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
from dirty_equals import IsDict
from fastapi import FastAPI
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"loc": ["body", "files"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "files"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="client")
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
import pytest
from dirty_equals import IsDict
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
}
]
}
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "username"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "password"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
from dirty_equals import IsDict
from fastapi import FastAPI
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="app")
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
from dirty_equals import IsDict
from fastapi import FastAPI
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
@pytest.fixture(name="app")
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
from dirty_equals import IsDict
from fastapi import FastAPI
from fastapi.testclient import TestClient
-from fastapi.utils import match_pydantic_error_url
from ...utils import needs_py39
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "file"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}
"loc": ["body", "fileb"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
{
"type": "missing",
"loc": ["body", "token"],
"msg": "Field required",
"input": None,
- "url": match_pydantic_error_url("missing"),
},
]
}