Change-detectors, tautologies, source-reading tests, redundant duplicates, mock-echo tests and dead/unrunnable tests. Per-test rationale in the lane ledger (category + reason for every removal).
47 lines
1.2 KiB
Python
47 lines
1.2 KiB
Python
"""Compatibility seams for extracted RoomLink dispatch handling."""
|
|
|
|
import json
|
|
from unittest.mock import MagicMock
|
|
|
|
import pytest
|
|
|
|
from gateway.platforms import api_server
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_non_room_run_body_passes_through_unchanged():
|
|
adapter = api_server.APIServerAdapter.__new__(api_server.APIServerAdapter)
|
|
adapter._room_grant_token = MagicMock(return_value="")
|
|
request = object()
|
|
body = {"input": "ordinary run"}
|
|
|
|
normalized, error = await adapter._normalize_room_dispatch(request, body)
|
|
|
|
assert normalized is body
|
|
assert error is None
|
|
adapter._room_grant_token.assert_called_once_with(request)
|
|
|
|
|
|
@pytest.mark.asyncio
|
|
async def test_room_dispatch_rejects_extra_fields_before_grant_verification():
|
|
adapter = api_server.APIServerAdapter.__new__(api_server.APIServerAdapter)
|
|
adapter._room_grant_token = MagicMock(return_value="room-grant")
|
|
request = object()
|
|
body = {
|
|
"input": "room prompt",
|
|
"hosted_room_dispatch": {},
|
|
"unexpected": True,
|
|
}
|
|
|
|
normalized, error = await adapter._normalize_room_dispatch(request, body)
|
|
|
|
assert normalized is body
|
|
assert error.status == 400
|
|
assert json.loads(error.text)["error"]["code"] == "invalid_room_dispatch"
|