mirror of https://github.com/tiangolo/fastapi.git
⬆ Bump Starlette to version `0.22.0` to fix bad encoding for query parameters in `TestClient` (#5659)
closes https://github.com/tiangolo/fastapi/issues/5646
This commit is contained in:
parent
89ec1f2d36
commit
46974c510e
|
|
@ -39,7 +39,7 @@ classifiers = [
|
||||||
"Topic :: Internet :: WWW/HTTP",
|
"Topic :: Internet :: WWW/HTTP",
|
||||||
]
|
]
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"starlette==0.21.0",
|
"starlette==0.22.0",
|
||||||
"pydantic >=1.6.2,!=1.7,!=1.7.1,!=1.7.2,!=1.7.3,!=1.8,!=1.8.1,<2.0.0",
|
"pydantic >=1.6.2,!=1.7,!=1.7.1,!=1.7.2,!=1.7.3,!=1.8,!=1.8.1,<2.0.0",
|
||||||
]
|
]
|
||||||
dynamic = ["version"]
|
dynamic = ["version"]
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
from fastapi import FastAPI, Path
|
from fastapi import FastAPI, Path, Query
|
||||||
from fastapi.testclient import TestClient
|
from fastapi.testclient import TestClient
|
||||||
|
|
||||||
app = FastAPI()
|
app = FastAPI()
|
||||||
|
|
@ -19,6 +19,11 @@ def path_convertor(param: str = Path()):
|
||||||
return {"path": param}
|
return {"path": param}
|
||||||
|
|
||||||
|
|
||||||
|
@app.get("/query/")
|
||||||
|
def query_convertor(param: str = Query()):
|
||||||
|
return {"query": param}
|
||||||
|
|
||||||
|
|
||||||
client = TestClient(app)
|
client = TestClient(app)
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -45,6 +50,13 @@ def test_route_converters_path():
|
||||||
assert response.json() == {"path": "some/example"}
|
assert response.json() == {"path": "some/example"}
|
||||||
|
|
||||||
|
|
||||||
|
def test_route_converters_query():
|
||||||
|
# Test query conversion
|
||||||
|
response = client.get("/query", params={"param": "Qué tal!"})
|
||||||
|
assert response.status_code == 200, response.text
|
||||||
|
assert response.json() == {"query": "Qué tal!"}
|
||||||
|
|
||||||
|
|
||||||
def test_url_path_for_path_convertor():
|
def test_url_path_for_path_convertor():
|
||||||
assert (
|
assert (
|
||||||
app.url_path_for("path_convertor", param="some/example") == "/path/some/example"
|
app.url_path_for("path_convertor", param="some/example") == "/path/some/example"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue