async def METHOD_NAME():
    disconnect = False
    async def read_body(scope, receive, send):
        nonlocal disconnect
        status = 200
        headers = [(b"content-type", "text/plain")]
        await send(
            {"type": "http.response.start", "status": status, "headers": headers}
        )
        more_body = True
        while more_body:
            message = await receive()
            more_body = message.get("more_body", False)
        await send({"type": "http.response.body", "body": b"", "more_body": False})
        # The ASGI spec says of the Disconnect message:
        # "Sent to the application when a HTTP connection is closed or if receive is
        # called after a response has been sent."
        # So if receive() is called again, the disconnect message should be received
        message = await receive()
        disconnect = message.get("type") == "http.disconnect"
    async with httpx.AsyncClient(app=read_body) as client:
        response = await client.post("http://www.example.org/", content=b"example")
    assert response.status_code == 200
    assert disconnect