cuenca-validations 2.0.1.dev1__tar.gz → 2.0.2.dev1__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 (34) hide show
  1. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/PKG-INFO +1 -1
  2. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/types/__init__.py +2 -0
  3. cuenca_validations-2.0.2.dev1/cuenca_validations/types/helpers.py +9 -0
  4. cuenca_validations-2.0.2.dev1/cuenca_validations/version.py +1 -0
  5. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations.egg-info/PKG-INFO +1 -1
  6. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations.egg-info/SOURCES.txt +2 -0
  7. cuenca_validations-2.0.2.dev1/tests/test_helpers.py +29 -0
  8. cuenca_validations-2.0.1.dev1/cuenca_validations/version.py +0 -1
  9. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/LICENSE +0 -0
  10. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/README.md +0 -0
  11. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/__init__.py +0 -0
  12. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/card_bins.py +0 -0
  13. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/errors.py +0 -0
  14. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/py.typed +0 -0
  15. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/types/card.py +0 -0
  16. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/types/enums.py +0 -0
  17. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/types/files.py +0 -0
  18. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/types/general.py +0 -0
  19. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/types/identities.py +0 -0
  20. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/types/morals.py +0 -0
  21. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/types/queries.py +0 -0
  22. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/types/requests.py +0 -0
  23. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/typing.py +0 -0
  24. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations/validators.py +0 -0
  25. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations.egg-info/dependency_links.txt +0 -0
  26. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations.egg-info/requires.txt +0 -0
  27. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/cuenca_validations.egg-info/top_level.txt +0 -0
  28. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/setup.cfg +0 -0
  29. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/setup.py +0 -0
  30. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/tests/__init__.py +0 -0
  31. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/tests/test_card.py +0 -0
  32. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/tests/test_errors.py +0 -0
  33. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/tests/test_statement.py +0 -0
  34. {cuenca_validations-2.0.1.dev1 → cuenca_validations-2.0.2.dev1}/tests/test_types.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: cuenca_validations
3
- Version: 2.0.1.dev1
3
+ Version: 2.0.2.dev1
4
4
  Summary: Cuenca common validations
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-validations
6
6
  Author: Cuenca
@@ -103,6 +103,7 @@ __all__ = [
103
103
  'WebhookEvent',
104
104
  'digits',
105
105
  'get_state_name',
106
+ 'uuid_field',
106
107
  ]
107
108
 
108
109
  from .card import StrictPaymentCardNumber
@@ -156,6 +157,7 @@ from .general import (
156
157
  digits,
157
158
  get_state_name,
158
159
  )
160
+ from .helpers import uuid_field
159
161
  from .identities import (
160
162
  Address,
161
163
  Beneficiary,
@@ -0,0 +1,9 @@
1
+ import uuid
2
+ from base64 import urlsafe_b64encode
3
+
4
+
5
+ def uuid_field(prefix: str = ''):
6
+ def base64_uuid_func() -> str:
7
+ return prefix + urlsafe_b64encode(uuid.uuid4().bytes).decode()[:-2]
8
+
9
+ return base64_uuid_func
@@ -0,0 +1 @@
1
+ __version__ = '2.0.2.dev1'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: cuenca_validations
3
- Version: 2.0.1.dev1
3
+ Version: 2.0.2.dev1
4
4
  Summary: Cuenca common validations
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-validations
6
6
  Author: Cuenca
@@ -19,6 +19,7 @@ cuenca_validations/types/card.py
19
19
  cuenca_validations/types/enums.py
20
20
  cuenca_validations/types/files.py
21
21
  cuenca_validations/types/general.py
22
+ cuenca_validations/types/helpers.py
22
23
  cuenca_validations/types/identities.py
23
24
  cuenca_validations/types/morals.py
24
25
  cuenca_validations/types/queries.py
@@ -26,5 +27,6 @@ cuenca_validations/types/requests.py
26
27
  tests/__init__.py
27
28
  tests/test_card.py
28
29
  tests/test_errors.py
30
+ tests/test_helpers.py
29
31
  tests/test_statement.py
30
32
  tests/test_types.py
@@ -0,0 +1,29 @@
1
+ from cuenca_validations.types import uuid_field
2
+
3
+
4
+ def test_uuid_field_without_prefix():
5
+ generator = uuid_field()
6
+ uuid_str = generator()
7
+ assert isinstance(uuid_str, str)
8
+ assert len(uuid_str) == 22
9
+ assert generator() != generator()
10
+
11
+
12
+ def test_uuid_field_with_prefix():
13
+ prefix = 'AK'
14
+ generator = uuid_field(prefix)
15
+ uuid_str = generator()
16
+ assert isinstance(uuid_str, str)
17
+ assert uuid_str.startswith(prefix)
18
+ assert len(uuid_str) == 22 + len(prefix)
19
+ assert generator() != generator()
20
+
21
+
22
+ def test_multiple_generators():
23
+ gen1 = uuid_field('CA')
24
+ gen2 = uuid_field('TR')
25
+ uuid1 = gen1()
26
+ uuid2 = gen2()
27
+ assert uuid1.startswith('CA')
28
+ assert uuid2.startswith('TR')
29
+ assert uuid1 != uuid2
@@ -1 +0,0 @@
1
- __version__ = '2.0.1.dev1'