fix order form

This commit is contained in:
Раис Юсупалиев
2026-04-11 00:36:37 +03:00
parent 18f7e251e3
commit ab0b66e1c2
9 changed files with 269 additions and 36 deletions
+17 -3
View File
@@ -39,12 +39,12 @@ def _make_order_request(**overrides: object) -> OrderCreateRequest:
"sender": {
"name": "Petr Petrov",
"email": "sender@example.com",
"phones": [{"number": "+79009876543"}],
"phone": {"number": "+79009876543"},
},
"recipient": {
"name": "Ivan Ivanov",
"email": "ivan@example.com",
"phones": [{"number": "+79001234567"}],
"phone": {"number": "+79001234567"},
},
"from_location": {
"address": "Lenina 1",
@@ -60,7 +60,7 @@ def _make_order_request(**overrides: object) -> OrderCreateRequest:
"packages": [
{
"number": "1",
"weight": 1000,
"weight": 1,
"length": 20,
"width": 15,
"height": 10,
@@ -96,6 +96,20 @@ def test_create_order_maps_provider_request_errors_to_invalid_order_error() -> N
assert adapter.calls == [request]
def test_create_order_delegates_request_with_services_none_without_new_logic() -> None:
request = _make_order_request(services=None)
adapter = StubOrderAdapter(
response=OrderCreateResponse(provider="cdek", order_uuid="order-uuid-2")
)
service = AggregatorService(providers=[], order_adapter=adapter)
result = asyncio.run(service.create_order(request))
assert result == OrderCreateResponse(provider="cdek", order_uuid="order-uuid-2")
assert adapter.calls == [request]
assert adapter.calls[0].services is None
def test_create_order_maps_transport_failures_to_unavailable_error() -> None:
request = _make_order_request()
adapter = StubOrderAdapter(error=RuntimeError("transport down"))