Integration of WebTest with Sanic applications Initially it was created to enable Sanic support in Webargs module
import asyncio
from sanic import Sanic
from sanic.response import json
from webtest_sanic import TestApp
app = Sanic()
@app.route('/')
async def test(request):
return json({'hello': 'world'})
loop = asyncio.new_event_loop()
def test_hello():
client = TestApp(app, loop=loop)
res = client.get('/')
assert res.status_code == 200
assert res.json == {'message': 'Hello world'}
It is easy to do from pip
pip install webtest-sanic
or from sources
git clone git@github.com:EndurantDevs/webtest-sanic.git
cd webtest-sanic
python setup.py install
To be sure everything is fine before installation from sources, just run:
python setup.py test
Or
pytest tests/
This code is based on webtest-aiohttp by Steven Loria and pytest-sanic by Yun Xu Please check NOTICE for more info.