pytest-play support for websockets
Project description
play websocket
pytest-play support for websockets
More info and examples on:
pytest-play, documentation
cookiecutter-qa, see pytest-play in action with a working example if you want to start hacking
Features
This project defines new pytest-play commands.
Connect
{'type': 'connect', 'provider': 'play_websocket', 'options': { 'url': 'ws://echo.websocket.org/', 'timeout': 2 } }
Send
{'type': 'send', 'provider': 'play_websocket', 'url': 'ws://echo.websocket.org/', 'payload': 'Hello!'}
Receive
{'type': 'recv', 'provider': 'play_websocket', 'url': 'ws://echo.websocket.org/', 'variable': 'data', 'variable_expression': 'response.upper()', 'assertion': 'data == "HELLO!"', 'timeout': 10}
Receive until
If you want to filter the data returned by the websocked until you get what you expect:
{'provider': 'python', 'type': 'wait_until', 'expression': 'variables['data'] == "HELLO!"', 'timeout': 60, 'poll': 0, 'sub_commands': [ { 'type': 'recv', 'provider': 'play_websocket', 'url': 'ws://echo.websocket.org/', 'variable': 'data', 'variable_expression': 'response.upper()', 'timeout': 60} }] }
pytest-play tweets happens here:
Credits
This package was created with Cookiecutter and the cookiecutter-play-plugin (based on audreyr/cookiecutter-pypackage project template).
CHANGES
0.0.1 (2018-01-25)
First release.