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