Skip to content

Commit ec86ba7

Browse files
PijukatelMantisus
authored andcommitted
fix: Update UnprocessedRequest to match actual data (apify#1155)
### Description Update `UnprocessedRequest` to match actual data. Add test. ### Issues - Closes: apify#1150
1 parent 70e89a6 commit ec86ba7

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

src/crawlee/storage_clients/models.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ class UnprocessedRequest(BaseModel):
224224

225225
model_config = ConfigDict(populate_by_name=True)
226226

227-
unique_key: Annotated[str, Field(alias='requestUniqueKey')]
227+
unique_key: Annotated[str, Field(alias='uniqueKey')]
228228
url: Annotated[str, BeforeValidator(validate_http_url), Field()]
229229
method: Annotated[HttpMethod | None, Field()] = None
230230

tests/unit/storage_clients/_memory/test_memory_storage_client.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
from crawlee._consts import METADATA_FILENAME
1212
from crawlee.configuration import Configuration
1313
from crawlee.storage_clients import MemoryStorageClient
14+
from crawlee.storage_clients.models import BatchRequestsOperationResponse
1415

1516

1617
async def test_write_metadata(tmp_path: Path) -> None:
@@ -267,3 +268,21 @@ async def test_parametrized_storage_path_overrides_env_var() -> None:
267268
Configuration(crawlee_storage_dir='./parametrized_storage_dir'), # type: ignore[call-arg]
268269
)
269270
assert ms.storage_dir == './parametrized_storage_dir'
271+
272+
273+
async def test_batch_requests_operation_response() -> None:
274+
"""Test that `BatchRequestsOperationResponse` creation from example responses."""
275+
process_request = {
276+
'requestId': 'EAaArVRs5qV39C9',
277+
'uniqueKey': 'https://example.com',
278+
'wasAlreadyHandled': False,
279+
'wasAlreadyPresent': True,
280+
}
281+
unprocess_request_full = {'uniqueKey': 'https://example2.com', 'method': 'GET', 'url': 'https://example2.com'}
282+
unprocess_request_minimal = {'uniqueKey': 'https://example3.com', 'url': 'https://example3.com'}
283+
BatchRequestsOperationResponse.model_validate(
284+
{
285+
'processedRequests': [process_request],
286+
'unprocessedRequests': [unprocess_request_full, unprocess_request_minimal],
287+
}
288+
)

0 commit comments

Comments
 (0)