cuenca-validations 2.1.30.dev0__tar.gz → 2.1.31.dev0__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.
Files changed (36) hide show
  1. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/PKG-INFO +1 -1
  2. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/types/__init__.py +2 -0
  3. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/types/enums.py +2 -1
  4. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/types/requests.py +5 -0
  5. cuenca_validations-2.1.31.dev0/cuenca_validations/version.py +1 -0
  6. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations.egg-info/PKG-INFO +1 -1
  7. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/tests/test_requests.py +51 -0
  8. cuenca_validations-2.1.30.dev0/cuenca_validations/version.py +0 -1
  9. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/LICENSE +0 -0
  10. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/README.md +0 -0
  11. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/__init__.py +0 -0
  12. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/card_bins.py +0 -0
  13. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/errors.py +0 -0
  14. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/py.typed +0 -0
  15. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/types/card.py +0 -0
  16. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/types/files.py +0 -0
  17. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/types/general.py +0 -0
  18. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/types/helpers.py +0 -0
  19. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/types/identities.py +0 -0
  20. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/types/morals.py +0 -0
  21. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/types/queries.py +0 -0
  22. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/typing.py +0 -0
  23. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations/validators.py +0 -0
  24. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations.egg-info/SOURCES.txt +0 -0
  25. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations.egg-info/dependency_links.txt +0 -0
  26. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations.egg-info/requires.txt +0 -0
  27. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/cuenca_validations.egg-info/top_level.txt +0 -0
  28. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/setup.cfg +0 -0
  29. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/setup.py +0 -0
  30. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/tests/__init__.py +0 -0
  31. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/tests/test_card.py +0 -0
  32. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/tests/test_errors.py +0 -0
  33. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/tests/test_helpers.py +0 -0
  34. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/tests/test_statement.py +0 -0
  35. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/tests/test_types.py +0 -0
  36. {cuenca_validations-2.1.30.dev0 → cuenca_validations-2.1.31.dev0}/tests/test_validators.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cuenca_validations
3
- Version: 2.1.30.dev0
3
+ Version: 2.1.31.dev0
4
4
  Summary: Cuenca common validations
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-validations
6
6
  Author: Cuenca
@@ -59,6 +59,7 @@ __all__ = [
59
59
  'MonthlySpendingType',
60
60
  'PartnerRequest',
61
61
  'PartnerUpdateRequest',
62
+ 'PasswordResetRequest',
62
63
  'PhoneNumber',
63
64
  'PlatformRequest',
64
65
  'PlatformType',
@@ -233,6 +234,7 @@ from .requests import (
233
234
  LimitedWalletRequest,
234
235
  PartnerRequest,
235
236
  PartnerUpdateRequest,
237
+ PasswordResetRequest,
236
238
  PlatformRequest,
237
239
  QuestionnairesRequest,
238
240
  SavingRequest,
@@ -738,7 +738,8 @@ class IncomeType(str, Enum):
738
738
  support_from_third_party = 'support_from_third_party'
739
739
  variable = 'variable'
740
740
 
741
+
741
742
  class RequiredAction(str, Enum):
742
743
  level_up_required = 'level_up_required'
743
744
  level_up_invitation = 'level_up_invitation'
744
- fix_documents = 'fix_documents'
745
+ fix_documents = 'fix_documents'
@@ -455,6 +455,11 @@ class UserTOSAgreementRequest(BaseRequest):
455
455
  signature_image_url: Optional[FileCuencaUrl] = None
456
456
 
457
457
 
458
+ class PasswordResetRequest(BaseRequest):
459
+ verification_id: str
460
+ location: Coordinate
461
+
462
+
458
463
  class UserRequest(BaseRequest):
459
464
  curp: Curp = Field(
460
465
  description=(
@@ -0,0 +1 @@
1
+ __version__ = '2.1.31.dev0'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cuenca_validations
3
- Version: 2.1.30.dev0
3
+ Version: 2.1.31.dev0
4
4
  Summary: Cuenca common validations
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-validations
6
6
  Author: Cuenca
@@ -1,9 +1,12 @@
1
+ from typing import Optional
2
+
1
3
  import pytest
2
4
  from pydantic import ValidationError
3
5
  from pydantic_extra_types.phone_numbers import PhoneNumber
4
6
 
5
7
  from cuenca_validations.types.enums import VerificationType
6
8
  from cuenca_validations.types.requests import (
9
+ PasswordResetRequest,
7
10
  UserTOSAgreementRequest,
8
11
  UserUpdateRequest,
9
12
  VerificationRequest,
@@ -37,6 +40,54 @@ def test_file_cuenca_url_invalid() -> None:
37
40
  UserTOSAgreementRequest(**request_data)
38
41
 
39
42
 
43
+ _VERIFICATION_ID = 'VEKp662Yrf6lMztl0-9qzk7Q'
44
+ _VALID_COORDINATE = (19.432607, -99.133209)
45
+
46
+
47
+ @pytest.mark.parametrize(
48
+ ('payload', 'expected_dump'),
49
+ [
50
+ pytest.param(
51
+ {
52
+ 'verification_id': _VERIFICATION_ID,
53
+ 'location': _VALID_COORDINATE,
54
+ },
55
+ {
56
+ 'verification_id': _VERIFICATION_ID,
57
+ 'location': {
58
+ 'latitude': 19.432607,
59
+ 'longitude': -99.133209,
60
+ },
61
+ },
62
+ id='serializes',
63
+ ),
64
+ pytest.param(
65
+ {'location': _VALID_COORDINATE},
66
+ None,
67
+ id='missing_verification_id',
68
+ ),
69
+ pytest.param(
70
+ {
71
+ 'verification_id': _VERIFICATION_ID,
72
+ 'location': (91.0, 0.0),
73
+ },
74
+ None,
75
+ id='bad_coordinate',
76
+ ),
77
+ ],
78
+ )
79
+ def test_password_reset_request(
80
+ payload: DictStrAny,
81
+ expected_dump: Optional[DictStrAny],
82
+ ) -> None:
83
+ if expected_dump is None:
84
+ with pytest.raises(ValidationError):
85
+ PasswordResetRequest.model_validate(payload)
86
+ else:
87
+ req = PasswordResetRequest.model_validate(payload)
88
+ assert req.model_dump() == expected_dump
89
+
90
+
40
91
  def test_update_user_requires_at_least_one_param():
41
92
  with pytest.raises(ValueError) as ex:
42
93
  UserUpdateRequest()
@@ -1 +0,0 @@
1
- __version__ = '2.1.30.dev0'