diff options
author | cyfraeviolae <cyfraeviolae> | 2024-04-03 03:10:44 -0400 |
---|---|---|
committer | cyfraeviolae <cyfraeviolae> | 2024-04-03 03:10:44 -0400 |
commit | 6d7ba58f880be618ade07f8ea080fe8c4bf8a896 (patch) | |
tree | b1c931051ffcebd2bd9d61d98d6233ffa289bbce /venv/lib/python3.11/site-packages/faker/providers/automotive/es_CL | |
parent | 4f884c9abc32990b4061a1bb6997b4b37e58ea0b (diff) |
venv
Diffstat (limited to 'venv/lib/python3.11/site-packages/faker/providers/automotive/es_CL')
2 files changed, 66 insertions, 0 deletions
diff --git a/venv/lib/python3.11/site-packages/faker/providers/automotive/es_CL/__init__.py b/venv/lib/python3.11/site-packages/faker/providers/automotive/es_CL/__init__.py new file mode 100644 index 0000000..0807ebb --- /dev/null +++ b/venv/lib/python3.11/site-packages/faker/providers/automotive/es_CL/__init__.py @@ -0,0 +1,66 @@ +# -*- coding: utf-8 -*- + +import re + +from collections import OrderedDict + +from .. import Provider as AutomotiveProvider + + +class Provider(AutomotiveProvider): + """Implement automotive provider for ``es`` locale. + + Sources: + + - https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Chile + + """ + + license_plate_old_format_first_letters = "ABCDFGHJKLPRSTVWXYZ" + license_plate_old_format_second_letters = "ABCDFGHIJKLPRSTVWXYZ" + license_plate_new_format_letters = "BCDFGHJKLPRSTVWXYZ" + + license_formats = OrderedDict( + [ + ("{{license_plate_new}}", 0.70), + ("{{license_plate_old}}", 0.20), + ("{{license_plate_police}}", 0.05), + ("{{license_plate_temporary}}", 0.04), + ("{{license_plate_diplomatic}}", 0.01), + ] + ) + + def license_plate_old(self) -> str: + """Generate an old format license plate.""" + format = "-####" + + letters = "".join( + ( + self.random_element(self.license_plate_old_format_first_letters), + self.random_element(self.license_plate_old_format_second_letters), + ) + ) + + return self.numerify(letters + format) + + def license_plate_new(self) -> str: + format = "????-##" + + temp = re.sub(r"\?", lambda x: self.random_element(self.license_plate_new_format_letters), format) + return self.numerify(temp) + + def license_plate_police(self) -> str: + formats = ("RP-####", "Z-####") + return self.numerify(self.random_element(formats)) + + def license_plate_temporary(self) -> str: + format = "PR-###" + return self.numerify(format) + + def license_plate_diplomatic(self) -> str: + formats = ("CC-####", "CD-####") + return self.numerify(self.random_element(formats)) + + def license_plate(self) -> str: + """Generate a license plate.""" + return self.numerify(self.generator.parse(self.random_element(self.license_formats))) diff --git a/venv/lib/python3.11/site-packages/faker/providers/automotive/es_CL/__pycache__/__init__.cpython-311.pyc b/venv/lib/python3.11/site-packages/faker/providers/automotive/es_CL/__pycache__/__init__.cpython-311.pyc Binary files differnew file mode 100644 index 0000000..5755f67 --- /dev/null +++ b/venv/lib/python3.11/site-packages/faker/providers/automotive/es_CL/__pycache__/__init__.cpython-311.pyc |