cuenca-validations 2.1.18.dev1__py3-none-any.whl → 2.1.20.dev0__py3-none-any.whl

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.
@@ -509,6 +509,7 @@ class UserUpdateRequest(BaseRequest):
509
509
  proof_of_address: Optional[KYCFile] = None
510
510
  proof_of_life: Optional[KYCFile] = None
511
511
  curp_document_uri: Optional[SerializableHttpUrl] = None
512
+ rfc: Optional[Rfc] = None
512
513
  fiscal_regime_code: Optional[SATRegimeCode] = None
513
514
  fiscal_address: Optional[AddressRequest] = None
514
515
  pronouns: Optional[str] = None
@@ -518,6 +519,15 @@ class UserUpdateRequest(BaseRequest):
518
519
  monthly_movements_type: Optional[MonthlyMovementsType] = None
519
520
  monthly_spending_type: Optional[MonthlySpendingType] = None
520
521
  income_type: Optional[IncomeType] = None
522
+ phone_number: PhoneNumber | None = None
523
+ email_address: EmailStr | None = None
524
+
525
+ @model_validator(mode="before")
526
+ @classmethod
527
+ def check_at_least_one_param(cls, values: DictStrAny) -> DictStrAny:
528
+ if not values:
529
+ raise ValueError('At least one parameter must be provided')
530
+ return values
521
531
 
522
532
  @field_validator('beneficiaries')
523
533
  @classmethod
@@ -1 +1 @@
1
- __version__ = '2.1.18.dev1'
1
+ __version__ = '2.1.20.dev0'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cuenca_validations
3
- Version: 2.1.18.dev1
3
+ Version: 2.1.20.dev0
4
4
  Summary: Cuenca common validations
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-validations
6
6
  Author: Cuenca
@@ -4,7 +4,7 @@ cuenca_validations/errors.py,sha256=OtM8EgiKqYdz9Hn66AbBO96orL1or7efkyt0vh0Zxbs,
4
4
  cuenca_validations/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  cuenca_validations/typing.py,sha256=1QCu81IbVZZpyInjyeAuO-nF36gpT5Gi4o6V9PozuOU,204
6
6
  cuenca_validations/validators.py,sha256=mYJDXxJVokl5jZIA4FYn8wkaMUnOxAH54t1Pfg_0kmQ,1190
7
- cuenca_validations/version.py,sha256=MddL963dGpmDDu7hoCz8F6TTUnNSABZwrO9JkT415Y0,28
7
+ cuenca_validations/version.py,sha256=4ZK_ePn6FNmrmC_4pwKJHiOQN9FuIEB5ns3qmc_dXcQ,28
8
8
  cuenca_validations/types/__init__.py,sha256=lzutCosGc0LRc0Y-qpm7tGDFsDOQJOUNra2RsGbW9kA,5465
9
9
  cuenca_validations/types/card.py,sha256=UGzz8NTFAverUmdUKAK1oGHnOnjSNTpIRUm93vKSSGY,1295
10
10
  cuenca_validations/types/enums.py,sha256=Oomfc4tIrFF_xQzHMQs4Ny96pD0mTXy_52xKFgk71zk,20393
@@ -14,16 +14,16 @@ cuenca_validations/types/helpers.py,sha256=XPiYVTLDtmBB5R1heWUy1c35zZMh7nh-BmS6r
14
14
  cuenca_validations/types/identities.py,sha256=j2xxh3UYHJe6IbAwr9yNXJkebTth_-g3SUmHeiPez8M,5513
15
15
  cuenca_validations/types/morals.py,sha256=davabh5hAnFVQyM7-yCyDaT5ewXnm0cr1BtqDIwzkX8,1833
16
16
  cuenca_validations/types/queries.py,sha256=Pp7BAPk20hzImxb5EIiy3oI8S6AeCruU-NbQpOlrWVo,5146
