Revert "Remove utils.py"

This commit is contained in:
Raphael Deem 2017-05-04 00:04:02 -07:00 committed by GitHub
parent 7cf3d49f00
commit 32ddae943c
3 changed files with 37 additions and 6 deletions

View File

@ -57,3 +57,17 @@ def test_post_json_request_includes_data():
More information about
the available arguments to aiohttp can be found
[in the documentation for ClientSession](https://aiohttp.readthedocs.io/en/stable/client_reference.html#client-session).
### Deprecated: `sanic_endpoint_test`
Prior to version 0.3.2, testing was provided through the `sanic_endpoint_test` method. This method will be deprecated in the next major version after 0.4.0; please use the `test_client` instead.
```
from sanic.utils import sanic_endpoint_test
def test_index_returns_200():
request, response = sanic_endpoint_test(app)
assert response.status == 200
```

17
sanic/utils.py Normal file
View File

@ -0,0 +1,17 @@
import warnings
from sanic.testing import SanicTestClient
def sanic_endpoint_test(app, method='get', uri='/', gather_request=True,
debug=False, server_kwargs={},
*request_args, **request_kwargs):
warnings.warn(
"Use of sanic_endpoint_test will be deprecated in"
"the next major version after 0.4.0. Please use the `test_client` "
"available on the app object.", DeprecationWarning)
test_client = SanicTestClient(app)
return test_client._sanic_endpoint_test(
method, uri, gather_request, debug, server_kwargs,
*request_args, **request_kwargs)

View File

@ -1,17 +1,16 @@
from sanic import Sanic
import sanic
from sanic.utils import sanic_endpoint_test
from sanic.response import text
from threading import Event
import asyncio
def test_create_task():
e = Event()
async def coro():
await asyncio.sleep(0.05)
e.set()
app = Sanic('test_create_task')
app = sanic.Sanic()
app.add_task(coro)
@app.route('/early')
@ -23,8 +22,9 @@ def test_create_task():
await asyncio.sleep(0.1)
return text(e.is_set())
request, response = app.test_client.get('/early')
request, response = sanic_endpoint_test(app, uri='/early')
assert response.body == b'False'
request, response = app.test_client.get('/late')
request, response = sanic_endpoint_test(app, uri='/late')
assert response.body == b'True'