fastapi
1from typing import Dict, List, Tuple
2
3import pytest
4from fastapi import FastAPI
5from pydantic import BaseModel
6
7
8def test_invalid_sequence():
9with pytest.raises(AssertionError):
10app = FastAPI()
11
12class Item(BaseModel):
13title: str
14
15@app.get("/items/{id}")
16def read_items(id: List[Item]):
17pass # pragma: no cover
18
19
20def test_invalid_tuple():
21with pytest.raises(AssertionError):
22app = FastAPI()
23
24class Item(BaseModel):
25title: str
26
27@app.get("/items/{id}")
28def read_items(id: Tuple[Item, Item]):
29pass # pragma: no cover
30
31
32def test_invalid_dict():
33with pytest.raises(AssertionError):
34app = FastAPI()
35
36class Item(BaseModel):
37title: str
38
39@app.get("/items/{id}")
40def read_items(id: Dict[str, Item]):
41pass # pragma: no cover
42
43
44def test_invalid_simple_list():
45with pytest.raises(AssertionError):
46app = FastAPI()
47
48@app.get("/items/{id}")
49def read_items(id: list):
50pass # pragma: no cover
51
52
53def test_invalid_simple_tuple():
54with pytest.raises(AssertionError):
55app = FastAPI()
56
57@app.get("/items/{id}")
58def read_items(id: tuple):
59pass # pragma: no cover
60
61
62def test_invalid_simple_set():
63with pytest.raises(AssertionError):
64app = FastAPI()
65
66@app.get("/items/{id}")
67def read_items(id: set):
68pass # pragma: no cover
69
70
71def test_invalid_simple_dict():
72with pytest.raises(AssertionError):
73app = FastAPI()
74
75@app.get("/items/{id}")
76def read_items(id: dict):
77pass # pragma: no cover
78