cuenca-validations 2.1.39.dev1__tar.gz → 2.1.39.dev3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/PKG-INFO +1 -1
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/__init__.py +0 -2
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/enums.py +2 -3
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/requests.py +2 -27
- cuenca_validations-2.1.39.dev3/cuenca_validations/version.py +1 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations.egg-info/PKG-INFO +1 -1
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/tests/test_requests.py +0 -16
- cuenca_validations-2.1.39.dev1/cuenca_validations/version.py +0 -1
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/LICENSE +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/README.md +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/__init__.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/card_bins.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/errors.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/py.typed +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/card.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/files.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/general.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/helpers.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/identities.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/morals.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/queries.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/typing.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/validators.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations.egg-info/SOURCES.txt +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations.egg-info/dependency_links.txt +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations.egg-info/requires.txt +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations.egg-info/top_level.txt +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/setup.cfg +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/setup.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/tests/__init__.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/tests/test_card.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/tests/test_errors.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/tests/test_helpers.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/tests/test_statement.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/tests/test_types.py +0 -0
- {cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/tests/test_validators.py +0 -0
|
@@ -5,7 +5,6 @@ __all__ = [
|
|
|
5
5
|
'AgentQuery',
|
|
6
6
|
'AgentRequest',
|
|
7
7
|
'AgentStatus',
|
|
8
|
-
'AgentUpdateRequest',
|
|
9
8
|
'ApiKeyQuery',
|
|
10
9
|
'ApiKeyUpdateRequest',
|
|
11
10
|
'AuthorizerTransaction',
|
|
@@ -230,7 +229,6 @@ from .queries import (
|
|
|
230
229
|
)
|
|
231
230
|
from .requests import (
|
|
232
231
|
AgentRequest,
|
|
233
|
-
AgentUpdateRequest,
|
|
234
232
|
ApiKeyUpdateRequest,
|
|
235
233
|
BankAccountValidationRequest,
|
|
236
234
|
BeneficiaryRequest,
|
|
@@ -18,7 +18,6 @@ from pydantic_extra_types.coordinate import Coordinate
|
|
|
18
18
|
|
|
19
19
|
from ..types.enums import (
|
|
20
20
|
AccountUseType,
|
|
21
|
-
AgentStatus,
|
|
22
21
|
AuthorizerTransaction,
|
|
23
22
|
CardDesign,
|
|
24
23
|
CardFundingType,
|
|
@@ -647,43 +646,19 @@ class SessionRequest(BaseRequest):
|
|
|
647
646
|
|
|
648
647
|
|
|
649
648
|
class AgentRequest(BaseRequest):
|
|
649
|
+
pairing_code: str
|
|
650
650
|
phone_number: PhoneNumber
|
|
651
651
|
device_info: DictStrAny = Field(default_factory=dict)
|
|
652
652
|
model_config = ConfigDict(
|
|
653
653
|
json_schema_extra={
|
|
654
654
|
'example': {
|
|
655
|
+
'pairing_code': 'secret_code',
|
|
655
656
|
'phone_number': '+525512345678',
|
|
656
657
|
'device_info': {'client': 'cursor', 'os': 'macOS'},
|
|
657
658
|
}
|
|
658
659
|
}
|
|
659
660
|
)
|
|
660
661
|
|
|
661
|
-
@field_validator('phone_number', mode='before')
|
|
662
|
-
@classmethod
|
|
663
|
-
def normalize_phone(cls, v: PhoneNumber) -> str:
|
|
664
|
-
return normalize_phone_number(str(v))
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
class AgentUpdateRequest(BaseRequest):
|
|
668
|
-
pairing_code: Optional[str] = None
|
|
669
|
-
status: AgentStatus
|
|
670
|
-
model_config = ConfigDict(
|
|
671
|
-
json_schema_extra={
|
|
672
|
-
'example': {
|
|
673
|
-
'pairing_code': 'ABC-123',
|
|
674
|
-
'status': 'succeeded',
|
|
675
|
-
}
|
|
676
|
-
}
|
|
677
|
-
)
|
|
678
|
-
|
|
679
|
-
@model_validator(mode='after')
|
|
680
|
-
def validate_update(self) -> 'AgentUpdateRequest':
|
|
681
|
-
if self.status == AgentStatus.created:
|
|
682
|
-
raise ValueError('Invalid status')
|
|
683
|
-
if self.status == AgentStatus.succeeded and not self.pairing_code:
|
|
684
|
-
raise ValueError('pairing_code is required')
|
|
685
|
-
return self
|
|
686
|
-
|
|
687
662
|
|
|
688
663
|
class EndpointRequest(BaseRequest):
|
|
689
664
|
url: SerializableHttpUrl
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = '2.1.39.dev3'
|
|
@@ -2,7 +2,6 @@ import pytest
|
|
|
2
2
|
from pydantic import ValidationError
|
|
3
3
|
from pydantic_extra_types.phone_numbers import PhoneNumber
|
|
4
4
|
|
|
5
|
-
from cuenca_validations.types import AgentStatus, AgentUpdateRequest
|
|
6
5
|
from cuenca_validations.types.enums import VerificationType
|
|
7
6
|
from cuenca_validations.types.requests import (
|
|
8
7
|
PasswordResetRequest,
|
|
@@ -124,18 +123,3 @@ def test_update_transfer_request_forbids_extra() -> None:
|
|
|
124
123
|
{'status': 'succeeded', 'foo': 'bar'}
|
|
125
124
|
)
|
|
126
125
|
assert 'Extra inputs are not permitted' in str(ex.value)
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
def test_agent_update_request_rejects_created_status() -> None:
|
|
130
|
-
with pytest.raises(ValidationError) as exc:
|
|
131
|
-
AgentUpdateRequest(
|
|
132
|
-
pairing_code='ABC-123',
|
|
133
|
-
status=AgentStatus.created,
|
|
134
|
-
)
|
|
135
|
-
assert 'Invalid status' in str(exc.value)
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
def test_agent_update_request_succeeded_requires_pairing_code() -> None:
|
|
139
|
-
with pytest.raises(ValidationError) as exc:
|
|
140
|
-
AgentUpdateRequest(status=AgentStatus.succeeded)
|
|
141
|
-
assert 'pairing_code is required' in str(exc.value)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = '2.1.39.dev1'
|
|
File without changes
|
|
File without changes
|
{cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/__init__.py
RENAMED
|
File without changes
|
{cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/card_bins.py
RENAMED
|
File without changes
|
{cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/errors.py
RENAMED
|
File without changes
|
{cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/py.typed
RENAMED
|
File without changes
|
{cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/card.py
RENAMED
|
File without changes
|
{cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/files.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/types/morals.py
RENAMED
|
File without changes
|
|
File without changes
|
{cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/typing.py
RENAMED
|
File without changes
|
{cuenca_validations-2.1.39.dev1 → cuenca_validations-2.1.39.dev3}/cuenca_validations/validators.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|