120f0262f7
* Fix Ctrl+C on Windows.
* Disable testing of a function N/A on Windows.
* Add test for coverage, avoid crash on missing _stopping.
* Initialise StreamingHTTPResponse.protocol = None
* Improved comments.
* Reduce amount of data in test_request_stream to avoid failures on Windows.
* The Windows test doesn't work on Windows :(
* Use port numbers more likely to be free than 8000.
* Disable the other signal tests on Windows as well.
* Windows doesn't properly support SO_REUSEADDR, so that's disabled in Python, and thus rebinding fails. For successful testing, reuse port instead.
* app.run argument handling: added server kwargs (alike create_server), added warning on extra kwargs, made auto_reload explicit argument. Another go at Windows tests
* Revert "app.run argument handling: added server kwargs (alike create_server), added warning on extra kwargs, made auto_reload explicit argument. Another go at Windows tests"
This reverts commit dc5d682448
.
* Use random test server port on most tests. Should avoid port/addr reuse issues.
* Another test to random port instead of 8000.
* Fix deprecation warnings about missing name on Sanic() in tests.
* Linter and typing
* Increase test coverage
* Rewrite test for ctrlc_windows_workaround
* py36 compat
* py36 compat
* py36 compat
* Don't rely on loop internals but add a stopping flag to app.
* App may be restarted.
* py36 compat
* Linter
* Add a constant for OS checking.
Co-authored-by: L. Kärkkäinen <tronic@users.noreply.github.com>
35 lines
946 B
Python
35 lines
946 B
Python
from sanic.response import json, text
|
|
from sanic.testing import PORT, SanicTestClient
|
|
|
|
|
|
# ------------------------------------------------------------ #
|
|
# UTF-8
|
|
# ------------------------------------------------------------ #
|
|
|
|
|
|
def test_test_client_port_none(app):
|
|
@app.get("/get")
|
|
def handler(request):
|
|
return text("OK")
|
|
|
|
test_client = SanicTestClient(app, port=None)
|
|
|
|
request, response = test_client.get("/get")
|
|
assert response.text == "OK"
|
|
|
|
request, response = test_client.post("/get")
|
|
assert response.status == 405
|
|
|
|
|
|
def test_test_client_port_default(app):
|
|
@app.get("/get")
|
|
def handler(request):
|
|
return json(request.transport.get_extra_info("sockname")[1])
|
|
|
|
test_client = SanicTestClient(app)
|
|
assert test_client.port == PORT # Can be None before request
|
|
|
|
request, response = test_client.get("/get")
|
|
assert test_client.port > 0
|
|
assert response.json == test_client.port
|