import pytest from channels.testing import WebsocketCommunicator from project.config.asgi import application from django.contrib.auth import get_user_model import uuid @pytest.mark.asyncio @pytest.mark.django_db(transaction=True) async def test_requires_auth(): session_id = uuid.uuid4() communicator = WebsocketCommunicator(application, f"/ws/ssh/{session_id}/stream/") connected, _ = await communicator.connect() assert connected is False or (await communicator.receive_nothing(timeout=0.1) is None) await communicator.disconnect()