17
- cuenca_validations/types/requests.py,sha256=PPAf2ShkS9BFu030-z10zPCh_PJI38bUCoB7GFrIiEc,22318
18
- cuenca_validations-2.1.18.dev1.dist-info/licenses/LICENSE,sha256=wR76FmxBbfnQpwELkkE5iMF8sFIafEMgXLTE4N4WPTc,1063
17
+ cuenca_validations/types/requests.py,sha256=8ZicTsjSVTnmyTSTnBwZOWovXAvtE9pOwah1AmRx_jM,22678
18
+ cuenca_validations-2.1.20.dev0.dist-info/licenses/LICENSE,sha256=wR76FmxBbfnQpwELkkE5iMF8sFIafEMgXLTE4N4WPTc,1063
19
19
  tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
20
  tests/test_card.py,sha256=QAfRz7e11gWICPnFJZ2tiYgUsFV3C9TwzJXrDnDNXFw,1202
21
21
  tests/test_errors.py,sha256=ixiIgEuBuzfsL5p4uCFdF32XqFRtTPF6EVhGJ0keOrI,930
22
22
  tests/test_helpers.py,sha256=ubzpi1UXCryLQdgsT_Zm2IX-XE_4L0dnHnhLwH06xK8,748
23
- tests/test_requests.py,sha256=HGKybPNlN-Vbf2Ew34csfMR5UzZdVPoX9J8eeD4yCiI,1095
23
+ tests/test_requests.py,sha256=HVLLPU5kPHjZGlyjfXrTbQQnBhpqJCDRRHIjLq0TYL0,1504
24
24
  tests/test_statement.py,sha256=IOE0rRRBgBZSJv_FLaETEyn5NzzXKMNTqgjv99GX-68,1436
25
25
  tests/test_types.py,sha256=3RuttT7X3yV83gGcKo0FC2CStBKQdZL4CEzXTvnk4kk,20279
26
- cuenca_validations-2.1.18.dev1.dist-info/METADATA,sha256=aMApWJC_iywxCp25KXJt0k0eHHZVXC7xsSPFwIObjG0,1600
27
- cuenca_validations-2.1.18.dev1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
28
- cuenca_validations-2.1.18.dev1.dist-info/top_level.txt,sha256=4233xdOs2HtuT-GFRjcDcwK0IwdwvWdczOtk0fPB6Gw,25
29
- cuenca_validations-2.1.18.dev1.dist-info/RECORD,,
26
+ cuenca_validations-2.1.20.dev0.dist-info/METADATA,sha256=Ll0Ijcd7KPlgTtNyWTIQE5GEkGCsMaEeO9XbnaEQTs8,1600
27
+ cuenca_validations-2.1.20.dev0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
28
+ cuenca_validations-2.1.20.dev0.dist-info/top_level.txt,sha256=4233xdOs2HtuT-GFRjcDcwK0IwdwvWdczOtk0fPB6Gw,25
29
+ cuenca_validations-2.1.20.dev0.dist-info/RECORD,,
tests/test_requests.py CHANGED
@@ -1,7 +1,10 @@
1
1
  import pytest
2
2
  from pydantic import ValidationError
3
3
 
4
- from cuenca_validations.types.requests import UserTOSAgreementRequest
4
+ from cuenca_validations.types.requests import (
5
+ UserTOSAgreementRequest,
6
+ UserUpdateRequest,
7
+ )
5
8
  from cuenca_validations.typing import DictStrAny
6
9
 
7
10
 
@@ -29,3 +32,15 @@ def test_file_cuenca_url_invalid() -> None:
29
32
  )
30
33
  with pytest.raises(ValidationError):
31
34
  UserTOSAgreementRequest(**request_data)
35
+
36
+
37
+ def test_update_user_requires_at_least_one_param():
38
+ with pytest.raises(ValueError) as ex:
39
+ UserUpdateRequest()
40
+ assert 'At least one parameter must be provided' in str(ex.value)
41
+
42
+
43
+ def test_extra_params_are_not_allowed():
44
+ with pytest.raises(ValueError) as ex:
45
+ UserUpdateRequest(foo='bar')
46
+ assert 'Extra inputs are not permitted' in str(ex.value)