Skip to content

Commit 42291f3

Browse files
tests: test user-agent
1 parent 1e19acd commit 42291f3

1 file changed

Lines changed: 24 additions & 0 deletions

File tree

tests/test_datagouv_api.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
"""Tests for the datagouv_api_client helper."""
22

33
import os
4+
from unittest.mock import AsyncMock, MagicMock, patch
45

56
import pytest
67

78
from helpers import datagouv_api_client
9+
from helpers.user_agent import USER_AGENT
810

911

1012
@pytest.fixture
@@ -34,6 +36,28 @@ async def test_get_dataset_metadata(self, known_dataset_id):
3436
assert "title" in metadata
3537
assert metadata["title"] is not None
3638

39+
async def test_get_dataset_metadata_sends_user_agent(self, known_dataset_id):
40+
"""Test that get_dataset_metadata creates a client with User-Agent header."""
41+
mock_client = MagicMock()
42+
mock_response = MagicMock()
43+
mock_response.json.return_value = {
44+
"id": known_dataset_id,
45+
"title": "Test Dataset",
46+
}
47+
mock_response.raise_for_status = MagicMock()
48+
mock_client.get = AsyncMock(return_value=mock_response)
49+
mock_client.aclose = AsyncMock(return_value=None)
50+
51+
with patch(
52+
"helpers.datagouv_api_client.httpx.AsyncClient",
53+
return_value=mock_client,
54+
) as mock_async_client:
55+
await datagouv_api_client.get_dataset_metadata(
56+
known_dataset_id, session=None
57+
)
58+
59+
mock_async_client.assert_called_once_with(headers={"User-Agent": USER_AGENT})
60+
3761
async def test_get_resource_metadata(self, known_resource_id):
3862
"""Test fetching resource metadata."""
3963
metadata = await datagouv_api_client.get_resource_metadata(known_resource_id)

0 commit comments

Comments
 (0)