Fix Seerr transport payload forwarding
Magent CI/CD / verify (push) Canceled after 9m15s
Magent CI/CD / deploy-prod (push) Canceled after 0s
Magent CI/CD / deploy-beta (push) Canceled after 0s

This commit is contained in:
2026-08-31 15:14:32 +12:00
parent 547ed754e6
commit 372f4a1bfc
2 changed files with 33 additions and 1 deletions
+1 -1
View File
@@ -113,7 +113,7 @@ class ApiClient:
url, url,
headers=self.headers(), headers=self.headers(),
params=params, params=params,
json=payload, payload=payload,
) )
response.raise_for_status() response.raise_for_status()
duration_ms = round((time.perf_counter() - started_at) * 1000, 2) duration_ms = round((time.perf_counter() - started_at) * 1000, 2)
+32
View File
@@ -459,6 +459,38 @@ class RequestCreationFlowTests(unittest.IsolatedAsyncioTestCase):
self.assertIn("_csrf=secret-value", write_request.headers.get("Cookie", "")) self.assertIn("_csrf=secret-value", write_request.headers.get("Cookie", ""))
self.assertIn("XSRF-TOKEN=csrf%2Etoken", write_request.headers.get("Cookie", "")) self.assertIn("XSRF-TOKEN=csrf%2Etoken", write_request.headers.get("Cookie", ""))
async def test_base_request_passes_payload_to_transport_hook(self) -> None:
captured: dict = {}
async def send_request(
_client: httpx.AsyncClient,
method: str,
url: str,
*,
headers: dict,
params: dict | None,
payload: dict | None,
) -> httpx.Response:
captured.update(
method=method,
url=url,
headers=headers,
params=params,
payload=payload,
)
return httpx.Response(200, request=httpx.Request(method, url), json={"ok": True})
client = requests_router.JellyseerrClient("https://seerr.test", "api-key")
with patch.object(client, "_send_request", new=send_request):
result = await client._request(
"POST",
"/api/v1/request",
payload={"mediaType": "movie", "mediaId": 209112},
)
self.assertEqual(result, {"ok": True})
self.assertEqual(captured["payload"], {"mediaType": "movie", "mediaId": 209112})
async def test_request_destination_only_offers_live_sonarr_profiles(self) -> None: async def test_request_destination_only_offers_live_sonarr_profiles(self) -> None:
runtime = SimpleNamespace( runtime = SimpleNamespace(
sonarr_base_url="http://sonarr.test", sonarr_base_url="http://sonarr.test",