Skip to content

Commit

Permalink
lint code
Browse files Browse the repository at this point in the history
  • Loading branch information
fcurella committed Feb 5, 2024
1 parent 76872ae commit 88263f4
Show file tree
Hide file tree
Showing 2 changed files with 166 additions and 28 deletions.
188 changes: 163 additions & 25 deletions faker/providers/automotive/uk_UA/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import random
from typing import Optional

from typing import Optional, Tuple

from .. import Provider as AutomotiveProvider

Expand Down Expand Up @@ -35,42 +36,179 @@ class Provider(AutomotiveProvider):
"Chernihiv": (("SV", "IV", "OV", "RV"), "25"),
"Chernivtsi": (("SE", "IE", "OE", "RE"), "26"),
"Sevastopol": (("SN", "IN", "ON", "RN"), "27"),
"Nationwide": (("II", "ED", "DC", "DI", "PD"), "00")
"Nationwide": (("II", "ED", "DC", "DI", "PD"), "00"),
}

license_plate_suffix = (
"AA", "BA", "CA", "EA", "HA", "IA", "KA", "MA", "OA", "PA", "TA", "XA",
"AB", "BB", "CB", "EB", "HB", "IB", "KB", "MB", "OB", "PB", "TB", "XB",
"AC", "BC", "BR", "EC", "HC", "IC", "KC", "MC", "OC", "PC", "TC", "XC",
"AE", "BE", "CE", "EE", "HE", "IE", "KE", "ME", "OE", "PE", "TE", "XE",
"AN", "BN", "CN", "EN", "HN", "IN", "KN", "MK", "ON", "PN", "TN", "XN",
"AI", "BI", "CI", "EI", "HI", "II", "KI", "MI", "OI", "PI", "TI", "XI",
"AK", "BK", "CK", "EK", "HK", "IK", "KK", "MK", "OK", "PK", "TK", "XK",
"AM", "BM", "CM", "EM", "HM", "IM", "KM", "MM", "OM", "PM", "TM", "XM",
"AO", "BO", "CO", "EO", "HO", "IO", "KO", "MO", "OO", "PO", "TO", "XO",
"AP", "BP", "CP", "EP", "HP", "IP", "KP", "MP", "OP", "PP", "TP", "XP",
"AT", "BT", "CT", "ET", "HT", "IT", "KT", "MT", "OT", "PT", "TT", "XT",
"AX", "BX", "CX", "EX", "HX", "IX", "KX", "MX", "OX", "PX", "TX", "XX",
"AY", "AZ", "BH", "BL", "BN", "BQ", "BR", "TU", "TV", "TY", "TZ"
"AA",
"BA",
"CA",
"EA",
"HA",
"IA",
"KA",
"MA",
"OA",
"PA",
"TA",
"XA",
"AB",
"BB",
"CB",
"EB",
"HB",
"IB",
"KB",
"MB",
"OB",
"PB",
"TB",
"XB",
"AC",
"BC",
"BR",
"EC",
"HC",
"IC",
"KC",
"MC",
"OC",
"PC",
"TC",
"XC",
"AE",
"BE",
"CE",
"EE",
"HE",
"IE",
"KE",
"ME",
"OE",
"PE",
"TE",
"XE",
"AN",
"BN",
"CN",
"EN",
"HN",
"IN",
"KN",
"MK",
"ON",
"PN",
"TN",
"XN",
"AI",
"BI",
"CI",
"EI",
"HI",
"II",
"KI",
"MI",
"OI",
"PI",
"TI",
"XI",
"AK",
"BK",
"CK",
"EK",
"HK",
"IK",
"KK",
"MK",
"OK",
"PK",
"TK",
"XK",
"AM",
"BM",
"CM",
"EM",
"HM",
"IM",
"KM",
"MM",
"OM",
"PM",
"TM",
"XM",
"AO",
"BO",
"CO",
"EO",
"HO",
"IO",
"KO",
"MO",
"OO",
"PO",
"TO",
"XO",
"AP",
"BP",
"CP",
"EP",
"HP",
"IP",
"KP",
"MP",
"OP",
"PP",
"TP",
"XP",
"AT",
"BT",
"CT",
"ET",
"HT",
"IT",
"KT",
"MT",
"OT",
"PT",
"TT",
"XT",
"AX",
"BX",
"CX",
"EX",
"HX",
"IX",
"KX",
"MX",
"OX",
"PX",
"TX",
"XX",
"AY",
"AZ",
"BH",
"BL",
"BN",
"BQ",
"BR",
"TU",
"TV",
"TY",
"TZ",
)

vehicle_categories = (
"A1", "A", "B1", "B",
"C1", "C", "D1", "D",
"BE", "C1E", "CE", "D1E",
"DE", "T"
)
vehicle_categories = ("A1", "A", "B1", "B", "C1", "C", "D1", "D", "BE", "C1E", "CE", "D1E", "DE", "T")

def __get_random_region_code(self, region_name: Optional[str] = None) -> (str, str):
def __get_random_region_code(self, region_name: Optional[str] = None) -> Tuple[str, str]:
try:
if region_name is None:
region_name, data = random.choice(list(self.license_region_data.items()))
region_name, _ = random.choice(list(self.license_region_data.items()))

prefix, region_number = self.license_region_data[region_name]
return random.choice(prefix), region_number
except KeyError:
region_names = ", ".join(self.license_region_data.keys())
raise KeyError(f'Keys name must be only {region_names}')
raise KeyError(f"Keys name must be only {region_names}")

def license_plate(self, region_name: Optional[str] = None, temporary_plate: bool = False) -> str:
"""Generate a license plate.
Expand Down Expand Up @@ -140,7 +278,7 @@ def diplomatic_license_plate(self) -> str:
level = random.choice(("CDP", "DP", "S"))
country_code = self.random_number(3, fix_len=True)
car_number = self.random_number(3, fix_len=True)
if level == 'CDP':
if level == "CDP":
return f"{level} {country_code}"
return f"{level} {country_code} {car_number}"

Expand Down
6 changes: 3 additions & 3 deletions tests/providers/test_automotive.py
Original file line number Diff line number Diff line change
Expand Up @@ -374,9 +374,9 @@ def test_diplomatic_plate(self, faker, num_samples):

def test_prefix(self, faker):
for _ in range(10):
temporary = faker.plate_letter_prefix(region_name='Lviv')
temporary = faker.plate_letter_prefix(region_name="Lviv")
assert len(temporary) == 2
assert temporary in UkUaAutomotiveProvider.license_region_data.get('Lviv')[0]
assert temporary in UkUaAutomotiveProvider.license_region_data.get("Lviv")[0]

def test_region_code(self, faker):
assert "14" == faker.plate_region_code(region_name='Lviv')
assert "14" == faker.plate_region_code(region_name="Lviv")

0 comments on commit 88263f4

Please sign in to comment.