Raise TypeError if port is not an integer#1088
Conversation
|
|
||
|
|
||
| def test_port_must_be_integer(dev_server): | ||
| with pytest.raises(TypeError) as port_type_exception: |
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
|
|
||
| def test_port_must_be_integer(dev_server): | ||
| with pytest.raises(TypeError) as port_type_exception_with_reloader: | ||
| def app(environ, start_response): |
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
|
Thanks for your review @JordanP and @untitaker . The new test is ready and works 👌 |
| start_response('200 OK', [('Content-Type', 'text/html')]) | ||
| return [b'hello'] | ||
|
|
||
| with pytest.raises(TypeError) as port_type_exception_with_reloader: |
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
|
Please rebase and add a changelog to version 0.13. 0.12-maintenance is really just for bugfixes, but this actually changes behavior. |
Ports should be integers, so a type check is explicitly added to raise an exception when this is ignored. This inappropiate behaviour was detected when using `debug=True` in a Flask application, because a string is accepted and works when it should fail. Closes pallets/flask#2220 Signed-off-by: Antonio Ossa <aaossa@uc.cl>
This testcase tries to use a string as port parameter, which should not be allowed by `run_simple`. The test uses `run_simple` directly because the tests configuration raises the error in a different process without giving a chance to catch the `TypeError` exception. See pallets/flask#2220 Signed-off-by: Antonio Ossa <aaossa@uc.cl>
Signed-off-by: Antonio Ossa <aaossa@uc.cl>
|
I think I've done it 👌 Do you have more issues or PRs to read/work on? 😁 |
|
Thanks! |
|
Regarding your question, I think everything labelled with "beginner ready" would work |
As explained in pallets/flask#2220
portshould be an integer and in other cases aTypeErrorexception should be raised. This PR includes a type check to raise said exception and a test to check if the exception is raised (whenuse_reloaderisTrueand when itsFalse).Closes pallets/flask#2220