Skip to content

Commit

Permalink
Update examples
Browse files Browse the repository at this point in the history
  • Loading branch information
taras committed Aug 16, 2024
1 parent 6f2243b commit b5e1dee
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 8 deletions.
2 changes: 1 addition & 1 deletion examples/echo_client_benchmark.py
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ async def aiohttp_main(url: str, data: bytes, duration: int, ssl_context) -> Non

try:
from examples.picows_client_cython import picows_main_cython
asyncio.get_event_loop().run_until_complete(picows_main_cython(args.url, msg, duration, ssl_context))
asyncio.run(picows_main_cython(args.url, msg, duration, ssl_context))
except ImportError:
pass

Expand Down
20 changes: 14 additions & 6 deletions examples/echo_server.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,23 +21,31 @@ def on_ws_frame(self, transport: WSTransport, frame: WSFrame):


async def async_main():
url = "wss://127.0.0.1:9001"
url = "ws://127.0.0.1:9001"
url_ssl = "wss://127.0.0.1:9002"

plain_server = await ws_create_server(url, PicowsServerListener, "server",
websocket_handshake_timeout=0.5)
_logger.info("Server started on %s", url)

ssl_context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH)
ssl_context.load_cert_chain(pathlib.Path(__file__).parent.parent / "tests" / "picows_test.crt",
pathlib.Path(__file__).parent.parent / "tests" / "picows_test.key")
ssl_context.check_hostname = False
ssl_context.hostname_checks_common_name = False
ssl_context.verify_mode = ssl.CERT_NONE
server = await ws_create_server(url, PicowsServerListener, "server", ssl_context=ssl_context)
_logger.info("Server started on %s", url)
server_task = asyncio.get_running_loop().create_task(server.serve_forever())
await server_task
ssl_server = await ws_create_server(url_ssl, PicowsServerListener, "server",
ssl_context=ssl_context,
websocket_handshake_timeout=0.5)
_logger.info("Server started on %s", url_ssl)

await asyncio.gather(plain_server.serve_forever(), ssl_server.serve_forever())


if __name__ == '__main__':
if os.name != 'nt':
import uvloop
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())

basicConfig(level=INFO)
asyncio.run(async_main())
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ dynamic = ["version"]
keywords = ["websocket", "networking"]
dependencies = []
classifiers = [
"Development Status :: 3 - Alpha",
"Development Status :: 4 - Beta",
"Framework :: AsyncIO",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
Expand Down

0 comments on commit b5e1dee

Please sign in to comment.