stop number route accepting excess '.'s
We stop getting:
ValueError: could not convert string to float: '12.34.56'
when passing 12.34.56 as a number route parameter argument.
By accepting ".12" and "12.", this is a non-breaking change. All valid
floats described by [0-9\.]+ are still accepted, just invalid ones are
now rejected.
This commit is contained in:
@@ -365,9 +365,18 @@ def test_dynamic_route_number(app):
|
||||
request, response = app.test_client.get("/weight/1234.56")
|
||||
assert response.status == 200
|
||||
|
||||
request, response = app.test_client.get("/weight/.12")
|
||||
assert response.status == 200
|
||||
|
||||
request, response = app.test_client.get("/weight/12.")
|
||||
assert response.status == 200
|
||||
|
||||
request, response = app.test_client.get("/weight/1234-56")
|
||||
assert response.status == 404
|
||||
|
||||
request, response = app.test_client.get("/weight/12.34.56")
|
||||
assert response.status == 404
|
||||
|
||||
|
||||
def test_dynamic_route_regex(app):
|
||||
@app.route("/folder/<folder_id:[A-Za-z0-9]{0,4}>")
|
||||
@@ -672,9 +681,18 @@ def test_dynamic_add_route_number(app):
|
||||
request, response = app.test_client.get("/weight/1234.56")
|
||||
assert response.status == 200
|
||||
|
||||
request, response = app.test_client.get("/weight/.12")
|
||||
assert response.status == 200
|
||||
|
||||
request, response = app.test_client.get("/weight/12.")
|
||||
assert response.status == 200
|
||||
|
||||
request, response = app.test_client.get("/weight/1234-56")
|
||||
assert response.status == 404
|
||||
|
||||
request, response = app.test_client.get("/weight/12.34.56")
|
||||
assert response.status == 404
|
||||
|
||||
|
||||
def test_dynamic_add_route_regex(app):
|
||||
async def handler(request, folder_id):
|
||||
|
||||
Reference in New Issue
Block a user