webtest-aiohttp provides integration of WebTest with aiohttp.web applications
Project description
webtest-aiohttp provides integration of WebTest with aiohttp.web applications.
Supports aiohttp>=2.3.8.
from aiohttp import web
from webtest_aiohttp import TestApp
app = web.Application()
async def hello(request):
return web.json_response({'message': 'Hello world'})
app.router.add_route('GET', '/', handler)
def test_hello(loop):
client = TestApp(app, loop=loop)
res = client.get('/')
assert res.status_code == 200
assert res.json == {'message': 'Hello world'}
Installation
pip install webtest-aiohttp
Note: If you are using aiohttp<2.0.0, you will need to install webtest-aiohttp 1.x.
pip install 'webtest-aiohttp<2.0.0'
Usage with pytest
If you are using pytest and pytest-aiohttp, you can make your tests more concise with a fixture.
from aiohttp import web
from webtest_aiohttp import TestApp as WebTestApp
app = web.Application()
async def hello(request):
return web.json_response({'message': 'Hello world'})
app.router.add_route('GET', '/', handler)
@pytest.fixture()
def testapp(loop):
return WebTestApp(app, loop=loop)
def test_get(testapp):
assert testapp.get('/').json == {'message': 'Hello world'}
Project Links
License
MIT licensed. See the bundled LICENSE file for more details.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
webtest-aiohttp-2.0.0.tar.gz
(8.4 kB
view hashes)
Built Distribution
Close
Hashes for webtest_aiohttp-2.0.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a8fc39fd73f30bb56c8b990e6a70ca477522f5b1a91b3b6c91401ecbca750847 |
|
MD5 | b1578608c5c2c9a436de3e375c2260cf |
|
BLAKE2b-256 | f4646ac160e44859602962495e0d52ef8bac1e244c48365b38d7424d2dc70222 |