"""Test recorder functionality.""" import pytest from api_snapshot.recorder.recorder import RecordedRequest, RecordedResponse, RequestResponsePair def test_request_creation(): """Test creating a recorded request.""" req = RecordedRequest( method="GET", url="https://api.example.com/users", headers={"Accept": "application/json"}, body=None ) assert req.method == "GET" assert req.url == "https://api.example.com/users" def test_response_creation(): """Test creating a recorded response.""" resp = RecordedResponse( status_code=200, headers={"Content-Type": "application/json"}, body='{"id": 1}', latency_ms=100 ) assert resp.status_code == 200 assert resp.latency_ms == 100 def test_request_response_pair(): """Test request-response pair.""" req = RecordedRequest( method="POST", url="https://api.example.com/users", headers={"Content-Type": "application/json"}, body='{"name": "John"}' ) resp = RecordedResponse( status_code=201, headers={"Content-Type": "application/json"}, body='{"id": 1, "name": "John"}', latency_ms=200 ) pair = RequestResponsePair(request=req, response=resp) assert pair.request.method == "POST" assert pair.response.status_code == 201