cuenca-validations 2.1.5.dev6__py3-none-any.whl → 2.1.6.dev1__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.
@@ -248,6 +248,7 @@ class KYCFileType(str, Enum):
248
248
  proof_of_address = 'proof_of_address'
249
249
  curp = 'curp'
250
250
  signature = 'signature'
251
+ tos = 'tos'
251
252
 
252
253
 
253
254
  class KYCValidationSource(str, Enum):
@@ -654,6 +655,7 @@ class FileExtension(str, Enum):
654
655
  jpeg = 'jpeg'
655
656
  png = 'png'
656
657
  pdf = 'pdf'
658
+ html = 'html'
657
659
 
658
660
 
659
661
  class BankAccountStatus(str, Enum):
@@ -12,6 +12,7 @@ from pydantic import (
12
12
  field_validator,
13
13
  model_validator,
14
14
  )
15
+ from pydantic_extra_types.coordinate import Coordinate
15
16
 
16
17
  from ..types.enums import (
17
18
  AuthorizerTransaction,
@@ -403,6 +404,12 @@ class TOSRequest(BaseModel):
403
404
  ip: Optional[SerializableIPvAnyAddress] = None
404
405
 
405
406
 
407
+ class UserTOSAgreementRequest(BaseModel):
408
+ user_id: str
409
+ tos_id: str
410
+ location: Coordinate
411
+
412
+
406
413
  class UserRequest(BaseModel):
407
414
  id: Optional[str] = Field(
408
415
  None, description='if you want to create with specific `id`'
@@ -1 +1 @@
1
- __version__ = '2.1.5.dev6'
1
+ __version__ = '2.1.6.dev1'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cuenca_validations
3
- Version: 2.1.5.dev6
3
+ Version: 2.1.6.dev1
4
4
  Summary: Cuenca common validations
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-validations
6
6
  Author: Cuenca
@@ -4,25 +4,25 @@ 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=wzwLnJ4wHggZvqp3mearbFkzvDERGeTNvJkuofQnuMc,1484
7
- cuenca_validations/version.py,sha256=bhTMBpYCEuhFnR28TbW22MGWTEbof55Q981jXWP3ybE,27
7
+ cuenca_validations/version.py,sha256=tLUS4YaLMvKg3RWLzaxm0YsRp6i-f4HfqB_rXEfW-PA,27
8
8
  cuenca_validations/types/__init__.py,sha256=UNb7auBcD0qp-x9TX7TNNj8IKo7uaI7xHaf9PYmaziY,4765
9
9
  cuenca_validations/types/card.py,sha256=UGzz8NTFAverUmdUKAK1oGHnOnjSNTpIRUm93vKSSGY,1295
10
- cuenca_validations/types/enums.py,sha256=oPzB44JuOqtJs_wAuwkJm4i5JJvw0wl4hqTORGomj7Q,18963
10
+ cuenca_validations/types/enums.py,sha256=Vm9HGf83jPkEp8iZ-KGtKGWQGx5q-cIUuQj32y_QcvU,18997
11
11
  cuenca_validations/types/files.py,sha256=2CszbwF9ytXV9suFFwyDjYG4XxY8UhCjRw3HttVXXNw,269
12
12
  cuenca_validations/types/general.py,sha256=vJmQBD_Iv_hsxD8x3_Bip-NlYAiE2rmXSPQKj4kTtto,2621
13
13
  cuenca_validations/types/helpers.py,sha256=6rHUhwoQ7jJZtGcW3LX-W5ZDl42PWE1RoBpGme7KCkk,610
14
14
  cuenca_validations/types/identities.py,sha256=-TWRDRpmIaCI4nE4hVy1FQtQtlxuErtmEtzJW1FBzec,4956
15
15
  cuenca_validations/types/morals.py,sha256=m8kAedevmwfSPTA9GYe03l7pkgipynwYgKfejyVtnuI,1813
16
16
  cuenca_validations/types/queries.py,sha256=KCRx0sPzWDtDDbZysmFGVgANgfqil17EITWaG7tGQ-A,4700
17
- cuenca_validations/types/requests.py,sha256=LV724BesZ_yqVDkPAay1iYxBD2sPIbP_8PfaMxO25Kk,21198
18
- cuenca_validations-2.1.5.dev6.dist-info/licenses/LICENSE,sha256=wR76FmxBbfnQpwELkkE5iMF8sFIafEMgXLTE4N4WPTc,1063
17
+ cuenca_validations/types/requests.py,sha256=D-gDvCF3iSqPPfaHLnFWO11NfBEM662vQfFZ-KcYhNw,21355
18
+ cuenca_validations-2.1.6.dev1.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
23
  tests/test_statement.py,sha256=IOE0rRRBgBZSJv_FLaETEyn5NzzXKMNTqgjv99GX-68,1436
24
- tests/test_types.py,sha256=K_YNFz0Kac3k8fJNeXuYGkL1hjXDQu084jCX6xEMEE4,19348
25
- cuenca_validations-2.1.5.dev6.dist-info/METADATA,sha256=Oecyub6K7U91em2ILg1pjgXymUbbo792vNBmZ_ZmYsM,1599
26
- cuenca_validations-2.1.5.dev6.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
27
- cuenca_validations-2.1.5.dev6.dist-info/top_level.txt,sha256=4233xdOs2HtuT-GFRjcDcwK0IwdwvWdczOtk0fPB6Gw,25
28
- cuenca_validations-2.1.5.dev6.dist-info/RECORD,,
24
+ tests/test_types.py,sha256=RuXMqdgOs8USWvX89xxajphACi3-GgA0nmnJ43cjyjU,19810
25
+ cuenca_validations-2.1.6.dev1.dist-info/METADATA,sha256=rlZRtCfkmRBDnDOOs9Gq_3cfbJLLba5zLB_iIuTvwSk,1599
26
+ cuenca_validations-2.1.6.dev1.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
27
+ cuenca_validations-2.1.6.dev1.dist-info/top_level.txt,sha256=4233xdOs2HtuT-GFRjcDcwK0IwdwvWdczOtk0fPB6Gw,25
28
+ cuenca_validations-2.1.6.dev1.dist-info/RECORD,,
tests/test_types.py CHANGED
@@ -43,6 +43,7 @@ from cuenca_validations.types.requests import (
43
43
  UserCredentialUpdateRequest,
44
44
  UserListsRequest,
45
45
  UserRequest,
46
+ UserTOSAgreementRequest,
46
47
  UserUpdateRequest,
47
48
  VerificationAttemptRequest,
48
49
  VerificationRequest,
@@ -707,3 +708,24 @@ def test_log_config(
707
708
  def test_get_log_config_no_log_config():
708
709
  field = FieldInfo(default=None)
709
710
  assert get_log_config(field) is None
711
+
712
+
713
+ @pytest.mark.parametrize(
714
+ 'location',
715
+ [
716
+ (1500, -99.139584),
717
+ (-91, 45.1),
718
+ (45, 181),
719
+ (45, -181),
720
+ ('abc', 45),
721
+ (45, 'abc'),
722
+ (45, 45, 45),
723
+ ],
724
+ )
725
+ def test_location_validation_invalid_format(location):
726
+ with pytest.raises(ValueError):
727
+ UserTOSAgreementRequest(
728
+ user_id='US123',
729
+ tos_id='TS123',
730
+ location=location,
731
+ )