Coverage for tests / test_invalid_sequence_param.py: 100%
31 statements
« prev ^ index » next coverage.py v7.13.3, created at 2026-04-06 01:24 +0000
« prev ^ index » next coverage.py v7.13.3, created at 2026-04-06 01:24 +0000
1import pytest 1abcd
2from fastapi import FastAPI, Query 1abcd
3from pydantic import BaseModel 1abcd
6def test_invalid_sequence(): 1abcd
7 with pytest.raises( 1eqfg
8 AssertionError,
9 match="Query parameter 'q' must be one of the supported types",
10 ):
11 app = FastAPI() 1eqfg
13 class Item(BaseModel): 1eqfg
14 title: str 1efg
16 @app.get("/items/") 1eqfg
17 def read_items(q: list[Item] = Query(default=None)): 1eqfg
18 pass # pragma: no cover
21def test_invalid_tuple(): 1abcd
22 with pytest.raises( 1hrij
23 AssertionError,
24 match="Query parameter 'q' must be one of the supported types",
25 ):
26 app = FastAPI() 1hrij
28 class Item(BaseModel): 1hrij
29 title: str 1hij
31 @app.get("/items/") 1hrij
32 def read_items(q: tuple[Item, Item] = Query(default=None)): 1hrij
33 pass # pragma: no cover
36def test_invalid_dict(): 1abcd
37 with pytest.raises( 1kslm
38 AssertionError,
39 match="Query parameter 'q' must be one of the supported types",
40 ):
41 app = FastAPI() 1kslm
43 class Item(BaseModel): 1kslm
44 title: str 1klm
46 @app.get("/items/") 1kslm
47 def read_items(q: dict[str, Item] = Query(default=None)): 1kslm
48 pass # pragma: no cover
51def test_invalid_simple_dict(): 1abcd
52 with pytest.raises( 1ntop
53 AssertionError,
54 match="Query parameter 'q' must be one of the supported types",
55 ):
56 app = FastAPI() 1ntop
58 class Item(BaseModel): 1ntop
59 title: str 1nop
61 @app.get("/items/") 1ntop
62 def read_items(q: dict | None = Query(default=None)): 1ntop
63 pass # pragma: no cover