Exemplo n.º 1
0
async def test_overlapping_websocket_ctx(
        websocket_scope: WebsocketScope) -> None:
    app = Quart(__name__)

    websocket = Websocket(
        "/",
        b"",
        "ws",
        Headers([("host", "quart.com")]),
        "",
        "1.1",
        [],
        None,
        None,
        None,
        None,
        websocket_scope,
    )
    ctx1 = app.websocket_context(websocket)
    await ctx1.__aenter__()
    ctx2 = app.websocket_context(websocket)
    await ctx2.__aenter__()
    await ctx1.__aexit__(None, None, None)
    assert has_app_context()  # Ensure the app context still exists for ctx2
    await ctx2.__aexit__(None, None, None)
Exemplo n.º 2
0
async def test_overlapping_websocket_ctx() -> None:
    app = Quart(__name__)

    websocket = Websocket("/", b"", "ws", CIMultiDict(), "", "1.1", [], None, None, None)
    ctx1 = app.websocket_context(websocket)
    await ctx1.__aenter__()
    ctx2 = app.websocket_context(websocket)
    await ctx2.__aenter__()
    await ctx1.__aexit__(None, None, None)
    assert has_app_context()  # Ensure the app context still exists for ctx2
    await ctx2.__aexit__(None, None, None)